# Triage Explainability Workspace ## Status Shipped on 2026-03-07 as the canonical triage owner shell. - Canonical list route: `/triage/artifacts` - Canonical detail route: `/triage/artifacts/:artifactId` - Sibling supporting routes: - `/triage/audit-bundles` - `/triage/audit-bundles/new` - Security alias routes: - `/security/artifacts` - `/security/artifacts/:artifactId` - Verification note: `docs/features/checked/web/triage-explainability-workspace-ui.md` ## Recommendation Restore the useful triage workbench ideas by folding them into one canonical artifact workspace plus a sibling `Audit Bundles` page. - Canonical list route: `/triage/artifacts` - Canonical detail route: `/triage/artifacts/:artifactId` - Sibling supporting page: `/triage/audit-bundles` - Suggested user-facing title: `Artifact Workspace` This capability should improve the active triage loop without preserving separate workbench brands. ## Why This Is The Right Shape - Quiet lane is fundamentally a queue segmentation pattern, not a product. - AI recommendations and reason capsules are detail-side decision aids. - Provenance and decision history belong next to the current artifact under review. - Audit bundles are real operator workflows, but still belong beside triage rather than as an isolated product. ## Operator Modes ### 1. Queue Management Mode - Used by operators deciding what to review now, later, or quietly. - Focus: list tabs and bulk actions. ### 2. Decision Workbench Mode - Used by analysts inside artifact detail. - Focus: evidence, explanation, recommendations, and verdict history. ### 3. Audit Packaging Mode - Used by auditors and operators preparing evidence bundles. - Focus: bundle creation, export, and traceability. ## Recommended IA ### Artifact Workspace layers - `List layer` - segmented by lane - `Detail layer` - current artifact workspace with contextual explainability panels ### List-layer tabs - `Active` - `Quiet Lane` - `Needs Review` ### Detail-layer panels or secondary tabs - `AI Recommendations` - `Reason Capsule` - `Provenance` - `Decision History` ### Sibling page - `Audit Bundles` - list, create, inspect, download ## Page Anatomy ### Artifact list page - top controls: - search - severity - reachability - VEX state - policy state - assignee - lane - list rows: - key risk facts - quick explanation summary - next recommended action - bulk actions: - move to quiet lane - promote for review - assign - build audit bundle ### Artifact detail page - center column: - artifact/finding summary - evidence trail - active decision controls - right rail or lower secondary tabs: - AI recommendations - reason capsule - provenance - decision history - contextual actions: - apply suggestion - request exception - open witness - export evidence ### Audit Bundles page - bundle list with scope, owner, created time, and status - create flow with artifact selection and evidence inclusion choices - download and verify actions ## Route Contract Keep one route family for artifact workspace and one sibling route for audit bundles. ### Canonical routes - `/triage/artifacts` - `/triage/artifacts/:artifactId` - `/triage/audit-bundles` - `/triage/audit-bundles/new` ### Query-param state - `lane=active|quiet|review` - `panel=ai|reason|provenance|history` - `returnTo=` for security, evidence, or release-context entry points ### Alias rules - `Security > Artifacts` should use the same route family instead of owning a second triage workspace - any future exception or findings entry points should deep-link into the same artifact detail route ## What To Merge ### Merge into list layer - `QuietLaneWorkbenchComponent` ### Merge into detail layer - `AiRecommendationWorkbenchComponent` - `ReasonCapsuleWorkbenchComponent` - `AiCodeGuardBadgeComponent` - `SnapshotViewerComponent` - `UnknownsListComponent` ### Keep as real sibling page - `TriageAuditBundlesComponent` - `TriageAuditBundleNewComponent` ## Single Actions And Supporting Surfaces ### Apply AI suggestion - keep inside artifact detail - do not create a dedicated route ### Reason capsule - keep as a contextual panel or secondary tab - never separate it from the active decision context ### Quiet-lane promote, snooze, or TTL extend - keep as row or bulk actions in the list view ### Audit-bundle creation - allow a dedicated new route because it has a multi-step operator flow ## Cross-Product Entry Points - `Security > Findings` - deep-link into artifact detail with `panel=reason` or `panel=provenance` - `Evidence` - link to `Audit Bundles` and artifact evidence panels - `Reachability` - open witness drawers from artifact detail - `Decisioning Studio` - deep-link into the artifact decision context when a policy verdict needs human review ## UI Standards For Implementation - Keep list and detail behaviors in one coherent workspace. - Use lane tabs or segmented controls rather than separate pages for queue modes. - Use stable query-param panel state for explainability surfaces. - Preserve evidence-first decision making; AI is advisory, never opaque. - Keep audit packaging as a real page because it has lifecycle and exports. ## Non-Goals - Do not preserve `AI Recommendation Workbench` or `Reason Capsule Workbench` as standalone brands. - Do not move quiet-lane logic to a separate product shell. - Do not scatter audit, evidence, and explainability flows across different owners. ## Source Inputs - `docs/UI_GUIDE.md` - `docs/ui-analysis/03_TRIAGE_POLICY_OPS_SCREENS.md` - `docs/ui-analysis/05_ROUTE_SUMMARY_AND_OBSERVATIONS.md` - `src/Web/StellaOps.Web/src/app/routes/security-risk.routes.ts` - `src/Web/StellaOps.Web/src/app/features/triage/triage-artifacts.component.ts` - `src/Web/StellaOps.Web/src/app/features/triage/triage-workspace.component.ts` - `src/Web/StellaOps.Web/src/app/features/triage/triage-audit-bundles.component.ts`