save checkpoint: save features

This commit is contained in:
master
2026-02-12 10:27:23 +02:00
parent dca86e1248
commit 5bca406787
8837 changed files with 1796879 additions and 5294 deletions

View File

@@ -1,32 +0,0 @@
# Environment Management UI (CRUD + Freeze Windows + Targets)
## Module
Web
## Status
IMPLEMENTED
## Description
Environment management UI with list/detail views, target health monitoring, freeze window editor, and environment settings configuration.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/environments/`
- **Routes**: `environments.routes.ts`
- **Components**:
- `environment-detail-page` (`src/Web/StellaOps.Web/src/app/features/environments/environment-detail-page.component.ts`)
- `environments-list-page` (`src/Web/StellaOps.Web/src/app/features/environments/environments-list-page.component.ts`)
- **Source**: SPRINT_20260110_111_002_FE_environment_management_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/release-orchestrator`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Evidence Card UI Export
## Module
Web
## Status
IMPLEMENTED
## Description
Evidence card export buttons in evidence pack viewer allowing single-file receipt download in standard and compact formats.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/evidence/`
- **Routes**: `evidence.routes.ts`
- **Components**:
- `evidence-center-page` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-center-page.component.ts`)
- `evidence-packet-page` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-packet-page.component.ts`)
- `evidence-page` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-page.component.ts`)
- `evidence-panel` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-panel.component.ts`)
- `audit-bundle-create-modal` (`src/Web/StellaOps.Web/src/app/features/evidence/modals/audit-bundle-create-modal.component.ts`)
- **Source**: SPRINT_20260112_006_FE_evidence_card_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/evidence`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the export/download action triggers correctly
- [ ] Verify the exported file is in the expected format (JSON, SARIF, CSV, etc.)
- [ ] Verify export includes all expected data fields
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Evidence Center Hub
## Module
Web
## Status
IMPLEMENTED
## Description
Unified evidence center replacing scattered evidence views, providing a single hub for browsing, filtering, and verifying all attestation evidence across releases.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/evidence/`
- **Routes**: `evidence.routes.ts`
- **Components**:
- `evidence-center-page` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-center-page.component.ts`)
- `evidence-packet-page` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-packet-page.component.ts`)
- `evidence-page` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-page.component.ts`)
- `evidence-panel` (`src/Web/StellaOps.Web/src/app/features/evidence/evidence-panel.component.ts`)
- `audit-bundle-create-modal` (`src/Web/StellaOps.Web/src/app/features/evidence/modals/audit-bundle-create-modal.component.ts`)
- **Source**: SPRINT_20260118_006_FE_evidence_unification.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/evidence`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Evidence Packet Drawer (Slide-In)
## Module
Web
## Status
IMPLEMENTED
## Description
Contextual slide-in drawer for viewing evidence packet details from any page without navigation, showing attestation contents and verification status.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/overlays/evidence-packet-drawer/`
- **Components**:
- `evidence-packet-drawer` (`src/Web/StellaOps.Web/src/app/shared/overlays/evidence-packet-drawer/evidence-packet-drawer.component.ts`)
- **Source**: SPRINT_20260118_006_FE_evidence_unification.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Evidence Presentation UX (Panels, Drawers, Rail, Export Center)
## Module
Web
## Status
IMPLEMENTED
## Description
Comprehensive evidence presentation: tabbed panels across triage/findings/SBOM/policy views with reachability, binary diff, provenance, policy, and attestation chain tabs. Per-finding evidence drawer, right-rail proof pane with witness path call traces, DSSE badges, confidence meters. Evidence export center with audit bundle creation. TTE metrics tracking.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/evidence-drawer/`
- **Components**:
- `evidence-drawer` (`src/Web/StellaOps.Web/src/app/shared/components/evidence-drawer/evidence-drawer.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Evidence Provenance Visualization Component
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive evidence provenance chain visualization showing the path: finding -> advisory -> VEX -> policy -> attestation. Part of the evidence-export feature module with routing integration.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/evidence-checklist/`
- **Components**:
- `evidence-checklist` (`src/Web/StellaOps.Web/src/app/shared/components/evidence-checklist/evidence-checklist.component.ts`)
- **Source**: SPRINT_20251229_016_FE_evidence_export_replay_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the visualization renders correctly with sample data
- [ ] Verify interactive elements (hover tooltips, click-to-drill-down) work
- [ ] Verify the visualization handles empty/minimal data gracefully
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,34 +0,0 @@
# Evidence Ribbon UI Component
## Module
Web
## Status
IMPLEMENTED
## Description
Horizontal evidence ribbon component that displays a compact summary strip of evidence types (SBOM, VEX, attestation, provenance) with color-coded badges and drill-down capability. Integrated into developer and auditor workspace views.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/evidence-ribbon/`
- **Components**:
- `evidence-ribbon` (`src/Web/StellaOps.Web/src/app/features/evidence-ribbon/components/evidence-ribbon/evidence-ribbon.component.ts`)
- **Services**:
- `evidence-ribbon` (`src/Web/StellaOps.Web/src/app/features/evidence-ribbon/services/evidence-ribbon.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/evidence-ribbon/models/evidence-ribbon.models.ts`
- **Source**: batch_38/file_11.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts/:artifactId`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,39 +0,0 @@
# Evidence Thread Browser (Artifact Evidence Lineage)
## Module
Web
## Status
IMPLEMENTED
## Description
Browse and inspect evidence threads per artifact digest. List view shows all evidence threads; detail view shows the full thread of evidence for a specific artifact including all linked attestations, proofs, and verification results.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/evidence-thread/`
- **Routes**: `evidence-thread.routes.ts`
- **Components**:
- `evidence-export-dialog` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-export-dialog/evidence-export-dialog.component.ts`)
- `evidence-graph-panel` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-graph-panel/evidence-graph-panel.component.ts`)
- `evidence-node-card` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-node-card/evidence-node-card.component.ts`)
- `evidence-thread-list` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-thread-list/evidence-thread-list.component.ts`)
- `evidence-thread-view` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-thread-view/evidence-thread-view.component.ts`)
- `evidence-timeline-panel` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-timeline-panel/evidence-timeline-panel.component.ts`)
- `evidence-transcript-panel` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/components/evidence-transcript-panel/evidence-transcript-panel.component.ts`)
- **Services**:
- `evidence-thread` (`src/Web/StellaOps.Web/src/app/features/evidence-thread/services/evidence-thread.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/evidence`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Exception and Waiver UX (Wizard, Ledger, Simulation)
## Module
Web
## Status
IMPLEMENTED
## Description
Exception wizard component, policy exception component with simulation integration, dedicated API client, and exception ledger showing history with status changes, expiry dates, owner info, and create capability.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Exception Center with Kanban View
## Module
Web
## Status
IMPLEMENTED
## Description
Comprehensive exception management center with list and kanban board views, workflow transitions (draft/pending/approved/rejected/expired), an approval queue with batch operations, a multi-step exception creation wizard, detail view with audit log, and inline exception drafting.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# "Explain Like I'm New" / Plain Language Toggle
## Module
Web
## Status
IMPLEMENTED
## Description
Toggle between technical and plain language modes with Alt+P shortcut, glossary tooltip directive for jargon expansion, and dedicated service for managing the state. Originally marked TODO in advisory but now implemented.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/plain-language-toggle/`
- **Components**:
- `plain-language-toggle` (`src/Web/StellaOps.Web/src/app/shared/components/plain-language-toggle/plain-language-toggle.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,57 +0,0 @@
# Explainer Timeline UI Component (Step-by-Step Verdict Explanation)
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive step-by-step verdict explanation visualization with expand/collapse behavior. ExplainerStepComponent renders individual reasoning steps; ExplainerService provides data from backend; supports progressive disclosure of decision rationale for lineage views.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/lineage/`
- **Routes**: `lineage.routes.ts`
- **Components**:
- `attestation-links` (`src/Web/StellaOps.Web/src/app/features/lineage/components/attestation-links/attestation-links.component.ts`)
- `audit-pack-export` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/audit-pack-export.component.ts`)
- `export-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/export-options/export-options.component.ts`)
- `merkle-display` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/merkle-display/merkle-display.component.ts`)
- `signing-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/signing-options/signing-options.component.ts`)
- `cgs-badge` (`src/Web/StellaOps.Web/src/app/features/lineage/components/cgs-badge/cgs-badge.component.ts`)
- `compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/compare-panel/compare-panel.component.ts`)
- `diff-table` (`src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/diff-table.component.ts`)
- `explainer-step` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-step/explainer-step.component.ts`)
- `explainer-timeline` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-timeline.component.ts`)
- `export-dialog` (`src/Web/StellaOps.Web/src/app/features/lineage/components/export-dialog/export-dialog.component.ts`)
- `keyboard-shortcuts-help` (`src/Web/StellaOps.Web/src/app/features/lineage/components/keyboard-shortcuts-help/keyboard-shortcuts-help.component.ts`)
- `lineage-compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare-panel/lineage-compare-panel.component.ts`)
- `lineage-compare` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare/lineage-compare.component.ts`)
- `lineage-component-diff` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-component-diff/lineage-component-diff.component.ts`)
- ... and 32 more components
- **Services**:
- `audit-pack` (`src/Web/StellaOps.Web/src/app/features/lineage/services/audit-pack.service.ts`)
- `explainer` (`src/Web/StellaOps.Web/src/app/features/lineage/services/explainer.service.ts`)
- `lineage-export` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-export.service.ts`)
- `lineage-graph` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-graph.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/models/audit-pack.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/models/explainer.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/node-diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/pinned-explanation/models/pinned.models.ts`
- **Source**: SPRINT_20251229_001_005_FE_explainer_timeline.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/lineage`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,43 +0,0 @@
# Feed Mirror & AirGap Ops UI
## Module
Web
## Status
IMPLEMENTED
## Description
Feed mirror ops UI with mirror registry list, snapshot management, AirGap import/export with bundle validation, feed version lock for deterministic scans, offline sync status, and bundle freshness warnings.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/feed-mirror/`
- **Routes**: `feed-mirror.routes.ts`
- **Components**:
- `airgap-export` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/airgap-export.component.ts`)
- `airgap-import` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/airgap-import.component.ts`)
- `feed-mirror-dashboard` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/feed-mirror-dashboard.component.ts`)
- `feed-mirror` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/feed-mirror.component.ts`)
- `feed-version-lock` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/feed-version-lock.component.ts`)
- `freshness-warnings` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/freshness-warnings.component.ts`)
- `mirror-detail` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/mirror-detail.component.ts`)
- `mirror-list` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/mirror-list.component.ts`)
- `offline-sync-status` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/offline-sync-status.component.ts`)
- `snapshot-actions` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/snapshot-actions.component.ts`)
- `snapshot-selector` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/snapshot-selector.component.ts`)
- `sync-status-indicator` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/sync-status-indicator.component.ts`)
- `version-lock` (`src/Web/StellaOps.Web/src/app/features/feed-mirror/version-lock.component.ts`)
- **Source**: SPRINT_20251229_020_FE_feed_mirror_airgap_ops_ui
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/ops/feeds`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,32 +0,0 @@
# Filter Preset Pills with URL Synchronization
## Module
Web
## Status
IMPLEMENTED
## Description
Always-visible horizontal-scrolling filter chips (7 presets: actionable, prod-runtime, backport-verified, critical-only, needs-review, vex-applied, all-findings) with bidirectional URL synchronization for shareable filter states and copy-URL support.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/vuln-explorer/components/filter-preset-pills/`
- **Components**:
- `filter-preset-pills` (`src/Web/StellaOps.Web/src/app/features/vuln-explorer/components/filter-preset-pills/filter-preset-pills.component.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/vuln-explorer/components/filter-preset-pills/filter-preset.models.ts`
- **Source**: SPRINT_20260103_001_FE_preset_pills_patch_map.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify search/filter input accepts and processes user input
- [ ] Verify results update in real-time as filter criteria change
- [ ] Verify clearing filters resets to the full unfiltered view
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Finding Detail Drawer
## Module
Web
## Status
IMPLEMENTED
## Description
Shared slide-in drawer for viewing finding details from any context, displaying reachability evidence, VEX status, and available actions without full-page navigation.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/overlays/finding-detail-drawer/`
- **Components**:
- `finding-detail-drawer` (`src/Web/StellaOps.Web/src/app/shared/overlays/finding-detail-drawer/finding-detail-drawer.component.ts`)
- **Source**: SPRINT_20260118_007_FE_security_consolidation.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,32 +0,0 @@
# FirstSignalCard Component (Prefetch, SSE Updates, Storybook)
## Module
Web
## Status
IMPLEMENTED
## Description
FirstSignalCard Angular component with prefetch service for fast initial signal delivery, signal store, API client, SSE updates showing summary + next action buttons, Storybook stories, and unit tests.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/runs/`
- **Components**:
- `first-signal-card` (`src/Web/StellaOps.Web/src/app/features/runs/components/first-signal-card/first-signal-card.component.ts`)
- **Services**:
- `first-signal-prefetch` (`src/Web/StellaOps.Web/src/app/features/runs/services/first-signal-prefetch.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,43 +0,0 @@
# Frontend Plugin System (Discovery, Sandbox, Extension Slots)
## Module
Web
## Status
IMPLEMENTED
## Description
Frontend plugin architecture with plugin discovery service, dynamic module loader, sandboxed execution, a registry for managing plugin lifecycle, tenant-scoped plugin configuration, navigation integration for plugin-contributed menu items, and an extension slot component allowing plugins to inject UI at designated extension points.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/core/plugins/`
- **Components**:
- `extension-slot` (`src/Web/StellaOps.Web/src/app/core/plugins/extension-slots/extension-slot.component.ts`)
- **Services**:
- `plugin-discovery` (`src/Web/StellaOps.Web/src/app/core/plugins/discovery/plugin-discovery.service.ts`)
- `extension-slot` (`src/Web/StellaOps.Web/src/app/core/plugins/extension-slots/extension-slot.service.ts`)
- `plugin-loader` (`src/Web/StellaOps.Web/src/app/core/plugins/loader/plugin-loader.service.ts`)
- `plugin-manifest-loader` (`src/Web/StellaOps.Web/src/app/core/plugins/loader/plugin-manifest-loader.service.ts`)
- `navigation-plugin` (`src/Web/StellaOps.Web/src/app/core/plugins/navigation/navigation-plugin.service.ts`)
- `plugin-registry` (`src/Web/StellaOps.Web/src/app/core/plugins/registry/plugin-registry.service.ts`)
- `plugin-sandbox` (`src/Web/StellaOps.Web/src/app/core/plugins/sandbox/plugin-sandbox.service.ts`)
- `tenant-plugin-config` (`src/Web/StellaOps.Web/src/app/core/plugins/tenant/tenant-plugin-config.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/core/plugins/models/extension-slot.model.ts`
- `src/Web/StellaOps.Web/src/app/core/plugins/models/plugin-lifecycle.model.ts`
- `src/Web/StellaOps.Web/src/app/core/plugins/models/plugin-manifest.model.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,31 +0,0 @@
# Function Map Management UI (Runtime Behavior Verification)
## Module
Web
## Status
IMPLEMENTED
## Description
Manage function maps that define expected runtime behavior for services. Includes a list view with verification status and coverage metrics, a multi-step wizard (SBOM source, hot function patterns, coverage thresholds, review) for creating maps, a detail view with verification history, and an observation timeline chart showing matched vs unmatched observations over time.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/binary-index/`
- **Components**:
- `binary-index-ops` (`src/Web/StellaOps.Web/src/app/features/binary-index/binary-index-ops.component.ts`)
- `patch-map` (`src/Web/StellaOps.Web/src/app/features/binary-index/patch-map.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/analyze/patch-map`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Gate Explain Drawer
## Module
Web
## Status
IMPLEMENTED
## Description
Slide-in drawer explaining why a policy gate passed or failed, showing each rule evaluation, evidence inputs, and what would need to change for a different outcome.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/overlays/gate-explain-drawer/`
- **Components**:
- `gate-explain-drawer` (`src/Web/StellaOps.Web/src/app/shared/overlays/gate-explain-drawer/gate-explain-drawer.component.ts`)
- **Source**: SPRINT_20260118_009_FE_route_migration_shared_components.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,37 +0,0 @@
# Graph Export (SVG/PNG)
## Module
Web
## Status
IMPLEMENTED
## Description
Graph export service supporting SVG and PNG formats with options for scale, legend inclusion, metadata embedding, and custom background colors. Originally marked TODO in advisory but now implemented.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/graph/`
- **Components**:
- `graph-canvas` (`src/Web/StellaOps.Web/src/app/features/graph/graph-canvas.component.ts`)
- `graph-explorer` (`src/Web/StellaOps.Web/src/app/features/graph/graph-explorer.component.ts`)
- `graph-filters` (`src/Web/StellaOps.Web/src/app/features/graph/graph-filters.component.ts`)
- `graph-hotkey-help` (`src/Web/StellaOps.Web/src/app/features/graph/graph-hotkey-help.component.ts`)
- `graph-overlays` (`src/Web/StellaOps.Web/src/app/features/graph/graph-overlays.component.ts`)
- `graph-side-panels` (`src/Web/StellaOps.Web/src/app/features/graph/graph-side-panels.component.ts`)
- **Services**:
- `graph-accessibility` (`src/Web/StellaOps.Web/src/app/features/graph/graph-accessibility.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/graph`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the visualization renders correctly with sample data
- [ ] Verify interactive elements (hover tooltips, click-to-drill-down) work
- [ ] Verify the visualization handles empty/minimal data gracefully
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,37 +0,0 @@
# Graph Split View with Diff Engine
## Module
Web
## Status
IMPLEMENTED
## Description
Visual graph diff engine with split-view component for comparing two dependency/SBOM graphs side by side with change highlighting, diff computation, and synchronized navigation.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/graph/`
- **Components**:
- `graph-canvas` (`src/Web/StellaOps.Web/src/app/features/graph/graph-canvas.component.ts`)
- `graph-explorer` (`src/Web/StellaOps.Web/src/app/features/graph/graph-explorer.component.ts`)
- `graph-filters` (`src/Web/StellaOps.Web/src/app/features/graph/graph-filters.component.ts`)
- `graph-hotkey-help` (`src/Web/StellaOps.Web/src/app/features/graph/graph-hotkey-help.component.ts`)
- `graph-overlays` (`src/Web/StellaOps.Web/src/app/features/graph/graph-overlays.component.ts`)
- `graph-side-panels` (`src/Web/StellaOps.Web/src/app/features/graph/graph-side-panels.component.ts`)
- **Services**:
- `graph-accessibility` (`src/Web/StellaOps.Web/src/app/features/graph/graph-accessibility.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/graph`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify side-by-side comparison view renders correctly with two versions
- [ ] Verify additions, removals, and changes are visually highlighted
- [ ] Verify diff data matches the expected delta between versions
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Identity Watchlist Management UI
## Module
Web
## Status
IMPLEMENTED
## Description
Full CRUD UI for managing identity watchlist entries (issuer, SAN, keyId) with match modes (Exact, Prefix, Glob, Regex), severity levels, scope (Tenant/Global/System), alert viewing, pattern testing, and duplicate suppression configuration. Users can create, edit, delete, enable/disable watchlist entries and view resulting alerts.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/watchlist/`
- **Components**:
- `watchlist-page` (`src/Web/StellaOps.Web/src/app/features/watchlist/watchlist-page.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/security`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the list/table loads with paginated data
- [ ] Verify sorting and filtering controls work correctly
- [ ] Verify clicking a row navigates to the detail view
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# Impact-First Vulnerability Detail (EPSS/KEV)
## Module
Web
## Status
IMPLEMENTED
## Description
Vulnerability detail page redesigned with impact-first layout showing EPSS probability, KEV catalog status, reachability state, and blast radius before technical details.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/vulnerabilities/`
- **Components**:
- `claim-table` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/claim-table.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/confidence-meter.component.ts`)
- `policy-chips` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/policy-chips.component.ts`)
- `replay-button` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/replay-button.component.ts`)
- `trust-algebra` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.component.ts`)
- `trust-vector-bars` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-vector-bars.component.ts`)
- `vuln-triage-dashboard` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/vuln-triage-dashboard/vuln-triage-dashboard.component.ts`)
- `vulnerability-detail` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/vulnerability-detail.component.ts`)
- `vulnerability-explorer` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/vulnerability-explorer.component.ts`)
- **Services**:
- `trust-algebra` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.models.ts`
- **Source**: SPRINT_20260118_007_FE_security_consolidation.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/vulnerabilities`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,38 +0,0 @@
# Integration Hub UI (List + Detail + Connection Test)
## Module
Web
## Status
IMPLEMENTED
## Description
Integration Hub frontend with list view showing integration status/health, detail view with configuration and activity log, and connection test UI for verifying integration connectivity.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/integration-hub/`
- **Routes**: `integration-hub.routes.ts`
- **Components**:
- `integration-activity` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-activity.component.ts`)
- `integration-detail` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-detail.component.ts`)
- `integration-hub` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-hub.component.ts`)
- `integration-list` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-list.component.ts`)
- **Services**:
- `integration` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/integration-hub/integration.models.ts`
- **Source**: SPRINT_20251229_011_FE_integration_hub_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/integrations`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,38 +0,0 @@
# Integration Onboarding Wizard (Multi-Type Setup Flows)
## Module
Web
## Status
IMPLEMENTED
## Description
Multi-step integration onboarding wizard supporting registry, SCM, CI, and host integration types. Includes preflight checks, copy-safe instructions, and template generation for Helm/systemd deployments.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/integration-hub/`
- **Routes**: `integration-hub.routes.ts`
- **Components**:
- `integration-activity` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-activity.component.ts`)
- `integration-detail` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-detail.component.ts`)
- `integration-hub` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-hub.component.ts`)
- `integration-list` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration-list.component.ts`)
- **Services**:
- `integration` (`src/Web/StellaOps.Web/src/app/features/integration-hub/integration.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/integration-hub/integration.models.ts`
- **Source**: SPRINT_20251229_014_FE_integration_wizards.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/integrations`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the editor/studio loads with editable content or empty template
- [ ] Verify changes can be saved and persisted
- [ ] Verify validation errors are displayed for invalid input
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Issuer Trust Management UI
## Module
Web
## Status
IMPLEMENTED
## Description
Issuer directory trust management UI with issuer list, issuer detail view showing keys and trust bundles, key rotation wizard with confirmation, and issuer lifecycle management under Admin > Trust > Issuers.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/issuer-trust/`
- **Routes**: `issuer-trust.routes.ts`
- **Components**:
- `issuer-detail` (`src/Web/StellaOps.Web/src/app/features/issuer-trust/components/issuer-detail.component.ts`)
- `issuer-editor` (`src/Web/StellaOps.Web/src/app/features/issuer-trust/components/issuer-editor.component.ts`)
- `issuer-list` (`src/Web/StellaOps.Web/src/app/features/issuer-trust/components/issuer-list.component.ts`)
- `key-rotation` (`src/Web/StellaOps.Web/src/app/features/issuer-trust/components/key-rotation.component.ts`)
- `issuer-trust` (`src/Web/StellaOps.Web/src/app/features/issuer-trust/issuer-trust.component.ts`)
- **Source**: SPRINT_20251229_024_FE_issuer_trust_ui
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/admin/issuers`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Keyboard Shortcuts for Triage (J, Y, R, S, A/N/U)
## Module
Web
## Status
IMPLEMENTED
## Description
Keyboard shortcuts for triage workflow including help overlay, graph hotkeys, and shared keyboard shortcut infrastructure with e2e test coverage.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the triage list loads with findings/items to review
- [ ] Verify triaging actions (accept, dismiss, override) update item status
- [ ] Verify keyboard shortcuts work for rapid triage navigation
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,29 +0,0 @@
# Legacy Route Migration Framework
## Module
Web
## Status
IMPLEMENTED
## Description
Comprehensive route migration framework with 70+ redirect rules mapping legacy URLs to new consolidated navigation structure. Ensures bookmark and deep-link preservation during the UI restructuring from flat routes to hierarchical navigation (Security, Policy, Operations, Settings, Evidence).
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/routes/`
- **Routes**: `legacy-redirects.routes.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,57 +0,0 @@
# Lineage Compare Panel (Side-by-Side SBOM/VEX Diff)
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive side-by-side comparison panel for SBOM lineage graph with dedicated SBOM diff view (added/removed/updated components), VEX diff view (status transitions), and URL-addressable compare state for sharing comparison links.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/lineage/`
- **Routes**: `lineage.routes.ts`
- **Components**:
- `attestation-links` (`src/Web/StellaOps.Web/src/app/features/lineage/components/attestation-links/attestation-links.component.ts`)
- `audit-pack-export` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/audit-pack-export.component.ts`)
- `export-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/export-options/export-options.component.ts`)
- `merkle-display` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/merkle-display/merkle-display.component.ts`)
- `signing-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/signing-options/signing-options.component.ts`)
- `cgs-badge` (`src/Web/StellaOps.Web/src/app/features/lineage/components/cgs-badge/cgs-badge.component.ts`)
- `compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/compare-panel/compare-panel.component.ts`)
- `diff-table` (`src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/diff-table.component.ts`)
- `explainer-step` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-step/explainer-step.component.ts`)
- `explainer-timeline` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-timeline.component.ts`)
- `export-dialog` (`src/Web/StellaOps.Web/src/app/features/lineage/components/export-dialog/export-dialog.component.ts`)
- `keyboard-shortcuts-help` (`src/Web/StellaOps.Web/src/app/features/lineage/components/keyboard-shortcuts-help/keyboard-shortcuts-help.component.ts`)
- `lineage-compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare-panel/lineage-compare-panel.component.ts`)
- `lineage-compare` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare/lineage-compare.component.ts`)
- `lineage-component-diff` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-component-diff/lineage-component-diff.component.ts`)
- ... and 32 more components
- **Services**:
- `audit-pack` (`src/Web/StellaOps.Web/src/app/features/lineage/services/audit-pack.service.ts`)
- `explainer` (`src/Web/StellaOps.Web/src/app/features/lineage/services/explainer.service.ts`)
- `lineage-export` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-export.service.ts`)
- `lineage-graph` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-graph.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/models/audit-pack.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/models/explainer.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/node-diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/pinned-explanation/models/pinned.models.ts`
- **Source**: SPRINT_20251228_008_FE_sbom_lineage_graph_ii.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/lineage`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,57 +0,0 @@
# Lineage Timeline Slider
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive timeline slider for navigating SBOM lineage graph history. Allows scrubbing through release versions chronologically with visual markers for significant security state changes.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/lineage/`
- **Routes**: `lineage.routes.ts`
- **Components**:
- `attestation-links` (`src/Web/StellaOps.Web/src/app/features/lineage/components/attestation-links/attestation-links.component.ts`)
- `audit-pack-export` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/audit-pack-export.component.ts`)
- `export-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/export-options/export-options.component.ts`)
- `merkle-display` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/merkle-display/merkle-display.component.ts`)
- `signing-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/signing-options/signing-options.component.ts`)
- `cgs-badge` (`src/Web/StellaOps.Web/src/app/features/lineage/components/cgs-badge/cgs-badge.component.ts`)
- `compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/compare-panel/compare-panel.component.ts`)
- `diff-table` (`src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/diff-table.component.ts`)
- `explainer-step` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-step/explainer-step.component.ts`)
- `explainer-timeline` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-timeline.component.ts`)
- `export-dialog` (`src/Web/StellaOps.Web/src/app/features/lineage/components/export-dialog/export-dialog.component.ts`)
- `keyboard-shortcuts-help` (`src/Web/StellaOps.Web/src/app/features/lineage/components/keyboard-shortcuts-help/keyboard-shortcuts-help.component.ts`)
- `lineage-compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare-panel/lineage-compare-panel.component.ts`)
- `lineage-compare` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare/lineage-compare.component.ts`)
- `lineage-component-diff` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-component-diff/lineage-component-diff.component.ts`)
- ... and 32 more components
- **Services**:
- `audit-pack` (`src/Web/StellaOps.Web/src/app/features/lineage/services/audit-pack.service.ts`)
- `explainer` (`src/Web/StellaOps.Web/src/app/features/lineage/services/explainer.service.ts`)
- `lineage-export` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-export.service.ts`)
- `lineage-graph` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-graph.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/models/audit-pack.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/models/explainer.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/node-diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/pinned-explanation/models/pinned.models.ts`
- **Source**: SPRINT_20251228_008_FE_sbom_lineage_graph_ii.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/lineage`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,57 +0,0 @@
# Lineage UI API Wiring with Angular Signals
## Module
Web
## Status
IMPLEMENTED
## Description
Frontend API client wiring for SBOM lineage graph with Angular signals-based state management. Connects graph visualization, diff/compare panels, and hover card overlays to the backend LineageGraphService API, including Valkey cache integration for compare operations.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/lineage/`
- **Routes**: `lineage.routes.ts`
- **Components**:
- `attestation-links` (`src/Web/StellaOps.Web/src/app/features/lineage/components/attestation-links/attestation-links.component.ts`)
- `audit-pack-export` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/audit-pack-export.component.ts`)
- `export-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/export-options/export-options.component.ts`)
- `merkle-display` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/merkle-display/merkle-display.component.ts`)
- `signing-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/signing-options/signing-options.component.ts`)
- `cgs-badge` (`src/Web/StellaOps.Web/src/app/features/lineage/components/cgs-badge/cgs-badge.component.ts`)
- `compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/compare-panel/compare-panel.component.ts`)
- `diff-table` (`src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/diff-table.component.ts`)
- `explainer-step` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-step/explainer-step.component.ts`)
- `explainer-timeline` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-timeline.component.ts`)
- `export-dialog` (`src/Web/StellaOps.Web/src/app/features/lineage/components/export-dialog/export-dialog.component.ts`)
- `keyboard-shortcuts-help` (`src/Web/StellaOps.Web/src/app/features/lineage/components/keyboard-shortcuts-help/keyboard-shortcuts-help.component.ts`)
- `lineage-compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare-panel/lineage-compare-panel.component.ts`)
- `lineage-compare` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare/lineage-compare.component.ts`)
- `lineage-component-diff` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-component-diff/lineage-component-diff.component.ts`)
- ... and 32 more components
- **Services**:
- `audit-pack` (`src/Web/StellaOps.Web/src/app/features/lineage/services/audit-pack.service.ts`)
- `explainer` (`src/Web/StellaOps.Web/src/app/features/lineage/services/explainer.service.ts`)
- `lineage-export` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-export.service.ts`)
- `lineage-graph` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-graph.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/models/audit-pack.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/models/explainer.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/node-diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/pinned-explanation/models/pinned.models.ts`
- **Source**: SPRINT_20251229_005_FE_lineage_ui_wiring.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/lineage`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,31 +0,0 @@
# Mermaid.js and GraphViz Diagram Renderers
## Module
Web
## Status
IMPLEMENTED
## Description
Reusable diagram rendering components - Mermaid.js renderer for flowcharts/sequence diagrams with theme support, and GraphViz DOT renderer using WASM (@viz-js/viz) for graph visualizations with multiple engine support (dot, neato, fdp, etc.).
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/visualization/`
- **Components**:
- `graphviz-renderer` (`src/Web/StellaOps.Web/src/app/shared/components/visualization/graphviz-renderer.component.ts`)
- `mermaid-renderer` (`src/Web/StellaOps.Web/src/app/shared/components/visualization/mermaid-renderer.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the visualization renders correctly with sample data
- [ ] Verify interactive elements (hover tooltips, click-to-drill-down) work
- [ ] Verify the visualization handles empty/minimal data gracefully
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,31 +0,0 @@
# Metrics Dashboard Component (Attestation Coverage, Approval Velocity, Gap Analysis)
## Module
Web
## Status
IMPLEMENTED
## Description
Angular standalone component providing a dashboard view of attestation coverage metrics, approval velocity trends, and evidence gap analysis. Visualizes operational health of the attestation pipeline.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/analytics/`
- **Routes**: `analytics.routes.ts`
- **Components**:
- `sbom-lake-page` (`src/Web/StellaOps.Web/src/app/features/analytics/sbom-lake-page.component.ts`)
- **Source**: batch_02/file_00.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/analytics`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,28 +0,0 @@
# MI1 - Motion Tokens Catalogue (Durations, Easings, Distance Scales)
## Module
Web
## Status
IMPLEMENTED
## Description
Complete motion token catalogue implemented in both SCSS custom properties and TypeScript with exact durations (80-320ms), easing curves, translate/scale values, and a Storybook story page for visual verification.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/styles/`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,28 +0,0 @@
# MI2 - Reduced-Motion Rules
## Module
Web
## Status
IMPLEMENTED
## Description
Comprehensive reduced-motion support via both CSS `prefers-reduced-motion` media query and `data-reduce-motion` attribute. Durations clamp to 0ms, parallax/auto-animations disabled, focus/hover states preserved.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/styles/`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,47 +0,0 @@
# MI3 - Latency/Idle/Load Patterns (Skeletons, Progress, Offline Banners)
## Module
Web
## Status
IMPLEMENTED
## Description
Skeleton loading placeholders with multiple variants, offline banner with retry button and connection status, and offline mode service for detecting/managing connectivity state.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/core/`
- **Components**:
- `extension-slot` (`src/Web/StellaOps.Web/src/app/core/plugins/extension-slots/extension-slot.component.ts`)
- **Services**:
- `evidence-panel-metrics` (`src/Web/StellaOps.Web/src/app/core/analytics/evidence-panel-metrics.service.ts`)
- `gateway-metrics` (`src/Web/StellaOps.Web/src/app/core/api/gateway-metrics.service.ts`)
- `policy-interop` (`src/Web/StellaOps.Web/src/app/core/api/policy-interop.service.ts`)
- `reachability-integration` (`src/Web/StellaOps.Web/src/app/core/api/reachability-integration.service.ts`)
- `vuln-export-orchestrator` (`src/Web/StellaOps.Web/src/app/core/api/vuln-export-orchestrator.service.ts`)
- `abac` (`src/Web/StellaOps.Web/src/app/core/auth/abac.service.ts`)
- `auth-storage` (`src/Web/StellaOps.Web/src/app/core/auth/auth-storage.service.ts`)
- `auth` (`src/Web/StellaOps.Web/src/app/core/auth/auth.service.ts`)
- `authority-auth` (`src/Web/StellaOps.Web/src/app/core/auth/authority-auth.service.ts`)
- `dpop` (`src/Web/StellaOps.Web/src/app/core/auth/dpop/dpop.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/core/api/advisories.models.ts`
- `src/Web/StellaOps.Web/src/app/core/api/advisory-ai.models.ts`
- `src/Web/StellaOps.Web/src/app/core/api/ai-runs.models.ts`
- `src/Web/StellaOps.Web/src/app/core/api/analytics.models.ts`
- `src/Web/StellaOps.Web/src/app/core/api/aoc.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# MI9 - Micro-Copy Localisation (i18n Keys and ICU Messages)
## Module
Web
## Status
IMPLEMENTED
## Description
Full micro-interaction localisation file with EN defaults covering all interaction states (loading/skeleton/progress, error types, offline banners, toast/undo, actions, validation, accessibility labels, motion preferences). i18n service exists for key resolution.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/core/i18n/`
- **Services**:
- `i18n` (`src/Web/StellaOps.Web/src/app/core/i18n/i18n.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,28 +0,0 @@
# Motion and Animation Tokens (Duration, Easing, Reduced-Motion)
## Module
Web
## Status
IMPLEMENTED
## Description
Motion token system in SCSS and TypeScript with duration scales (xs through xl), easing functions, and reduced-motion overrides. Storybook stories for visual documentation.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/styles/`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,50 +0,0 @@
# Node Diff Table Component (Tabular SBOM Change Comparison)
## Module
Web
## Status
IMPLEMENTED
## Description
Tabular component-change diff view with filter chips (added/removed/modified/unchanged), debounced search, multi-column sorting, row selection with bulk actions, pagination, and CSV export capability for SBOM lineage comparison.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/compare/`
- **Components**:
- `actionables-panel` (`src/Web/StellaOps.Web/src/app/features/compare/components/actionables-panel/actionables-panel.component.ts`)
- `baseline-rationale` (`src/Web/StellaOps.Web/src/app/features/compare/components/baseline-rationale/baseline-rationale.component.ts`)
- `baseline-selector` (`src/Web/StellaOps.Web/src/app/features/compare/components/baseline-selector.component.ts`)
- `categories-pane` (`src/Web/StellaOps.Web/src/app/features/compare/components/categories-pane.component.ts`)
- `compare-view` (`src/Web/StellaOps.Web/src/app/features/compare/components/compare-view.component.ts`)
- `compare-view` (`src/Web/StellaOps.Web/src/app/features/compare/components/compare-view/compare-view.component.ts`)
- `degraded-mode-banner` (`src/Web/StellaOps.Web/src/app/features/compare/components/degraded-mode-banner/degraded-mode-banner.component.ts`)
- `delta-summary-strip` (`src/Web/StellaOps.Web/src/app/features/compare/components/delta-summary-strip.component.ts`)
- `envelope-hashes` (`src/Web/StellaOps.Web/src/app/features/compare/components/envelope-hashes/envelope-hashes.component.ts`)
- `export-actions` (`src/Web/StellaOps.Web/src/app/features/compare/components/export-actions/export-actions.component.ts`)
- `graph-mini-map` (`src/Web/StellaOps.Web/src/app/features/compare/components/graph-mini-map/graph-mini-map.component.ts`)
- `items-pane` (`src/Web/StellaOps.Web/src/app/features/compare/components/items-pane.component.ts`)
- `proof-pane` (`src/Web/StellaOps.Web/src/app/features/compare/components/proof-pane.component.ts`)
- `three-pane-layout` (`src/Web/StellaOps.Web/src/app/features/compare/components/three-pane-layout.component.ts`)
- `trust-indicators` (`src/Web/StellaOps.Web/src/app/features/compare/components/trust-indicators.component.ts`)
- ... and 3 more components
- **Services**:
- `compare-export` (`src/Web/StellaOps.Web/src/app/features/compare/services/compare-export.service.ts`)
- `compare` (`src/Web/StellaOps.Web/src/app/features/compare/services/compare.service.ts`)
- `delta-compute` (`src/Web/StellaOps.Web/src/app/features/compare/services/delta-compute.service.ts`)
- `user-preferences` (`src/Web/StellaOps.Web/src/app/features/compare/services/user-preferences.service.ts`)
- **Source**: SPRINT_20251229_001_006_FE_node_diff_table.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/compare/:currentId`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify side-by-side comparison view renders correctly with two versions
- [ ] Verify additions, removals, and changes are visually highlighted
- [ ] Verify diff data matches the expected delta between versions
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,45 +0,0 @@
# Notification Rule Simulation & Escalation Policies
## Module
Web
## Status
IMPLEMENTED
## Description
Notification rule management with test simulation before activation, escalation policies with multi-level chains, quiet hours configuration, channel management, and delivery history with retry tracking.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/admin-notifications/`
- **Routes**: `admin-notifications.routes.ts`
- **Components**:
- `admin-notifications` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/admin-notifications.component.ts`)
- `channel-management` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/channel-management.component.ts`)
- `delivery-analytics` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/delivery-analytics.component.ts`)
- `delivery-history` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/delivery-history.component.ts`)
- `escalation-config` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/escalation-config.component.ts`)
- `notification-dashboard` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/notification-dashboard.component.ts`)
- `notification-preview` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/notification-preview.component.ts`)
- `notification-rule-editor` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/notification-rule-editor.component.ts`)
- `notification-rule-list` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/notification-rule-list.component.ts`)
- `operator-override-management` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/operator-override-management.component.ts`)
- `operator-override` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/operator-override.component.ts`)
- `quiet-hours-config` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/quiet-hours-config.component.ts`)
- `rule-simulator` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/rule-simulator.component.ts`)
- `template-editor` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/template-editor.component.ts`)
- `throttle-config` (`src/Web/StellaOps.Web/src/app/features/admin-notifications/components/throttle-config.component.ts`)
- **Source**: SPRINT_20251229_045_FE_notification_delivery_audit
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/admin/notifications`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Offline Kit UI Integration
## Module
Web
## Status
IMPLEMENTED
## Description
Offline Kit UI with OfflineModeService, ManifestValidator, BundleFreshness widget, ReadOnlyGuard, and offline verification workflow for air-gapped environments.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/offline-kit/`
- **Routes**: `offline-kit.routes.ts`
- **Components**:
- `bundle-management` (`src/Web/StellaOps.Web/src/app/features/offline-kit/components/bundle-management.component.ts`)
- `jwks-management` (`src/Web/StellaOps.Web/src/app/features/offline-kit/components/jwks-management.component.ts`)
- `offline-dashboard` (`src/Web/StellaOps.Web/src/app/features/offline-kit/components/offline-dashboard.component.ts`)
- `verification-center` (`src/Web/StellaOps.Web/src/app/features/offline-kit/components/verification-center.component.ts`)
- `offline-kit` (`src/Web/StellaOps.Web/src/app/features/offline-kit/offline-kit.component.ts`)
- **Source**: SPRINT_20251229_026_PLATFORM_offline_kit_integration
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/ops/offline-kit`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Operator/Auditor mode toggle
## Module
Web
## Status
IMPLEMENTED
## Description
View mode service, toggle component, and operator-only/auditor-only directives implement two-mode UI with different default levels of detail.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/workspaces/shared/`
- **Components**:
- `workspace-nav-dropdown` (`src/Web/StellaOps.Web/src/app/features/workspaces/shared/components/workspace-nav-dropdown/workspace-nav-dropdown.component.ts`)
- `workspace-toggle` (`src/Web/StellaOps.Web/src/app/features/workspaces/shared/components/workspace-toggle/workspace-toggle.component.ts`)
- **Services**:
- `workspace-preferences` (`src/Web/StellaOps.Web/src/app/features/workspaces/shared/services/workspace-preferences.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/workspaces/shared/models/workspace-preferences.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,37 +0,0 @@
# Operator Quota Dashboard
## Module
Web
## Status
IMPLEMENTED
## Description
Operator quota dashboard with KPI summary, tenant drill-down, throttle context panel, quota forecasting, and alert configuration.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/quota-dashboard/`
- **Routes**: `quota.routes.ts`
- **Components**:
- `quota-alert-config` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/quota-alert-config.component.ts`)
- `quota-dashboard` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/quota-dashboard.component.ts`)
- `quota-forecast` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/quota-forecast.component.ts`)
- `quota-report-export` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/quota-report-export.component.ts`)
- `tenant-quota-detail` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/tenant-quota-detail.component.ts`)
- `tenant-quota-table` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/tenant-quota-table.component.ts`)
- `throttle-context` (`src/Web/StellaOps.Web/src/app/features/quota-dashboard/throttle-context.component.ts`)
- **Source**: SPRINT_20251229_029_FE_operator_quota_dashboard
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/ops/quotas`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Overlay Host Component
## Module
Web
## Status
IMPLEMENTED
## Description
Centralized overlay/drawer management system with signal-based store for coordinating slide-in panels, modals, and drawers across the application.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/layout/overlay-host/`
- **Components**:
- `overlay-host` (`src/Web/StellaOps.Web/src/app/layout/overlay-host/overlay-host.component.ts`)
- **Source**: SPRINT_20260118_001_FE_shell_navigation_redesign.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,31 +0,0 @@
# Patch Map Explorer (Heatmap UI)
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive CSS Grid heatmap showing vendor backport patch coverage across fleet with drill-down to function-level breakdown and paginated affected images. Three API endpoints: aggregated coverage, function-level details, and matching images.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/binary-index/`
- **Components**:
- `binary-index-ops` (`src/Web/StellaOps.Web/src/app/features/binary-index/binary-index-ops.component.ts`)
- `patch-map` (`src/Web/StellaOps.Web/src/app/features/binary-index/patch-map.component.ts`)
- **Source**: SPRINT_20260103_001_FE_preset_pills_patch_map.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/analyze/patch-map`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,57 +0,0 @@
# Pinned Explanations Panel (Copy-Safe Ticket Creation)
## Module
Web
## Status
IMPLEMENTED
## Description
Floating panel for pinning AI explanations and evidence summaries with multi-format export (Markdown, Plain Text, JSON, HTML, Jira). Supports session persistence, drag reordering, and one-click copy-to-clipboard for creating evidence-backed tickets in external issue trackers.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/lineage/`
- **Routes**: `lineage.routes.ts`
- **Components**:
- `attestation-links` (`src/Web/StellaOps.Web/src/app/features/lineage/components/attestation-links/attestation-links.component.ts`)
- `audit-pack-export` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/audit-pack-export.component.ts`)
- `export-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/export-options/export-options.component.ts`)
- `merkle-display` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/merkle-display/merkle-display.component.ts`)
- `signing-options` (`src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/signing-options/signing-options.component.ts`)
- `cgs-badge` (`src/Web/StellaOps.Web/src/app/features/lineage/components/cgs-badge/cgs-badge.component.ts`)
- `compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/compare-panel/compare-panel.component.ts`)
- `diff-table` (`src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/diff-table.component.ts`)
- `explainer-step` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-step/explainer-step.component.ts`)
- `explainer-timeline` (`src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/explainer-timeline.component.ts`)
- `export-dialog` (`src/Web/StellaOps.Web/src/app/features/lineage/components/export-dialog/export-dialog.component.ts`)
- `keyboard-shortcuts-help` (`src/Web/StellaOps.Web/src/app/features/lineage/components/keyboard-shortcuts-help/keyboard-shortcuts-help.component.ts`)
- `lineage-compare-panel` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare-panel/lineage-compare-panel.component.ts`)
- `lineage-compare` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-compare/lineage-compare.component.ts`)
- `lineage-component-diff` (`src/Web/StellaOps.Web/src/app/features/lineage/components/lineage-component-diff/lineage-component-diff.component.ts`)
- ... and 32 more components
- **Services**:
- `audit-pack` (`src/Web/StellaOps.Web/src/app/features/lineage/services/audit-pack.service.ts`)
- `explainer` (`src/Web/StellaOps.Web/src/app/features/lineage/services/explainer.service.ts`)
- `lineage-export` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-export.service.ts`)
- `lineage-graph` (`src/Web/StellaOps.Web/src/app/features/lineage/services/lineage-graph.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/lineage/components/audit-pack-export/models/audit-pack.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/explainer-timeline/models/explainer.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/node-diff-table/models/diff-table.models.ts`
- `src/Web/StellaOps.Web/src/app/features/lineage/components/pinned-explanation/models/pinned.models.ts`
- **Source**: SPRINT_20251229_001_007_FE_pinned_explanations.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/lineage`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,33 +0,0 @@
# Platform Health Dashboard
## Module
Web
## Status
IMPLEMENTED
## Description
Platform health dashboard showing service health grid for 13 services, dependency graph visualization, incident timeline with auto-root-cause suggestions, and aggregate metrics.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/platform-health/`
- **Routes**: `platform-health.routes.ts`
- **Components**:
- `incident-timeline` (`src/Web/StellaOps.Web/src/app/features/platform-health/incident-timeline.component.ts`)
- `platform-health-dashboard` (`src/Web/StellaOps.Web/src/app/features/platform-health/platform-health-dashboard.component.ts`)
- `service-detail` (`src/Web/StellaOps.Web/src/app/features/platform-health/service-detail.component.ts`)
- **Source**: SPRINT_20251229_032_FE_platform_health_dashboard
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/ops/health`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,34 +0,0 @@
# Playbook Suggestion Service (OpsMemory Integration)
## Module
Web
## Status
IMPLEMENTED
## Description
Frontend service for fetching contextual playbook suggestions from OpsMemory API. Queries by CVE ID, severity, reachability status, component type, and context tags. Includes 5-minute response caching, retry logic for transient errors, and an evidence card component for displaying playbook-linked evidence.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/opsmemory/`
- **Components**:
- `evidence-card` (`src/Web/StellaOps.Web/src/app/features/opsmemory/components/evidence-card/evidence-card.component.ts`)
- **Services**:
- `playbook-suggestion` (`src/Web/StellaOps.Web/src/app/features/opsmemory/services/playbook-suggestion.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/opsmemory/models/playbook.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Policy Breadcrumb UI Component
## Module
Web
## Status
IMPLEMENTED
## Description
Angular component that visualizes the policy evaluation chain as an interactive breadcrumb trail, showing which policy rules fired, their order, and individual pass/fail status. Provides drill-down from verdict summary to specific rule decisions.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/verdicts/components/policy-breadcrumb/`
- **Components**:
- `policy-breadcrumb` (`src/Web/StellaOps.Web/src/app/features/verdicts/components/policy-breadcrumb/policy-breadcrumb.component.ts`)
- **Source**: SPRINT_1227_0014_0002_FE_verdict_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Policy Gates Preview with Air-Gap Mode and Feed Freshness
## Module
Web
## Status
IMPLEMENTED
## Description
Policy gates preview panel with air-gap mode toggle (sealed/connected with offline verification status), feed freshness status badges (fresh/warning/stale counts), bundle simulation for promotions, gate simulation results display, and policy profile selection.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/policy-gates/`
- **Routes**: `policy-gates.routes.ts`
- **Components**:
- `airgap-mode-switch` (`src/Web/StellaOps.Web/src/app/features/policy-gates/components/airgap-mode-switch/airgap-mode-switch.component.ts`)
- `bundle-simulator` (`src/Web/StellaOps.Web/src/app/features/policy-gates/components/bundle-simulator/bundle-simulator.component.ts`)
- `feed-freshness-badges` (`src/Web/StellaOps.Web/src/app/features/policy-gates/components/feed-freshness-badges/feed-freshness-badges.component.ts`)
- `gate-simulation-results` (`src/Web/StellaOps.Web/src/app/features/policy-gates/components/gate-simulation-results/gate-simulation-results.component.ts`)
- `policy-preview-panel` (`src/Web/StellaOps.Web/src/app/features/policy-gates/components/policy-preview-panel/policy-preview-panel.component.ts`)
- `profile-selector` (`src/Web/StellaOps.Web/src/app/features/policy-gates/components/profile-selector/profile-selector.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/policy`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,46 +0,0 @@
# Policy Governance Controls UI
## Module
Web
## Status
IMPLEMENTED
## Description
Policy governance controls with risk budget dashboard, trust weighting with impact preview, risk profiles CRUD, sealed mode toggle, and policy conflict dashboard with resolution wizard.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/policy-governance/`
- **Routes**: `policy-governance.routes.ts`
- **Components**:
- `conflict-resolution-wizard` (`src/Web/StellaOps.Web/src/app/features/policy-governance/conflict-resolution-wizard.component.ts`)
- `governance-audit` (`src/Web/StellaOps.Web/src/app/features/policy-governance/governance-audit.component.ts`)
- `impact-preview` (`src/Web/StellaOps.Web/src/app/features/policy-governance/impact-preview.component.ts`)
- `policy-conflict-dashboard` (`src/Web/StellaOps.Web/src/app/features/policy-governance/policy-conflict-dashboard.component.ts`)
- `policy-governance` (`src/Web/StellaOps.Web/src/app/features/policy-governance/policy-governance.component.ts`)
- `policy-validator` (`src/Web/StellaOps.Web/src/app/features/policy-governance/policy-validator.component.ts`)
- `risk-budget-config` (`src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-config.component.ts`)
- `risk-budget-dashboard` (`src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-dashboard.component.ts`)
- `risk-profile-editor` (`src/Web/StellaOps.Web/src/app/features/policy-governance/risk-profile-editor.component.ts`)
- `risk-profile-list` (`src/Web/StellaOps.Web/src/app/features/policy-governance/risk-profile-list.component.ts`)
- `schema-docs` (`src/Web/StellaOps.Web/src/app/features/policy-governance/schema-docs.component.ts`)
- `schema-playground` (`src/Web/StellaOps.Web/src/app/features/policy-governance/schema-playground.component.ts`)
- `sealed-mode-control` (`src/Web/StellaOps.Web/src/app/features/policy-governance/sealed-mode-control.component.ts`)
- `sealed-mode-overrides` (`src/Web/StellaOps.Web/src/app/features/policy-governance/sealed-mode-overrides.component.ts`)
- `staleness-config` (`src/Web/StellaOps.Web/src/app/features/policy-governance/staleness-config.component.ts`)
- ... and 1 more components
- **Source**: SPRINT_20251229_047_FE_policy_governance_controls
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/admin/policy/governance`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,47 +0,0 @@
# Policy Studio UI (Monaco Editor, Simulation, Approvals)
## Module
Web
## Status
IMPLEMENTED
## Description
Full Policy Studio authoring environment with Monaco-based DSL editor (stella-dsl@1 syntax highlighting, IntelliSense), policy simulation panel with deterministic diff rendering, guided rule builder, YAML editor with schema validation, submit/review/approve workflow with two-person approval, run viewer dashboards, and explain view with evidence overlay exports.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/policy-studio/`
- **Components**:
- `conflict-visualizer` (`src/Web/StellaOps.Web/src/app/features/policy-studio/ai/conflict-visualizer.component.ts`)
- `live-rule-preview` (`src/Web/StellaOps.Web/src/app/features/policy-studio/ai/live-rule-preview.component.ts`)
- `test-case-panel` (`src/Web/StellaOps.Web/src/app/features/policy-studio/ai/test-case-panel.component.ts`)
- `version-history` (`src/Web/StellaOps.Web/src/app/features/policy-studio/ai/version-history.component.ts`)
- `policy-approvals` (`src/Web/StellaOps.Web/src/app/features/policy-studio/approvals/policy-approvals.component.ts`)
- `policy-dashboard` (`src/Web/StellaOps.Web/src/app/features/policy-studio/dashboard/policy-dashboard.component.ts`)
- `policy-editor` (`src/Web/StellaOps.Web/src/app/features/policy-studio/editor/policy-editor.component.ts`)
- `policy-explain` (`src/Web/StellaOps.Web/src/app/features/policy-studio/explain/policy-explain.component.ts`)
- `policy-nl-input` (`src/Web/StellaOps.Web/src/app/features/policy-studio/nl-input/policy-nl-input.component.ts`)
- `policy-rule-builder` (`src/Web/StellaOps.Web/src/app/features/policy-studio/rule-builder/policy-rule-builder.component.ts`)
- `policy-simulation` (`src/Web/StellaOps.Web/src/app/features/policy-studio/simulation/policy-simulation.component.ts`)
- `policy-workspace` (`src/Web/StellaOps.Web/src/app/features/policy-studio/workspace/policy-workspace.component.ts`)
- `policy-yaml-editor` (`src/Web/StellaOps.Web/src/app/features/policy-studio/yaml/policy-yaml-editor.component.ts`)
- **Services**:
- `monaco-loader` (`src/Web/StellaOps.Web/src/app/features/policy-studio/editor/monaco-loader.service.ts`)
- `policy-api` (`src/Web/StellaOps.Web/src/app/features/policy-studio/services/policy-api.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/policy-studio/models/policy.models.ts`
- **Source**: SPRINT_0210_0001_0002_ui_ii.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/policy-studio/packs`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the editor/studio loads with editable content or empty template
- [ ] Verify changes can be saved and persisted
- [ ] Verify validation errors are displayed for invalid input
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Promotion and Approval Queue UI
## Module
Web
## Status
IMPLEMENTED
## Description
Promotion request form with gate preview, approval queue with filtering, approval detail with gate results display, approve/reject with comments, and batch approval support.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/approvals/`
- **Routes**: `approvals.routes.ts`
- **Components**:
- `approval-detail-page` (`src/Web/StellaOps.Web/src/app/features/approvals/approval-detail-page.component.ts`)
- `approval-detail` (`src/Web/StellaOps.Web/src/app/features/approvals/approval-detail.component.ts`)
- `approvals-inbox-page` (`src/Web/StellaOps.Web/src/app/features/approvals/approvals-inbox-page.component.ts`)
- `approvals-inbox` (`src/Web/StellaOps.Web/src/app/features/approvals/approvals-inbox.component.ts`)
- `request-exception-modal` (`src/Web/StellaOps.Web/src/app/features/approvals/modals/request-exception-modal.component.ts`)
- **Source**: SPRINT_20260110_111_005_FE_promotion_approval_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/approvals`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the list/table loads with paginated data
- [ ] Verify sorting and filtering controls work correctly
- [ ] Verify clicking a row navigates to the detail view
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Proof chain verification UI
## Module
Web
## Status
IMPLEMENTED
## Description
13 Angular standalone components implement proof-driven UX with evidence chains, including tabbed panels, static evidence cards, and E2E tests.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/proof-chain/`
- **Components**:
- `proof-detail-panel` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/proof-detail-panel.component.ts`)
- `verification-badge` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/verification-badge.component.ts`)
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.component.ts`)
- **Services**:
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/proofs/:subjectDigest`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Proof Graph UX (Unified Evidence View)
## Module
Web
## Status
IMPLEMENTED
## Description
Evidence page, panel, and list components with analytics metrics for evidence panel interactions, integrated across triage, findings, SBOM, and release orchestrator views.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/proof-chain/`
- **Components**:
- `proof-detail-panel` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/proof-detail-panel.component.ts`)
- `verification-badge` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/verification-badge.component.ts`)
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.component.ts`)
- **Services**:
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/proofs/:subjectDigest`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the visualization renders correctly with sample data
- [ ] Verify interactive elements (hover tooltips, click-to-drill-down) work
- [ ] Verify the visualization handles empty/minimal data gracefully
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Proof Ledger View (Merkle Tree Scan History)
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive proof ledger displaying scan proof history with Merkle tree visualization, proof bundle download, and a Score Replay Dashboard for triggering and monitoring deterministic score replay operations with before/after comparison.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/proof-chain/`
- **Components**:
- `proof-detail-panel` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/proof-detail-panel.component.ts`)
- `verification-badge` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/verification-badge.component.ts`)
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.component.ts`)
- **Services**:
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/proofs/:subjectDigest`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Proof-linked VEX UI (Evidence drawer, Proof Spine component)
## Module
Web
## Status
IMPLEMENTED
## Description
Angular UI components for proof spine visualization (segments, badges, detail modal) and evidence drawer are implemented with e2e test coverage.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/proof-chain/`
- **Components**:
- `proof-detail-panel` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/proof-detail-panel.component.ts`)
- `verification-badge` (`src/Web/StellaOps.Web/src/app/features/proof-chain/components/verification-badge.component.ts`)
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.component.ts`)
- **Services**:
- `proof-chain` (`src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/proof-chain/proof-chain.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/proofs/:subjectDigest`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,34 +0,0 @@
# Proof Spine UI component (segmented visualization with badges)
## Module
Web
## Status
IMPLEMENTED
## Description
Angular proof-spine component suite with segment visualization, badge rows, detail modals, and e2e tests.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/proof-spine/`
- **Components**:
- `chain-integrity-badge` (`src/Web/StellaOps.Web/src/app/shared/components/proof-spine/chain-integrity-badge.component.ts`)
- `proof-badges-row` (`src/Web/StellaOps.Web/src/app/shared/components/proof-spine/proof-badges-row.component.ts`)
- `proof-segment` (`src/Web/StellaOps.Web/src/app/shared/components/proof-spine/proof-segment.component.ts`)
- `proof-spine` (`src/Web/StellaOps.Web/src/app/shared/components/proof-spine/proof-spine.component.ts`)
- `segment-detail-modal` (`src/Web/StellaOps.Web/src/app/shared/components/proof-spine/segment-detail-modal.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,37 +0,0 @@
# Proof Studio with What-If Slider and Confidence Factors
## Module
Web
## Status
IMPLEMENTED
## Description
Interactive proof studio for exploring confidence scores with a "what-if" slider for simulating evidence changes, confidence breakdown visualization showing contributing factors as bar charts, and confidence factor chips for individual factor display.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/proof-studio/`
- **Components**:
- `confidence-breakdown` (`src/Web/StellaOps.Web/src/app/features/proof-studio/components/confidence-breakdown/confidence-breakdown.component.ts`)
- `confidence-factor-chip` (`src/Web/StellaOps.Web/src/app/features/proof-studio/components/confidence-factor-chip/confidence-factor-chip.component.ts`)
- `proof-studio-container` (`src/Web/StellaOps.Web/src/app/features/proof-studio/components/proof-studio-container/proof-studio-container.component.ts`)
- `what-if-slider` (`src/Web/StellaOps.Web/src/app/features/proof-studio/components/what-if-slider/what-if-slider.component.ts`)
- **Services**:
- `proof-studio` (`src/Web/StellaOps.Web/src/app/features/proof-studio/services/proof-studio.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/proof-studio/models/proof-trace.model.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/proofs/:subjectDigest`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the editor/studio loads with editable content or empty template
- [ ] Verify changes can be saved and persisted
- [ ] Verify validation errors are displayed for invalid input
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Quick-Verify Drawer UI Component
## Module
Web
## Status
IMPLEMENTED
## Description
Slide-out drawer component for one-click verification of attestation chains, DSSE signatures, and Rekor inclusion proofs directly from any evidence chip or finding row.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/quick-verify-drawer/`
- **Components**:
- `quick-verify-drawer` (`src/Web/StellaOps.Web/src/app/shared/components/quick-verify-drawer/quick-verify-drawer.component.ts`)
- **Source**: batch_38/file_13.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,34 +0,0 @@
# Registry Admin UI
## Module
Web
## Status
IMPLEMENTED
## Description
Admin UI for registry token service plans with plan list, plan editor for repo scope and action rules, dry-run validation, publish actions, and audit log panel.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/registry-admin/`
- **Routes**: `registry-admin.routes.ts`
- **Components**:
- `plan-audit` (`src/Web/StellaOps.Web/src/app/features/registry-admin/components/plan-audit.component.ts`)
- `plan-editor` (`src/Web/StellaOps.Web/src/app/features/registry-admin/components/plan-editor.component.ts`)
- `plan-list` (`src/Web/StellaOps.Web/src/app/features/registry-admin/components/plan-list.component.ts`)
- `registry-admin` (`src/Web/StellaOps.Web/src/app/features/registry-admin/registry-admin.component.ts`)
- **Source**: SPRINT_20251229_023_FE_registry_admin_ui
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/admin/registries`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Release-Aware Security Findings
## Module
Web
## Status
IMPLEMENTED
## Description
Security findings list with release context showing which release each finding impacts, with delta indicators showing new/resolved findings between releases.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/findings/`
- **Components**:
- `ai-chip-row` (`src/Web/StellaOps.Web/src/app/features/findings/ai-chip-row.component.ts`)
- `bulk-triage-view` (`src/Web/StellaOps.Web/src/app/features/findings/bulk-triage-view.component.ts`)
- `findings-container` (`src/Web/StellaOps.Web/src/app/features/findings/container/findings-container.component.ts`)
- `evidence-panel` (`src/Web/StellaOps.Web/src/app/features/findings/detail/evidence-panel.component.ts`)
- `finding-detail-layout` (`src/Web/StellaOps.Web/src/app/features/findings/detail/finding-detail-layout.component.ts`)
- `verdict-panel` (`src/Web/StellaOps.Web/src/app/features/findings/detail/verdict-panel.component.ts`)
- `findings-list` (`src/Web/StellaOps.Web/src/app/features/findings/findings-list.component.ts`)
- **Source**: SPRINT_20260118_007_FE_security_consolidation.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/findings`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Release Management UI (Catalog, Detail, Creation Wizard)
## Module
Web
## Status
IMPLEMENTED
## Description
Release catalog with filtering/search, release detail view, and multi-step release creation wizard with component selector and bundle comparison.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/releases/`
- **Routes**: `releases.routes.ts`
- **Components**:
- `policy-gate-indicator` (`src/Web/StellaOps.Web/src/app/features/releases/policy-gate-indicator.component.ts`)
- `release-detail-page` (`src/Web/StellaOps.Web/src/app/features/releases/release-detail-page.component.ts`)
- `release-flow` (`src/Web/StellaOps.Web/src/app/features/releases/release-flow.component.ts`)
- `releases-list-page` (`src/Web/StellaOps.Web/src/app/features/releases/releases-list-page.component.ts`)
- `remediation-hints` (`src/Web/StellaOps.Web/src/app/features/releases/remediation-hints.component.ts`)
- **Source**: SPRINT_20260110_111_003_FE_release_management_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/release-orchestrator`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,46 +0,0 @@
# Release Orchestrator Dashboard UI
## Module
Web
## Status
IMPLEMENTED
## Description
Full dashboard UI for Release Orchestrator showing pipeline overview, pending approvals, active deployments, and recent releases with real-time SignalR updates.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/release-orchestrator/`
- **Routes**: `approvals.routes.ts`, `dashboard.routes.ts`, `deployments.routes.ts`, `environments.routes.ts`, `evidence.routes.ts`, `releases.routes.ts`, `workflows.routes.ts`
- **Components**:
- `approval-detail` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/approvals/approval-detail/approval-detail.component.ts`)
- `approval-queue` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/approvals/approval-queue/approval-queue.component.ts`)
- `promotion-request` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/approvals/promotion-request/promotion-request.component.ts`)
- `active-deployments` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/dashboard/components/active-deployments/active-deployments.component.ts`)
- `pending-approvals` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/dashboard/components/pending-approvals/pending-approvals.component.ts`)
- `pipeline-overview` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/dashboard/components/pipeline-overview/pipeline-overview.component.ts`)
- `recent-releases` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/dashboard/components/recent-releases/recent-releases.component.ts`)
- `dashboard` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/dashboard/dashboard.component.ts`)
- `deployment-list` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/deployments/deployment-list/deployment-list.component.ts`)
- `deployment-monitor` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/deployments/deployment-monitor/deployment-monitor.component.ts`)
- `environment-settings` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/environments/components/environment-settings/environment-settings.component.ts`)
- `freeze-window-editor` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/environments/components/freeze-window-editor/freeze-window-editor.component.ts`)
- `target-list` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/environments/components/target-list/target-list.component.ts`)
- `environment-detail` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/environments/environment-detail/environment-detail.component.ts`)
- `environment-list` (`src/Web/StellaOps.Web/src/app/features/release-orchestrator/environments/environment-list/environment-list.component.ts`)
- ... and 7 more components
- **Source**: SPRINT_20260110_111_001_FE_dashboard_overview.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/release-orchestrator`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Releases List and Detail Pages (7-Tab Detail)
## Module
Web
## Status
IMPLEMENTED
## Description
Full releases feature with filterable list view and detail page with 7 tabs (Overview, Components, Gates, Promotions, Deployments, Evidence, Proof Chain) using signal-based state management.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/releases/`
- **Routes**: `releases.routes.ts`
- **Components**:
- `policy-gate-indicator` (`src/Web/StellaOps.Web/src/app/features/releases/policy-gate-indicator.component.ts`)
- `release-detail-page` (`src/Web/StellaOps.Web/src/app/features/releases/release-detail-page.component.ts`)
- `release-flow` (`src/Web/StellaOps.Web/src/app/features/releases/release-flow.component.ts`)
- `releases-list-page` (`src/Web/StellaOps.Web/src/app/features/releases/releases-list-page.component.ts`)
- `remediation-hints` (`src/Web/StellaOps.Web/src/app/features/releases/remediation-hints.component.ts`)
- **Source**: SPRINT_20260118_004_FE_releases_feature.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/release-orchestrator`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the list/table loads with paginated data
- [ ] Verify sorting and filtering controls work correctly
- [ ] Verify clicking a row navigates to the detail view
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Remediation PR UI Wiring (Open PR from AI Remediate Panel)
## Module
Web
## Status
IMPLEMENTED
## Description
UI wiring allowing users to open remediation pull requests directly from the AI Remediate panel in the VEX Hub, with a dedicated settings component for configuring SCM integration (repo URL, branch prefix, reviewer groups).
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: SPRINT_20260112_012_FE_remediation_pr_ui_wiring.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Reproduce Button with Deterministic Replay Progress
## Module
Web
## Status
IMPLEMENTED
## Description
Reusable button component that triggers deterministic replay verification of verdicts/scores. Shows inline progress during replay execution and displays results including pass/fail status and drift detection.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/reproduce/`
- **Components**:
- `replay-progress` (`src/Web/StellaOps.Web/src/app/shared/components/reproduce/replay-progress.component.ts`)
- `replay-result` (`src/Web/StellaOps.Web/src/app/shared/components/reproduce/replay-result.component.ts`)
- `reproduce-button` (`src/Web/StellaOps.Web/src/app/shared/components/reproduce/reproduce-button.component.ts`)
- **Services**:
- `replay` (`src/Web/StellaOps.Web/src/app/shared/components/reproduce/replay.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/shared/components/reproduce/replay.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Request Exception Modal with Drag-and-Drop
## Module
Web
## Status
IMPLEMENTED
## Description
Modal for requesting policy exceptions during approvals with drag-and-drop evidence attachment, justification fields, and expiry date selection.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: SPRINT_20260118_005_FE_approvals_feature.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# Risk Budget Burn-Up Chart
## Module
Web
## Status
IMPLEMENTED
## Description
SVG-based burn-up chart displaying risk budget consumption over time (X: calendar days, Y: risk points) with budget limit line, actual consumption, grid lines, and headroom visualization.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/risk/`
- **Components**:
- `budget-burnup-chart` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-burnup-chart.component.ts`)
- `budget-kpi-tiles` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-kpi-tiles.component.ts`)
- `create-exception-modal` (`src/Web/StellaOps.Web/src/app/features/risk/components/create-exception-modal.component.ts`)
- `evidence-buttons` (`src/Web/StellaOps.Web/src/app/features/risk/components/evidence-buttons.component.ts`)
- `exception-ledger` (`src/Web/StellaOps.Web/src/app/features/risk/components/exception-ledger.component.ts`)
- `reachability-slice` (`src/Web/StellaOps.Web/src/app/features/risk/components/reachability-slice.component.ts`)
- `risk-dashboard-layout` (`src/Web/StellaOps.Web/src/app/features/risk/components/risk-dashboard-layout.component.ts`)
- `sbom-diff-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/sbom-diff-panel.component.ts`)
- `side-by-side-diff` (`src/Web/StellaOps.Web/src/app/features/risk/components/side-by-side-diff.component.ts`)
- `verdict-badge` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-badge.component.ts`)
- `verdict-why-summary` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-why-summary.component.ts`)
- `vex-sources-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/vex-sources-panel.component.ts`)
- `risk-dashboard` (`src/Web/StellaOps.Web/src/app/features/risk/risk-dashboard.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/risk`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the visualization renders correctly with sample data
- [ ] Verify interactive elements (hover tooltips, click-to-drill-down) work
- [ ] Verify the visualization handles empty/minimal data gracefully
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# Risk Budget Configuration UI
## Module
Web
## Status
IMPLEMENTED
## Description
Risk budget configuration component in policy governance module, along with a dedicated risk budget dashboard for managing budget parameters.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/risk/`
- **Components**:
- `budget-burnup-chart` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-burnup-chart.component.ts`)
- `budget-kpi-tiles` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-kpi-tiles.component.ts`)
- `create-exception-modal` (`src/Web/StellaOps.Web/src/app/features/risk/components/create-exception-modal.component.ts`)
- `evidence-buttons` (`src/Web/StellaOps.Web/src/app/features/risk/components/evidence-buttons.component.ts`)
- `exception-ledger` (`src/Web/StellaOps.Web/src/app/features/risk/components/exception-ledger.component.ts`)
- `reachability-slice` (`src/Web/StellaOps.Web/src/app/features/risk/components/reachability-slice.component.ts`)
- `risk-dashboard-layout` (`src/Web/StellaOps.Web/src/app/features/risk/components/risk-dashboard-layout.component.ts`)
- `sbom-diff-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/sbom-diff-panel.component.ts`)
- `side-by-side-diff` (`src/Web/StellaOps.Web/src/app/features/risk/components/side-by-side-diff.component.ts`)
- `verdict-badge` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-badge.component.ts`)
- `verdict-why-summary` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-why-summary.component.ts`)
- `vex-sources-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/vex-sources-panel.component.ts`)
- `risk-dashboard` (`src/Web/StellaOps.Web/src/app/features/risk/risk-dashboard.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/risk`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify settings form loads with current values pre-populated
- [ ] Verify changes can be saved and persist across page reloads
- [ ] Verify validation prevents saving invalid configurations
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# Risk Budget KPI Dashboard with Badges
## Module
Web
## Status
IMPLEMENTED
## Description
KPI tiles showing Headroom, Unknowns delta (24h), Risk retired (7d), and Exceptions expiring -- matching the advisory's "copy-paste labels for the board" concept precisely.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/risk/`
- **Components**:
- `budget-burnup-chart` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-burnup-chart.component.ts`)
- `budget-kpi-tiles` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-kpi-tiles.component.ts`)
- `create-exception-modal` (`src/Web/StellaOps.Web/src/app/features/risk/components/create-exception-modal.component.ts`)
- `evidence-buttons` (`src/Web/StellaOps.Web/src/app/features/risk/components/evidence-buttons.component.ts`)
- `exception-ledger` (`src/Web/StellaOps.Web/src/app/features/risk/components/exception-ledger.component.ts`)
- `reachability-slice` (`src/Web/StellaOps.Web/src/app/features/risk/components/reachability-slice.component.ts`)
- `risk-dashboard-layout` (`src/Web/StellaOps.Web/src/app/features/risk/components/risk-dashboard-layout.component.ts`)
- `sbom-diff-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/sbom-diff-panel.component.ts`)
- `side-by-side-diff` (`src/Web/StellaOps.Web/src/app/features/risk/components/side-by-side-diff.component.ts`)
- `verdict-badge` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-badge.component.ts`)
- `verdict-why-summary` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-why-summary.component.ts`)
- `vex-sources-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/vex-sources-panel.component.ts`)
- `risk-dashboard` (`src/Web/StellaOps.Web/src/app/features/risk/risk-dashboard.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/risk`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# Risk Dashboard UI (Side-by-Side View)
## Module
Web
## Status
IMPLEMENTED
## Description
Angular-based risk dashboard with side-by-side SBOM diff viewer, graph split view for reachability comparison, and witness comparison components.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/risk/`
- **Components**:
- `budget-burnup-chart` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-burnup-chart.component.ts`)
- `budget-kpi-tiles` (`src/Web/StellaOps.Web/src/app/features/risk/components/budget-kpi-tiles.component.ts`)
- `create-exception-modal` (`src/Web/StellaOps.Web/src/app/features/risk/components/create-exception-modal.component.ts`)
- `evidence-buttons` (`src/Web/StellaOps.Web/src/app/features/risk/components/evidence-buttons.component.ts`)
- `exception-ledger` (`src/Web/StellaOps.Web/src/app/features/risk/components/exception-ledger.component.ts`)
- `reachability-slice` (`src/Web/StellaOps.Web/src/app/features/risk/components/reachability-slice.component.ts`)
- `risk-dashboard-layout` (`src/Web/StellaOps.Web/src/app/features/risk/components/risk-dashboard-layout.component.ts`)
- `sbom-diff-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/sbom-diff-panel.component.ts`)
- `side-by-side-diff` (`src/Web/StellaOps.Web/src/app/features/risk/components/side-by-side-diff.component.ts`)
- `verdict-badge` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-badge.component.ts`)
- `verdict-why-summary` (`src/Web/StellaOps.Web/src/app/features/risk/components/verdict-why-summary.component.ts`)
- `vex-sources-panel` (`src/Web/StellaOps.Web/src/app/features/risk/components/vex-sources-panel.component.ts`)
- `risk-dashboard` (`src/Web/StellaOps.Web/src/app/features/risk/risk-dashboard.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/risk`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,39 +0,0 @@
# Role-Based Views (Dev/Security/Audit)
## Module
Web
## Status
IMPLEMENTED
## Description
Compare view supports role-based viewing with user preference persistence for different personas (Developer, Security, Audit).
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/core/auth/`
- **Services**:
- `abac` (`src/Web/StellaOps.Web/src/app/core/auth/abac.service.ts`)
- `auth-storage` (`src/Web/StellaOps.Web/src/app/core/auth/auth-storage.service.ts`)
- `auth` (`src/Web/StellaOps.Web/src/app/core/auth/auth.service.ts`)
- `authority-auth` (`src/Web/StellaOps.Web/src/app/core/auth/authority-auth.service.ts`)
- `dpop` (`src/Web/StellaOps.Web/src/app/core/auth/dpop/dpop.service.ts`)
- `fresh-auth` (`src/Web/StellaOps.Web/src/app/core/auth/fresh-auth.service.ts`)
- `tenant-activation` (`src/Web/StellaOps.Web/src/app/core/auth/tenant-activation.service.ts`)
- `tenant-persistence` (`src/Web/StellaOps.Web/src/app/core/auth/tenant-persistence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/core/auth/auth-session.model.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# SARIF Download from Export Center
## Module
Web
## Status
IMPLEMENTED
## Description
Dedicated SARIF 2.1.0 download component within the Export Center that generates and downloads vulnerability findings in SARIF format for integration with IDEs, GitHub Code Scanning, and other SARIF-consuming tools.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/export-center/`
- **Components**:
- `sarif-download` (`src/Web/StellaOps.Web/src/app/shared/components/export-center/sarif-download.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the export/download action triggers correctly
- [ ] Verify the exported file is in the expected format (JSON, SARIF, CSV, etc.)
- [ ] Verify export includes all expected data fields
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,31 +0,0 @@
# SBOM Analytics Console UI
## Module
Web
## Status
IMPLEMENTED
## Description
Angular UI for SBOM analytics with dashboard panels showing component counts, vulnerability trends, supplier distribution, and attestation coverage. Includes drilldown views, trend charts, and CSV export capabilities. Not present in the known features list.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/analytics/`
- **Routes**: `analytics.routes.ts`
- **Components**:
- `sbom-lake-page` (`src/Web/StellaOps.Web/src/app/features/analytics/sbom-lake-page.component.ts`)
- **Source**: SPRINT_20260120_031_FE_sbom_analytics_console.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/analytics`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# SBOM Diff Side-by-Side Panel
## Module
Web
## Status
IMPLEMENTED
## Description
Side-by-side visual comparison panel showing packages added/removed/changed between two SBOM versions, with highlighted risk changes for before/after risk state comparison.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/sbom-diff/`
- **Routes**: `sbom-diff.routes.ts`
- **Components**:
- `sbom-diff-view` (`src/Web/StellaOps.Web/src/app/features/sbom-diff/components/sbom-diff-view/sbom-diff-view.component.ts`)
- **Services**:
- `sbom-diff` (`src/Web/StellaOps.Web/src/app/features/sbom-diff/services/sbom-diff.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/sbom-diff/models/sbom-diff.models.ts`
- **Source**: SPRINT_20251226_004_FE_risk_dashboard.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/sbom/diff`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,37 +0,0 @@
# SBOM Sources Manager UI (List + Detail + 6-Step Wizard)
## Module
Web
## Status
IMPLEMENTED
## Description
Full SBOM Sources management UI with sources list page (status badges, last-run times, filtering), source detail page (run history, configuration), and 6-step add/edit wizard (type selection, basic info, type-specific config, credentials, schedule, review+test).
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/sbom-sources/`
- **Routes**: `sbom-sources.routes.ts`
- **Components**:
- `source-detail` (`src/Web/StellaOps.Web/src/app/features/sbom-sources/components/source-detail/source-detail.component.ts`)
- `source-wizard` (`src/Web/StellaOps.Web/src/app/features/sbom-sources/components/source-wizard/source-wizard.component.ts`)
- `sources-list` (`src/Web/StellaOps.Web/src/app/features/sbom-sources/components/sources-list/sources-list.component.ts`)
- **Services**:
- `sbom-sources` (`src/Web/StellaOps.Web/src/app/features/sbom-sources/services/sbom-sources.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/sbom-sources/models/sbom-source.models.ts`
- **Source**: SPRINT_20251229_003_FE_sbom_sources_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/sbom-sources`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,36 +0,0 @@
# Scanner Ops Settings UI
## Module
Web
## Status
IMPLEMENTED
## Description
Scanner ops UI with offline kit management (upload/download/verify), baseline list with compare and promote flows, determinism/replay settings, analyzer plugin health dashboard, cache metrics, and scan performance baseline comparison.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/scanner-ops/`
- **Routes**: `scanner-ops.routes.ts`
- **Components**:
- `analyzer-health` (`src/Web/StellaOps.Web/src/app/features/scanner-ops/components/analyzer-health.component.ts`)
- `baseline-list` (`src/Web/StellaOps.Web/src/app/features/scanner-ops/components/baseline-list.component.ts`)
- `determinism-settings` (`src/Web/StellaOps.Web/src/app/features/scanner-ops/components/determinism-settings.component.ts`)
- `offline-kit-list` (`src/Web/StellaOps.Web/src/app/features/scanner-ops/components/offline-kit-list.component.ts`)
- `performance-baseline` (`src/Web/StellaOps.Web/src/app/features/scanner-ops/components/performance-baseline.component.ts`)
- `scanner-ops` (`src/Web/StellaOps.Web/src/app/features/scanner-ops/scanner-ops.component.ts`)
- **Source**: SPRINT_20251229_025_FE_scanner_ops_settings_ui
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/ops/scanner`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify settings form loads with current values pre-populated
- [ ] Verify changes can be saved and persist across page reloads
- [ ] Verify validation prevents saving invalid configurations
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,35 +0,0 @@
# Scheduler & Orchestrator Ops UI
## Module
Web
## Status
IMPLEMENTED
## Description
Ops UI for scheduler runs, worker fleet dashboard with fair-share visualization, backpressure warnings, and DAG visualization for task dependencies.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/scheduler-ops/`
- **Routes**: `scheduler-ops.routes.ts`
- **Components**:
- `schedule-management` (`src/Web/StellaOps.Web/src/app/features/scheduler-ops/schedule-management.component.ts`)
- `scheduler-runs` (`src/Web/StellaOps.Web/src/app/features/scheduler-ops/scheduler-runs.component.ts`)
- `worker-fleet` (`src/Web/StellaOps.Web/src/app/features/scheduler-ops/worker-fleet.component.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/scheduler-ops/scheduler-ops.models.ts`
- **Source**: SPRINT_20251229_017_FE_scheduler_orchestrator_ops_ui
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/scheduler`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,50 +0,0 @@
# Score Comparison View (Side-by-Side Scan Score Analysis)
## Module
Web
## Status
IMPLEMENTED
## Description
Side-by-side comparison of vulnerability scan scores between two scans with severity bar charts, delta table showing metric changes, VEX impact visualization (suppressed counts by severity), new/resolved vulnerability lists, and a time-series SVG chart view showing risk score trends over 30 days.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/compare/`
- **Components**:
- `actionables-panel` (`src/Web/StellaOps.Web/src/app/features/compare/components/actionables-panel/actionables-panel.component.ts`)
- `baseline-rationale` (`src/Web/StellaOps.Web/src/app/features/compare/components/baseline-rationale/baseline-rationale.component.ts`)
- `baseline-selector` (`src/Web/StellaOps.Web/src/app/features/compare/components/baseline-selector.component.ts`)
- `categories-pane` (`src/Web/StellaOps.Web/src/app/features/compare/components/categories-pane.component.ts`)
- `compare-view` (`src/Web/StellaOps.Web/src/app/features/compare/components/compare-view.component.ts`)
- `compare-view` (`src/Web/StellaOps.Web/src/app/features/compare/components/compare-view/compare-view.component.ts`)
- `degraded-mode-banner` (`src/Web/StellaOps.Web/src/app/features/compare/components/degraded-mode-banner/degraded-mode-banner.component.ts`)
- `delta-summary-strip` (`src/Web/StellaOps.Web/src/app/features/compare/components/delta-summary-strip.component.ts`)
- `envelope-hashes` (`src/Web/StellaOps.Web/src/app/features/compare/components/envelope-hashes/envelope-hashes.component.ts`)
- `export-actions` (`src/Web/StellaOps.Web/src/app/features/compare/components/export-actions/export-actions.component.ts`)
- `graph-mini-map` (`src/Web/StellaOps.Web/src/app/features/compare/components/graph-mini-map/graph-mini-map.component.ts`)
- `items-pane` (`src/Web/StellaOps.Web/src/app/features/compare/components/items-pane.component.ts`)
- `proof-pane` (`src/Web/StellaOps.Web/src/app/features/compare/components/proof-pane.component.ts`)
- `three-pane-layout` (`src/Web/StellaOps.Web/src/app/features/compare/components/three-pane-layout.component.ts`)
- `trust-indicators` (`src/Web/StellaOps.Web/src/app/features/compare/components/trust-indicators.component.ts`)
- ... and 3 more components
- **Services**:
- `compare-export` (`src/Web/StellaOps.Web/src/app/features/compare/services/compare-export.service.ts`)
- `compare` (`src/Web/StellaOps.Web/src/app/features/compare/services/compare.service.ts`)
- `delta-compute` (`src/Web/StellaOps.Web/src/app/features/compare/services/delta-compute.service.ts`)
- `user-preferences` (`src/Web/StellaOps.Web/src/app/features/compare/services/user-preferences.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/compare/:currentId`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,32 +0,0 @@
# Score UI Display Enhancement
## Module
Web
## Status
IMPLEMENTED
## Description
Unified score display with unknowns bands and delta-if-present. Full component suite with unit tests and E2E tests.
## Implementation Details
- **Score components**:
- `delta-if-present` (`src/Web/StellaOps.Web/src/app/shared/components/score/delta-if-present.component.ts`)
- `score-badge` (`src/Web/StellaOps.Web/src/app/shared/components/score/score-badge.component.ts`)
- `score-breakdown-popover` (`src/Web/StellaOps.Web/src/app/shared/components/score/score-breakdown-popover.component.ts`)
- `score-history-chart` (`src/Web/StellaOps.Web/src/app/shared/components/score/score-history-chart.component.ts`)
- `score-pill` (`src/Web/StellaOps.Web/src/app/shared/components/score/score-pill.component.ts`)
- `unknowns-band` (`src/Web/StellaOps.Web/src/app/shared/components/score/unknowns-band.component.ts`)
- `unknowns-tooltip` (`src/Web/StellaOps.Web/src/app/shared/components/score/unknowns-tooltip.component.ts`)
- **Unit tests**: `score-badge.component.spec.ts`, `score-pill.component.spec.ts`, `score-breakdown-popover.component.spec.ts`, `accessibility.spec.ts`
- **E2E tests**: `src/Web/StellaOps.Web/tests/e2e/score-features.spec.ts`
## E2E Test Plan
- [ ] Verify score badge renders with correct color coding for different score ranges
- [ ] Verify unknowns band displays uncertainty range
- [ ] Verify delta-if-present shows change from baseline
- [ ] Verify score-breakdown-popover shows per-factor breakdown on hover
- [ ] Verify accessibility (keyboard navigation, screen reader labels)
## Related Documentation
- Source: See feature catalog

View File

@@ -1,55 +0,0 @@
# Secret Detection Revelation Policy UI
## Module
Web
## Status
IMPLEMENTED
## Description
Configuration UI for controlling how detected secrets are displayed (masked vs revealed). Includes a revelation policy selector with permission-gated full reveal, a masked value display component with copy-to-clipboard, rule category selection, and alert channel testing capabilities.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/secret-detection/`
- **Routes**: `secret-detection.routes.ts`
- **Components**:
- `alert-destination-config` (`src/Web/StellaOps.Web/src/app/features/secret-detection/alert-destination-config.component.ts`)
- `channel-test` (`src/Web/StellaOps.Web/src/app/features/secret-detection/channel-test.component.ts`)
- `alert-destination-config` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/alerts/alert-destination-config.component.ts`)
- `exception-manager` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/exceptions/exception-manager.component.ts`)
- `masked-value-display` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/findings/masked-value-display.component.ts`)
- `secret-findings-list` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/findings/secret-findings-list.component.ts`)
- `revelation-policy-selector` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/settings/revelation-policy-selector.component.ts`)
- `rule-category-toggles` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/settings/rule-category-toggles.component.ts`)
- `secret-detection-settings` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/settings/secret-detection-settings.component.ts`)
- `exception-form` (`src/Web/StellaOps.Web/src/app/features/secret-detection/exception-form.component.ts`)
- `exception-manager` (`src/Web/StellaOps.Web/src/app/features/secret-detection/exception-manager.component.ts`)
- `finding-detail-drawer` (`src/Web/StellaOps.Web/src/app/features/secret-detection/finding-detail-drawer.component.ts`)
- `masked-value-display` (`src/Web/StellaOps.Web/src/app/features/secret-detection/masked-value-display.component.ts`)
- `revelation-policy-config` (`src/Web/StellaOps.Web/src/app/features/secret-detection/revelation-policy-config.component.ts`)
- `rule-category-selector` (`src/Web/StellaOps.Web/src/app/features/secret-detection/rule-category-selector.component.ts`)
- ... and 2 more components
- **Services**:
- `secret-detection-settings` (`src/Web/StellaOps.Web/src/app/features/secret-detection/services/secret-detection-settings.service.ts`)
- `secret-exception` (`src/Web/StellaOps.Web/src/app/features/secret-detection/services/secret-exception.service.ts`)
- `secret-findings` (`src/Web/StellaOps.Web/src/app/features/secret-detection/services/secret-findings.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/alert-destination.models.ts`
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/revelation-policy.models.ts`
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/secret-detection.models.ts`
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/secret-finding.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/security`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,55 +0,0 @@
# Secret Detection UI (Settings, Findings, Exceptions, Alerts)
## Module
Web
## Status
IMPLEMENTED
## Description
Angular UI for secret detection management: settings page with enable/disable toggle and revelation policy selector, findings list with masked value display, exception manager with validation forms, and alert destination configuration with channel test functionality.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/secret-detection/`
- **Routes**: `secret-detection.routes.ts`
- **Components**:
- `alert-destination-config` (`src/Web/StellaOps.Web/src/app/features/secret-detection/alert-destination-config.component.ts`)
- `channel-test` (`src/Web/StellaOps.Web/src/app/features/secret-detection/channel-test.component.ts`)
- `alert-destination-config` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/alerts/alert-destination-config.component.ts`)
- `exception-manager` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/exceptions/exception-manager.component.ts`)
- `masked-value-display` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/findings/masked-value-display.component.ts`)
- `secret-findings-list` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/findings/secret-findings-list.component.ts`)
- `revelation-policy-selector` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/settings/revelation-policy-selector.component.ts`)
- `rule-category-toggles` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/settings/rule-category-toggles.component.ts`)
- `secret-detection-settings` (`src/Web/StellaOps.Web/src/app/features/secret-detection/components/settings/secret-detection-settings.component.ts`)
- `exception-form` (`src/Web/StellaOps.Web/src/app/features/secret-detection/exception-form.component.ts`)
- `exception-manager` (`src/Web/StellaOps.Web/src/app/features/secret-detection/exception-manager.component.ts`)
- `finding-detail-drawer` (`src/Web/StellaOps.Web/src/app/features/secret-detection/finding-detail-drawer.component.ts`)
- `masked-value-display` (`src/Web/StellaOps.Web/src/app/features/secret-detection/masked-value-display.component.ts`)
- `revelation-policy-config` (`src/Web/StellaOps.Web/src/app/features/secret-detection/revelation-policy-config.component.ts`)
- `rule-category-selector` (`src/Web/StellaOps.Web/src/app/features/secret-detection/rule-category-selector.component.ts`)
- ... and 2 more components
- **Services**:
- `secret-detection-settings` (`src/Web/StellaOps.Web/src/app/features/secret-detection/services/secret-detection-settings.service.ts`)
- `secret-exception` (`src/Web/StellaOps.Web/src/app/features/secret-detection/services/secret-exception.service.ts`)
- `secret-findings` (`src/Web/StellaOps.Web/src/app/features/secret-detection/services/secret-findings.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/alert-destination.models.ts`
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/revelation-policy.models.ts`
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/secret-detection.models.ts`
- `src/Web/StellaOps.Web/src/app/features/secret-detection/models/secret-finding.models.ts`
- **Source**: SPRINT_20260104_008_FE_secret_detection_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/security`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,46 +0,0 @@
# Security Overview Dashboard
## Module
Web
## Status
IMPLEMENTED
## Description
Consolidated security overview merging Analyze and Triage sections into a single security hub with release-aware finding counts and risk summaries.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/security/`
- **Routes**: `security.routes.ts`
- **Components**:
- `artifact-detail-page` (`src/Web/StellaOps.Web/src/app/features/security/artifact-detail-page.component.ts`)
- `artifacts-page` (`src/Web/StellaOps.Web/src/app/features/security/artifacts-page.component.ts`)
- `exception-detail-page` (`src/Web/StellaOps.Web/src/app/features/security/exception-detail-page.component.ts`)
- `exceptions-page` (`src/Web/StellaOps.Web/src/app/features/security/exceptions-page.component.ts`)
- `lineage-page` (`src/Web/StellaOps.Web/src/app/features/security/lineage-page.component.ts`)
- `patch-map-page` (`src/Web/StellaOps.Web/src/app/features/security/patch-map-page.component.ts`)
- `reachability-page` (`src/Web/StellaOps.Web/src/app/features/security/reachability-page.component.ts`)
- `risk-page` (`src/Web/StellaOps.Web/src/app/features/security/risk-page.component.ts`)
- `sbom-graph-page` (`src/Web/StellaOps.Web/src/app/features/security/sbom-graph-page.component.ts`)
- `scan-detail-page` (`src/Web/StellaOps.Web/src/app/features/security/scan-detail-page.component.ts`)
- `security-findings-page` (`src/Web/StellaOps.Web/src/app/features/security/security-findings-page.component.ts`)
- `security-overview-page` (`src/Web/StellaOps.Web/src/app/features/security/security-overview-page.component.ts`)
- `unknowns-page` (`src/Web/StellaOps.Web/src/app/features/security/unknowns-page.component.ts`)
- `vex-hub-page` (`src/Web/StellaOps.Web/src/app/features/security/vex-hub-page.component.ts`)
- `vulnerabilities-page` (`src/Web/StellaOps.Web/src/app/features/security/vulnerabilities-page.component.ts`)
- ... and 1 more components
- **Source**: SPRINT_20260118_007_FE_security_consolidation.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/security`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,39 +0,0 @@
# Setup Wizard Live API Wiring (Replacing Mocks)
## Module
Web
## Status
IMPLEMENTED
## Description
Replaced mocked setup wizard calls with real HttpClient calls to Platform setup endpoints including Problem+JSON error handling, retry state tracking, data freshness banners, and deterministic unit tests.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/setup-wizard/`
- **Routes**: `setup-wizard.routes.ts`
- **Components**:
- `config-missing` (`src/Web/StellaOps.Web/src/app/features/setup-wizard/components/config-missing.component.ts`)
- `setup-wizard` (`src/Web/StellaOps.Web/src/app/features/setup-wizard/components/setup-wizard.component.ts`)
- `step-content` (`src/Web/StellaOps.Web/src/app/features/setup-wizard/components/step-content.component.ts`)
- `step-indicator` (`src/Web/StellaOps.Web/src/app/features/setup-wizard/components/step-indicator.component.ts`)
- **Services**:
- `setup-wizard-api` (`src/Web/StellaOps.Web/src/app/features/setup-wizard/services/setup-wizard-api.service.ts`)
- `setup-wizard-state` (`src/Web/StellaOps.Web/src/app/features/setup-wizard/services/setup-wizard-state.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/setup-wizard/models/setup-wizard.models.ts`
- **Source**: SPRINT_20260112_005_FE_setup_wizard_ui_wiring.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/setup`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the editor/studio loads with editable content or empty template
- [ ] Verify changes can be saved and persisted
- [ ] Verify validation errors are displayed for invalid input
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Signed VEX Override Badge (DSSE Status Display)
## Module
Web
## Status
IMPLEMENTED
## Description
SignedOverrideBadgeComponent displaying DSSE badge with verification status, optional expanded details (digest, signer, timestamp, Rekor link), and ASCII-only indicators.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/components/signed-override-badge/`
- **Components**:
- `signed-override-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/signed-override-badge/signed-override-badge.component.ts`)
- **Source**: SPRINT_20260112_004_FE_risk_line_runtime_trace_ui.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the badge/chip renders with correct status color and label
- [ ] Verify the badge updates reactively when underlying data changes
- [ ] Verify tooltip or popover shows additional detail on hover
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,34 +0,0 @@
# SLO Burn Rate Monitoring UI
## Module
Web
## Status
IMPLEMENTED
## Description
SLO health dashboard with multi-window burn rate calculation (1h/6h/24h/72h Google SRE methodology), alert lifecycle management (fire/ack/resolve/snooze), error budget forecasting, and SLO CRUD.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/slo-monitoring/`
- **Routes**: `slo.routes.ts`
- **Components**:
- `slo-alert-list` (`src/Web/StellaOps.Web/src/app/features/slo-monitoring/slo-alert-list.component.ts`)
- `slo-dashboard` (`src/Web/StellaOps.Web/src/app/features/slo-monitoring/slo-dashboard.component.ts`)
- `slo-definitions` (`src/Web/StellaOps.Web/src/app/features/slo-monitoring/slo-definitions.component.ts`)
- `slo-detail` (`src/Web/StellaOps.Web/src/app/features/slo-monitoring/slo-detail.component.ts`)
- **Source**: SPRINT_20251229_031_FE_slo_burn_rate_monitoring
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/ops/orchestrator/slo`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Smart-Diff UI Components (Visual Diffs)
## Module
Web
## Status
IMPLEMENTED
## Description
Full visual diff UI with three-pane layout (categories, items, proof), delta summary strip, compare view, VEX merge explanation visualization, proof pane, export actions, and smart-diff badges. Matches the advisory's specified UI patterns.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/smart-diff-badge/`
- **Components**:
- `smart-diff-badge` (`src/Web/StellaOps.Web/src/app/shared/components/smart-diff-badge/smart-diff-badge.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify side-by-side comparison view renders correctly with two versions
- [ ] Verify additions, removals, and changes are visually highlighted
- [ ] Verify diff data matches the expected delta between versions
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Snapshot Merge Preview with K4 Lattice Visualization and Determinism Verification
## Module
Web
## Status
IMPLEMENTED
## Description
Snapshot management UI with merge preview showing per-CVE source contributions with trust scores, K4 lattice visualization, merge traces, missing evidence indicators, REPLAY.yaml format for deterministic replay, and verify-determinism component. (Merged with Snapshot Merge Preview from Phase 2 AirGap section.)
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/lattice-diagram/`
- **Components**:
- `lattice-diagram` (`src/Web/StellaOps.Web/src/app/shared/components/lattice-diagram/lattice-diagram.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the visualization renders correctly with sample data
- [ ] Verify interactive elements (hover tooltips, click-to-drill-down) work
- [ ] Verify the visualization handles empty/minimal data gracefully
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# StellaBundle Export Button Component
## Module
Web
## Status
IMPLEMENTED
## Description
One-click StellaBundle export call-to-action button that packages SBOM + VEX + attestations + provenance + Rekor receipts into a single downloadable evidence bundle. Placed contextually in finding details, evidence panels, and export center.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/export-center/`
- **Components**:
- `sarif-download` (`src/Web/StellaOps.Web/src/app/shared/components/export-center/sarif-download.component.ts`)
- **Source**: batch_38/file_17.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the export/download action triggers correctly
- [ ] Verify the exported file is in the expected format (JSON, SARIF, CSV, etc.)
- [ ] Verify export includes all expected data fields
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Three-Pane Layout (Categories/Items/Proof)
## Module
Web
## Status
IMPLEMENTED
## Description
The compare feature implements a three-pane layout with categories, items, and proof panes for side-by-side comparison of scans/policies.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,32 +0,0 @@
# TinyFailureEvent / First Signal Event Pattern
## Module
Web
## Status
IMPLEMENTED
## Description
First signal events are implemented with a dedicated store, typed models, and UI components for display in run views and console status.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/runs/`
- **Components**:
- `first-signal-card` (`src/Web/StellaOps.Web/src/app/features/runs/components/first-signal-card/first-signal-card.component.ts`)
- **Services**:
- `first-signal-prefetch` (`src/Web/StellaOps.Web/src/app/features/runs/services/first-signal-prefetch.service.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,28 +0,0 @@
# Triage Inbox Angular Component (3-Pane Layout)
## Module
Web
## Status
IMPLEMENTED
## Description
3-pane Angular UI for exploit-path-based triage: left pane (path list with risk badges, quiet/active toggle, search), center pane (CVE list, package/symbol info, entry point, exceptions), right pane (collapsible reach graph, symbol map, VEX claims, export). Uses Cytoscape.js for graph visualization.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/` (search for related components)
- **Source**: SPRINT_3900_0003_0001_exploit_path_inbox_proof_bundles.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the triage list loads with findings/items to review
- [ ] Verify triaging actions (accept, dismiss, override) update item status
- [ ] Verify keyboard shortcuts work for rapid triage navigation
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,30 +0,0 @@
# Triage Queue for High-Impact Unknowns
## Module
Web
## Status
IMPLEMENTED
## Description
Triage queue UI component (`triage-queue.component.ts`) with prioritized vulnerability queue, priority scoring, sort modes (priority/severity/age/epss), queue item lifecycle, and auto-advance after triage decision. Backend scoring primitives in the Determinization library feed queue ranking.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/components/triage-queue/`
- **Components**:
- `triage-queue` (`src/Web/StellaOps.Web/src/app/features/triage/components/triage-queue/triage-queue.component.ts`)
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the triage list loads with findings/items to review
- [ ] Verify triaging actions (accept, dismiss, override) update item status
- [ ] Verify keyboard shortcuts work for rapid triage navigation
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,62 +0,0 @@
# Triage Workspace with Proof Tree
## Module
Web
## Status
IMPLEMENTED
## Description
Triage workspace component for vulnerability triage with an associated proof tree visualization component. Includes Storybook stories for the proof tree.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
- **Components**:
- `ai-code-guard-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-code-guard-badge/ai-code-guard-badge.component.ts`)
- `ai-recommendation-panel` (`src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`)
- `attestation-viewer` (`src/Web/StellaOps.Web/src/app/features/triage/components/attestation-viewer/attestation-viewer.component.ts`)
- `bulk-action-modal` (`src/Web/StellaOps.Web/src/app/features/triage/components/bulk-action-modal/bulk-action-modal.component.ts`)
- `case-header` (`src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`)
- `decision-drawer-enhanced` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer-enhanced.component.ts`)
- `decision-drawer` (`src/Web/StellaOps.Web/src/app/features/triage/components/decision-drawer/decision-drawer.component.ts`)
- `attestation-chain` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/attestation-chain.component.ts`)
- `backport-verdict-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/backport-verdict-badge.component.ts`)
- `binary-diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/confidence-meter.component.ts`)
- `diff-tab` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/diff-tab.component.ts`)
- `dsse-badge` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/dsse-badge.component.ts`)
- `evidence-uri-link` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/evidence-uri-link.component.ts`)
- `function-trace` (`src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/function-trace.component.ts`)
- ... and 48 more components
- **Services**:
- `advisory-ai` (`src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`)
- `binary-diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`)
- `diff-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts`)
- `display-preferences` (`src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts`)
- `evidence-tab` (`src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts`)
- `gating` (`src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts`)
- `keyboard-shortcuts` (`src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts`)
- `reach-graph-slice` (`src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts`)
- `reachability` (`src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts`)
- `runtime-evidence` (`src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/triage/models/diff-evidence.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence-panel.models.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/evidence.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/gating.model.ts`
- `src/Web/StellaOps.Web/src/app/features/triage/models/reachability.models.ts`
- **Source**: Feature matrix scan
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/triage/artifacts`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the triage list loads with findings/items to review
- [ ] Verify triaging actions (accept, dismiss, override) update item status
- [ ] Verify keyboard shortcuts work for rapid triage navigation
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,39 +0,0 @@
# Trust Algebra Panel Angular Components
## Module
Web
## Status
IMPLEMENTED
## Description
Angular component suite for visualizing the VEX trust lattice: TrustAlgebraComponent (main panel), ConfidenceMeterComponent, ClaimTableComponent, PolicyChipsComponent, plus models and service. Distinct from existing features like "Proof Studio UX" or "Evidence Panel UI" -- this is specifically the trust algebra visualization with claim table and policy chip views.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/`
- **Components**:
- `claim-table` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/claim-table.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/confidence-meter.component.ts`)
- `policy-chips` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/policy-chips.component.ts`)
- `replay-button` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/replay-button.component.ts`)
- `trust-algebra` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.component.ts`)
- `trust-vector-bars` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-vector-bars.component.ts`)
- **Services**:
- `trust-algebra` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.models.ts`
- **Source**: SPRINT_7100_0003_0001_ui_trust_algebra.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to the relevant page/section where this feature appears
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut)
- [ ] Verify the panel displays the correct detail data for the selected item
- [ ] Verify the panel can be closed (X button, Escape key, backdrop click)
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# Trust Scoring Dashboard UI
## Module
Web
## Status
IMPLEMENTED
## Description
Trust administration dashboard with signing key management including rotation wizard, issuer trust scores, air-gap audit feed, incident audit, and mTLS certificate inventory.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/trust-admin/`
- **Routes**: `trust-admin.routes.ts`
- **Components**:
- `airgap-audit` (`src/Web/StellaOps.Web/src/app/features/trust-admin/airgap-audit.component.ts`)
- `certificate-inventory` (`src/Web/StellaOps.Web/src/app/features/trust-admin/certificate-inventory.component.ts`)
- `incident-audit` (`src/Web/StellaOps.Web/src/app/features/trust-admin/incident-audit.component.ts`)
- `issuer-trust-list` (`src/Web/StellaOps.Web/src/app/features/trust-admin/issuer-trust-list.component.ts`)
- `key-detail-panel` (`src/Web/StellaOps.Web/src/app/features/trust-admin/key-detail-panel.component.ts`)
- `key-expiry-warning` (`src/Web/StellaOps.Web/src/app/features/trust-admin/key-expiry-warning.component.ts`)
- `key-rotation-wizard` (`src/Web/StellaOps.Web/src/app/features/trust-admin/key-rotation-wizard.component.ts`)
- `signing-key-dashboard` (`src/Web/StellaOps.Web/src/app/features/trust-admin/signing-key-dashboard.component.ts`)
- `trust-admin` (`src/Web/StellaOps.Web/src/app/features/trust-admin/trust-admin.component.ts`)
- `trust-analytics` (`src/Web/StellaOps.Web/src/app/features/trust-admin/trust-analytics.component.ts`)
- `trust-audit-log` (`src/Web/StellaOps.Web/src/app/features/trust-admin/trust-audit-log.component.ts`)
- `trust-score-config` (`src/Web/StellaOps.Web/src/app/features/trust-admin/trust-score-config.component.ts`)
- **Source**: SPRINT_20251229_046_FE_trust_scoring_dashboard
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/admin/trust`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the dashboard loads without errors and displays summary cards/metrics
- [ ] Verify data refreshes correctly and loading states are shown
- [ ] Verify empty state is displayed when no data is available
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,42 +0,0 @@
# UI-Driven Vulnerability Annotation and State Management
## Module
Web
## Status
IMPLEMENTED
## Description
UI workflow for vulnerability lifecycle state management (open -> in_review -> mitigated -> closed, plus false_positive and deferred branches), VEX candidate review and approval with auto-generated justifications from Smart-Diff, and cryptographically auditable decision trails. Includes triage dashboard with severity filters and state transition modals.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/vulnerabilities/`
- **Components**:
- `claim-table` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/claim-table.component.ts`)
- `confidence-meter` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/confidence-meter.component.ts`)
- `policy-chips` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/policy-chips.component.ts`)
- `replay-button` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/replay-button.component.ts`)
- `trust-algebra` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.component.ts`)
- `trust-vector-bars` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-vector-bars.component.ts`)
- `vuln-triage-dashboard` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/vuln-triage-dashboard/vuln-triage-dashboard.component.ts`)
- `vulnerability-detail` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/vulnerability-detail.component.ts`)
- `vulnerability-explorer` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/vulnerability-explorer.component.ts`)
- **Services**:
- `trust-algebra` (`src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.service.ts`)
- **Models**:
- `src/Web/StellaOps.Web/src/app/features/vulnerabilities/components/trust-algebra/trust-algebra.models.ts`
- **Source**: SPRINT_4000_0100_0002_vuln_annotation.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/vulnerabilities`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,41 +0,0 @@
# Unified Audit Log Viewer
## Module
Web
## Status
IMPLEMENTED
## Description
Cross-module unified audit log viewer with config diff viewer (Monaco-based), event correlation timeline, anomaly detection highlights, and timeline search.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/audit-log/`
- **Routes**: `audit-log.routes.ts`
- **Components**:
- `audit-anomalies` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-anomalies.component.ts`)
- `audit-authority` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-authority.component.ts`)
- `audit-correlations` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-correlations.component.ts`)
- `audit-event-detail` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-event-detail.component.ts`)
- `audit-export` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-export.component.ts`)
- `audit-integrations` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-integrations.component.ts`)
- `audit-log-dashboard` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-log-dashboard.component.ts`)
- `audit-log-table` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-log-table.component.ts`)
- `audit-policy` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-policy.component.ts`)
- `audit-timeline-search` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-timeline-search.component.ts`)
- `audit-vex` (`src/Web/StellaOps.Web/src/app/features/audit-log/audit-vex.component.ts`)
- **Source**: SPRINT_20251229_028_FE_unified_audit_log_viewer
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/admin/audit`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify the component renders correctly with sample data
- [ ] Verify interactive elements respond to user input
- [ ] Verify data is fetched and displayed from the correct API endpoints
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

View File

@@ -1,45 +0,0 @@
# Unified Settings Page (10 Categories)
## Module
Web
## Status
IMPLEMENTED
## Description
Consolidated settings hub with 10 category panes (Integrations, Trust, Admin, Notifications, Security Data, Policy, Release Control, Branding, Usage, System) replacing scattered admin pages.
## Implementation Details
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/settings/`
- **Routes**: `settings.routes.ts`
- **Components**:
- `admin-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/admin/admin-settings-page.component.ts`)
- `ai-preferences` (`src/Web/StellaOps.Web/src/app/features/settings/ai-preferences.component.ts`)
- `branding-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/branding/branding-settings-page.component.ts`)
- `determinization-config-pane` (`src/Web/StellaOps.Web/src/app/features/settings/determinization-config-pane.component.ts`)
- `integration-detail-page` (`src/Web/StellaOps.Web/src/app/features/settings/integrations/integration-detail-page.component.ts`)
- `integrations-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/integrations/integrations-settings-page.component.ts`)
- `notifications-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/notifications/notifications-settings-page.component.ts`)
- `policy-governance-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/policy/policy-governance-settings-page.component.ts`)
- `release-control-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/release-control/release-control-settings-page.component.ts`)
- `remediation-pr-settings` (`src/Web/StellaOps.Web/src/app/features/settings/remediation-pr-settings.component.ts`)
- `security-data-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/security-data/security-data-settings-page.component.ts`)
- `settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/settings-page.component.ts`)
- `system-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/system/system-settings-page.component.ts`)
- `trust-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/trust/trust-settings-page.component.ts`)
- `usage-settings-page` (`src/Web/StellaOps.Web/src/app/features/settings/usage/usage-settings-page.component.ts`)
- **Source**: SPRINT_20260118_002_FE_settings_consolidation.md
## E2E Test Plan
- **Setup**:
- [ ] Log in with a user that has appropriate permissions
- [ ] Navigate to `/settings`
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- **Core verification**:
- [ ] Verify settings form loads with current values pre-populated
- [ ] Verify changes can be saved and persist across page reloads
- [ ] Verify validation prevents saving invalid configurations
- **Edge cases**:
- [ ] Verify graceful handling when backend API is unavailable (error state)
- [ ] Verify responsive layout at different viewport sizes
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)

Some files were not shown because too many files have changed in this diff Show More