save checkpoint
This commit is contained in:
50
docs/features/checked/web/a-b-deploy-diff-panel.md
Normal file
50
docs/features/checked/web/a-b-deploy-diff-panel.md
Normal file
@@ -0,0 +1,50 @@
|
||||
# A/B Deploy Diff Panel
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Deploy diff UI provides deterministic A/B SBOM comparison with policy-hit context, loading/error states, and inline release action controls.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/deploy-diff/`
|
||||
- **Route module**: `src/Web/StellaOps.Web/src/app/features/deploy-diff/deploy-diff.routes.ts`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/deploy-diff/pages/deploy-diff.page.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/deploy-diff/components/deploy-diff-panel/deploy-diff-panel.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/deploy-diff/services/deploy-diff.service.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/deploy_diff/deploy-diff-panel.component.spec.ts`
|
||||
|
||||
## Follow-up Notes
|
||||
- Tier 2 verification is integration-harness based because deploy-diff route wiring exists in feature module but is not mounted in the primary shell route map.
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/a-b-deploy-diff-panel/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/a-b-deploy-diff-panel/run-003/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/a-b-deploy-diff-panel/run-004/tier2-e2e-check.json.
|
||||
|
||||
41
docs/features/checked/web/agent-fleet-dashboard-ui.md
Normal file
41
docs/features/checked/web/agent-fleet-dashboard-ui.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# Agent Fleet Dashboard UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Agent fleet dashboard is available at `/ops/agents` with realtime status surfaces, KPI strip, filtering, and onboarding navigation flow.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/agents/`
|
||||
- **Routes**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/agents/agents.routes.ts`
|
||||
- Mounted in shell via `src/Web/StellaOps.Web/src/app/app.routes.ts` (`/ops/agents`)
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/agents/agent-fleet-dashboard.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/agents/agent-onboard-wizard.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/agents/services/agent.store.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/agent_fleet/agent-fleet-dashboard.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/agent-fleet-dashboard-ui/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/agent-fleet-dashboard-ui/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
# AI Autofix Button with Remediation Plan Preview and PR Tracker
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Advisory AI remediation workflow is implemented with autofix trigger controls, remediation plan preview surfaces, and PR status/action tracking components.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/advisory-ai/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/autofix-button.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/remediation-plan-preview.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/pr-tracker.component.ts`
|
||||
- **Supporting model contract**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/advisory-ai.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/advisory_ai_autofix/autofix-button.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/advisory_ai_autofix/remediation-plan-preview.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/advisory_ai_autofix/pr-tracker.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/ai-autofix-button-with-remediation-plan-preview-and-pr-tracker/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-autofix-button-with-remediation-plan-preview-and-pr-tracker/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-autofix-button-with-remediation-plan-preview-and-pr-tracker/run-004/tier2-e2e-check.json.
|
||||
|
||||
50
docs/features/checked/web/ai-chat-panel-ui.md
Normal file
50
docs/features/checked/web/ai-chat-panel-ui.md
Normal file
@@ -0,0 +1,50 @@
|
||||
# AI Chat Panel UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Advisory AI chat surfaces are implemented with role-aware message rendering, object-link citations, grounding score display, and action-button interactions.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/advisory-ai/chat/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/chat/chat.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/chat/chat-message.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/chat/chat.service.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/chat/object-link-chip.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/advisory_ai_chat/chat-message.component.spec.ts`
|
||||
|
||||
## Follow-up Notes
|
||||
- Tier 2 verification is component-level integration harness evidence because advisory chat panels are composed inside larger triage workspaces rather than a dedicated standalone route.
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/ai-chat-panel-ui/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-chat-panel-ui/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-chat-panel-ui/run-004/tier2-e2e-check.json.
|
||||
|
||||
49
docs/features/checked/web/ai-chip-components.md
Normal file
49
docs/features/checked/web/ai-chip-components.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# AI Chip Components (Progressive Disclosure UX)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Shared AI chip component library is implemented with deterministic variant styling, guarded interactions, and three-line summary/progressive disclosure behavior for findings and triage surfaces.
|
||||
|
||||
## Implementation Details
|
||||
- **Shared component directory**: `src/Web/StellaOps.Web/src/app/shared/components/ai/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ai-chip.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ai-summary.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ai-authority-badge.component.ts`
|
||||
- **Integration point**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/findings/ai-chip-row.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/ai_chip_components/ai-chip.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/ai_chip_components/ai-summary.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/ai-chip-components/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-chip-components/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-chip-components/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
# AI Preferences and Verbosity Settings UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
AI preferences UI is implemented via dedicated settings component with verbosity controls, surface toggles, team notification options, and save/reset behavior.
|
||||
|
||||
## Implementation Details
|
||||
- **Settings component**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/settings/ai-preferences.component.ts`
|
||||
- **Related preference/toggle support**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/advisory-ai/plain-language-toggle.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/services/plain-language.service.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/settings_ai_preferences/ai-preferences.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/ai-preferences-and-verbosity-settings-ui/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-preferences-and-verbosity-settings-ui/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-preferences-and-verbosity-settings-ui/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
# AI Recommendation Panel for Triage
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Triage AI recommendation panel is implemented with cached recommendation hydration, analysis request flow, reachability/VEX suggestion surfaces, and action/question interactions.
|
||||
|
||||
## Implementation Details
|
||||
- **Core component**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/ai-recommendation-panel/ai-recommendation-panel.component.ts`
|
||||
- **Service integration**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts`
|
||||
- **Workspace integration anchor**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/triage-workspace.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/triage_ai_recommendation/ai-recommendation-panel.component.spec.ts`
|
||||
|
||||
## Follow-up Notes
|
||||
- Tier 2 verification is component-level integration harness evidence because AI recommendation surfaces are embedded inside triage workspace compositions.
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/ai-recommendation-panel-for-triage/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-recommendation-panel-for-triage/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-recommendation-panel-for-triage/run-004/tier2-e2e-check.json.
|
||||
|
||||
46
docs/features/checked/web/ai-summary-3-line-component.md
Normal file
46
docs/features/checked/web/ai-summary-3-line-component.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# AI Summary 3-Line Component
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Three-line AI summary component provides deterministic What/Why/Next content and progressive disclosure behavior for findings and triage UI contexts.
|
||||
|
||||
## Implementation Details
|
||||
- **Core component**:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ai-summary.component.ts`
|
||||
- **Supporting badge + integration point**:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ai-authority-badge.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/findings/ai-chip-row.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/ai_chip_components/ai-summary.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/ai-summary-3-line-component/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-summary-3-line-component/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/ai-summary-3-line-component/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
# AOC Verification Action with CLI Parity Guidance
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
AOC verification workflow is implemented with tenant-scoped verification action controls, CLI parity guidance, and violation drilldown views that support by-violation and by-document inspection with raw-document actions.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/aoc/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/aoc/verify-action.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/aoc/verify-action.component.html`
|
||||
- `src/Web/StellaOps.Web/src/app/features/aoc/violation-drilldown.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/aoc/violation-drilldown.component.html`
|
||||
- **Supporting contracts**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/aoc.client.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/aoc.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/aoc_verification/verify-action.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/aoc_verification/violation-drilldown.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/aoc-verification-action-with-cli-parity-guidance/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/aoc-verification-action-with-cli-parity-guidance/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/aoc-verification-action-with-cli-parity-guidance/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
# Approval Detail with Reachability Witness Panel
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Approval detail workflow renders a split-pane decision surface with security diff context and reachability witness panel interactions for finding-level evidence inspection.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/approvals/`
|
||||
- **Routes**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/approvals/approvals.routes.ts`
|
||||
- Mounted via `src/Web/StellaOps.Web/src/app/app.routes.ts` at `/approvals/:id`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/approvals/approval-detail-page.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/approvals/modals/request-exception-modal.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/approvals/approval-detail-page.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/approval-detail-with-reachability-witness-panel/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/approval-detail-with-reachability-witness-panel/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/approval-detail-with-reachability-witness-panel/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
# Approvals Inbox with Diff-First Presentation
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Approvals inbox provides diff-first promotion cards with what-changed summaries, gate state badges, and direct actions for details and evidence follow-up.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/approvals/`
|
||||
- **Route**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/approvals/approvals.routes.ts`
|
||||
- Mounted via `src/Web/StellaOps.Web/src/app/app.routes.ts` at `/approvals`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/approvals/approvals-inbox.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/approvals/approvals-inbox.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/approvals-inbox-with-diff-first-presentation/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/approvals-inbox-with-diff-first-presentation/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/approvals-inbox-with-diff-first-presentation/run-004/tier2-e2e-check.json.
|
||||
|
||||
49
docs/features/checked/web/attested-score-ui.md
Normal file
49
docs/features/checked/web/attested-score-ui.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Attested Score UI (Reduction Profile, Hard-Fail, Proof Anchors)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Attested score UI surfaces are implemented for reduction-profile metadata, hard-fail signaling, and proof-anchor details with dedicated anchored/hard-fail badge treatments.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/score/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/score/score-badge.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/score/score-badge.component.html`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/score/score-breakdown-popover.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/score/score-breakdown-popover.component.html`
|
||||
- **Supporting model contract**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/scoring.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/attested_score/score-badge.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/attested_score/score-breakdown-popover.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/attested-score-ui/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/attested-score-ui/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/attested-score-ui/run-004/tier2-e2e-check.json.
|
||||
|
||||
50
docs/features/checked/web/audit-bundle-create-modal.md
Normal file
50
docs/features/checked/web/audit-bundle-create-modal.md
Normal file
@@ -0,0 +1,50 @@
|
||||
# Audit Bundle Create Modal (3-Step Wizard)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Audit bundle creation flow is implemented with deterministic wizard progression for subject selection, evidence contents, review, and completion tracking.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
|
||||
- **Routes**:
|
||||
- `src/Web/StellaOps.Web/src/app/app.routes.ts` mounted at `/triage/audit-bundles/new`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/triage-audit-bundle-new.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/triage-audit-bundle-new.component.html`
|
||||
- `src/Web/StellaOps.Web/src/app/features/evidence/modals/audit-bundle-create-modal.component.ts`
|
||||
- **Supporting contracts**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/audit-bundles.client.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/audit-bundles.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/audit_bundle/triage-audit-bundle-new.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/audit-bundle-create-modal/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/audit-bundle-create-modal/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/audit-bundle-create-modal/run-004/tier2-e2e-check.json.
|
||||
|
||||
49
docs/features/checked/web/audit-bundle-export.md
Normal file
49
docs/features/checked/web/audit-bundle-export.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Audit Bundle Export
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Audit bundle export surfaces are implemented with listing, recency ordering, and download actions for completed bundle jobs.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/`
|
||||
- **Routes**:
|
||||
- `src/Web/StellaOps.Web/src/app/app.routes.ts` mounted at `/triage/audit-bundles`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/triage-audit-bundles.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/triage-audit-bundles.component.html`
|
||||
- **Supporting contracts**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/audit-bundles.client.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/audit-bundles.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/audit_bundle/triage-audit-bundles.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/audit-bundle-export/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/audit-bundle-export/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/audit-bundle-export/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
# Audit Trail "Why am I seeing this?" (Reason Capsule)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Inline per-finding reason capsule that explains why a verdict is shown, including policy/rule provenance and deterministic input references.
|
||||
|
||||
## Implementation Details
|
||||
- **Reason capsule component**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/reason-capsule/reason-capsule.component.ts`
|
||||
- **Reason data client (`/api/audit/reasons/:verdictId`) with deterministic fallback**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/audit-reasons.client.ts`
|
||||
- **Mounted in findings and triage rows**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/findings/findings-list.component.html`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/triage-list/triage-list.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/audit_reason_capsule/reason-capsule.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/audit_reason_capsule/audit-reasons.client.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/audit_reason_capsule/findings-list.reason-capsule.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/audit-trail-why-am-i-seeing-this/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/audit-trail-why-am-i-seeing-this/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/audit-trail-why-am-i-seeing-this/run-004/tier2-e2e-check.json.
|
||||
|
||||
48
docs/features/checked/web/auditor-workspace.md
Normal file
48
docs/features/checked/web/auditor-workspace.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# Auditor Workspace (Compliance-Focused Triage View)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Auditor workspace is implemented with evidence ribbon integration, compliance review summary, export controls, and signed quiet-triage actions.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/workspaces/auditor/`
|
||||
- **Routes**:
|
||||
- `src/Web/StellaOps.Web/src/app/app.routes.ts` mounted at `/workspace/audit`
|
||||
- `src/Web/StellaOps.Web/src/app/features/workspaces/auditor/auditor-workspace.routes.ts` child path `:artifactDigest`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/workspaces/auditor/components/auditor-workspace/auditor-workspace.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/workspaces/auditor/services/auditor-workspace.service.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/workspaces/auditor/models/auditor-workspace.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/auditor_workspace/auditor-workspace.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/auditor-workspace/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/auditor-workspace/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/auditor-workspace/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
# B2R2 LowUIR IR Lifting for Semantic Binary Analysis
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Binary-index UI surfaces are implemented for B2R2-driven semantic analysis operations, including lifter/cache observability and patch-coverage drilldown workflows.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/binary-index/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/binary-index/binary-index-ops.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/binary-index/patch-map.component.ts`
|
||||
- **Supporting contracts**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/binary-index-ops.client.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/patch-coverage.client.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/patch-coverage.models.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/binary_index/binary-index-ops.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/binary_index/patch-map.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/b2r2-lowuir-ir-lifting-for-semantic-binary-analysis/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/b2r2-lowuir-ir-lifting-for-semantic-binary-analysis/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/b2r2-lowuir-ir-lifting-for-semantic-binary-analysis/run-004/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
# Backport Resolution UI with Function Diff Viewer
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Backport-resolution surfaces are implemented with function-level diff rendering, resolution status chips, and evidence drawer integration for patch-vs-vulnerable comparison workflows.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/function-diff/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/function-diff/function-diff.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/resolution-chip/resolution-chip.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/evidence-drawer/evidence-drawer.component.ts`
|
||||
- **Integration surface**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/vulnerabilities/vulnerability-detail.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/backport_resolution/function-diff.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/backport-resolution-ui-with-function-diff-viewer/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-001)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/backport-resolution-ui-with-function-diff-viewer/run-001/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/backport-resolution-ui-with-function-diff-viewer/run-003/tier2-e2e-check.json.
|
||||
|
||||
38
docs/features/checked/web/binary-diff-panel-ui-component.md
Normal file
38
docs/features/checked/web/binary-diff-panel-ui-component.md
Normal file
@@ -0,0 +1,38 @@
|
||||
# Binary-Diff Panel UI Component
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Binary-diff panel is implemented with scope selection (file/section/function), entry drilldown, changed-only filtering, and DSSE export action wiring.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/binary-diff/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/binary-diff/binary-diff-panel.component.ts`
|
||||
- **Integration surface**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/evidence-panel/binary-diff-tab.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/binary_diff/binary-diff-panel.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/binary-diff-panel-ui-component/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/binary-diff-panel-ui-component/run-003/tier2-e2e-check.json.
|
||||
|
||||
40
docs/features/checked/web/binaryindex-ops-ui.md
Normal file
40
docs/features/checked/web/binaryindex-ops-ui.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# BinaryIndex Ops UI (Lifter Warmness, Bench, Cache Stats, Config View)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
BinaryIndex operations UI is implemented with tabbed health/benchmark/cache/config views plus fingerprint export and patch-map drilldown surfaces.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/binary-index/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/binary-index/binary-index-ops.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/binary-index/patch-map.component.ts`
|
||||
- **Supporting contracts**:
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/binary-index-ops.client.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/core/api/patch-coverage.client.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/binary_index/binary-index-ops.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/binary_index/patch-map.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/binaryindex-ops-ui/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/binaryindex-ops-ui/run-003/tier2-e2e-check.json.
|
||||
|
||||
37
docs/features/checked/web/can-i-ship-case-header.md
Normal file
37
docs/features/checked/web/can-i-ship-case-header.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# "Can I Ship?" Case Header (Verdict Display)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Case header verdict display is implemented with ship/block/exception badges, finding counters, baseline delta context, and attestation/snapshot interaction controls.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/components/case-header/`
|
||||
- **Core files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.html`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/case-header/case-header.component.scss`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/case_header/case-header.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/can-i-ship-case-header/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/can-i-ship-case-header/run-003/tier2-e2e-check.json.
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
# Causal Timeline with Critical Path and Event Detail
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Full-featured causal timeline view with lane-based event visualization (D3.js, one lane per service), critical path highlighting, event detail panel, evidence links, timeline export, filtering, HLC range picker, and forensic export button. Supports correlation ID-based navigation for tracing release pipeline events. (Merged with Timeline UI Component from Phase 2 (none) section.)
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/timeline/`
|
||||
- **Routes**: `timeline.routes.ts`
|
||||
- **Components**:
|
||||
- `causal-lanes` (`src/Web/StellaOps.Web/src/app/features/timeline/components/causal-lanes/causal-lanes.component.ts`)
|
||||
- `critical-path` (`src/Web/StellaOps.Web/src/app/features/timeline/components/critical-path/critical-path.component.ts`)
|
||||
- `event-detail-panel` (`src/Web/StellaOps.Web/src/app/features/timeline/components/event-detail-panel/event-detail-panel.component.ts`)
|
||||
- `evidence-links` (`src/Web/StellaOps.Web/src/app/features/timeline/components/evidence-links/evidence-links.component.ts`)
|
||||
- `export-button` (`src/Web/StellaOps.Web/src/app/features/timeline/components/export-button/export-button.component.ts`)
|
||||
- `timeline-filter` (`src/Web/StellaOps.Web/src/app/features/timeline/components/timeline-filter/timeline-filter.component.ts`)
|
||||
- `timeline-page` (`src/Web/StellaOps.Web/src/app/features/timeline/pages/timeline-page/timeline-page.component.ts`)
|
||||
- **Services**:
|
||||
- `timeline` (`src/Web/StellaOps.Web/src/app/features/timeline/services/timeline.service.ts`)
|
||||
- **Models**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/timeline/models/timeline.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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/causal-timeline-with-critical-path-and-event-detail/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
39
docs/features/checked/web/cgs-badge-component.md
Normal file
39
docs/features/checked/web/cgs-badge-component.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# CGS Badge Component (Copy and Replay Hash)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
UI badge component displaying Canonical Graph Signature (CGS) hash with one-click copy-to-clipboard and replay verification trigger. Shows truncated hash with tooltip for full value and confidence score indicator.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/badge/`
|
||||
- **Components**:
|
||||
- `badge` (`src/Web/StellaOps.Web/src/app/shared/components/badge/badge.component.ts`)
|
||||
- **Source**: SPRINT_20251229_001_003_FE_lineage_graph.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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/cgs-badge-component/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Confidence Breakdown Visualization (Factor Bar Chart)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Visual bar chart breakdown showing how each evidence factor (SBOM, VEX, reachability, binary analysis, attestation) contributes to the overall confidence score. Includes per-factor chip components with drill-down capability.
|
||||
|
||||
## 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**: SPRINT_20251229_001_004_FE_proof_studio.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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/confidence-breakdown-visualization/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
47
docs/features/checked/web/configuration-pane.md
Normal file
47
docs/features/checked/web/configuration-pane.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# Configuration Pane (Integration Status Dashboard)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Console-level configuration pane showing integration status grouped by sections with connection health, detail views per integration, and a state management service for tracking configuration changes.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/configuration-pane/`
|
||||
- **Routes**: `configuration-pane.routes.ts`
|
||||
- **Components**:
|
||||
- `configuration-pane` (`src/Web/StellaOps.Web/src/app/features/configuration-pane/components/configuration-pane.component.ts`)
|
||||
- `integration-detail` (`src/Web/StellaOps.Web/src/app/features/configuration-pane/components/integration-detail.component.ts`)
|
||||
- `integration-section` (`src/Web/StellaOps.Web/src/app/features/configuration-pane/components/integration-section.component.ts`)
|
||||
- **Services**:
|
||||
- `configuration-pane-api` (`src/Web/StellaOps.Web/src/app/features/configuration-pane/services/configuration-pane-api.service.ts`)
|
||||
- `configuration-pane-state` (`src/Web/StellaOps.Web/src/app/features/configuration-pane/services/configuration-pane-state.service.ts`)
|
||||
- **Models**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/configuration-pane/models/configuration-pane.models.ts`
|
||||
- **Source**: Feature matrix scan
|
||||
|
||||
## E2E Test Plan
|
||||
- **Setup**:
|
||||
- [ ] Log in with a user that has appropriate permissions
|
||||
- [ ] Navigate to `/console/configuration`
|
||||
- [ ] 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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/configuration-pane/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
48
docs/features/checked/web/context-status-chips.md
Normal file
48
docs/features/checked/web/context-status-chips.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# Context Status Chips (Offline/Feed/Policy/Evidence)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Topbar context chips showing offline posture, feed snapshot freshness, policy baseline, and evidence mode status.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/layout/context-chips/`
|
||||
- **Components**:
|
||||
- `context-chips` (`src/Web/StellaOps.Web/src/app/layout/context-chips/context-chips.component.ts`)
|
||||
- `evidence-mode-chip` (`src/Web/StellaOps.Web/src/app/layout/context-chips/evidence-mode-chip.component.ts`)
|
||||
- `feed-snapshot-chip` (`src/Web/StellaOps.Web/src/app/layout/context-chips/feed-snapshot-chip.component.ts`)
|
||||
- `offline-status-chip` (`src/Web/StellaOps.Web/src/app/layout/context-chips/offline-status-chip.component.ts`)
|
||||
- `policy-baseline-chip` (`src/Web/StellaOps.Web/src/app/layout/context-chips/policy-baseline-chip.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 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)
|
||||
|
||||
## Verification
|
||||
- Verified on 2026-02-10 via QA run `run-002`.
|
||||
- Evidence: `docs/qa/feature-checks/runs/web/context-status-chips/run-002/`.
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/context-status-chips/run-003/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
45
docs/features/checked/web/contextual-command-bar.md
Normal file
45
docs/features/checked/web/contextual-command-bar.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Contextual Command Bar ("Ask Stella")
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Scoped command bar that auto-scopes to current context with suggested prompts and supports contextual/freeform Ask Stella queries.
|
||||
|
||||
## Verification Notes
|
||||
Previously marked as dropped in planning metadata; QA verification confirmed implementation. The following components exist:
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ask-stella-button.component.ts` -- floating button to open the panel
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/ai/ask-stella-panel.component.ts` -- contextual panel with suggested prompts
|
||||
- E2E tests at `src/Web/StellaOps.Web/src/app/shared/components/ai/__tests__/ask-stella.e2e.spec.ts` verify:
|
||||
- Button visibility and panel toggle
|
||||
- Context-scoped suggested prompt chips (auto-populated based on current page context)
|
||||
- Context awareness chips showing current page/component context
|
||||
- Prompt submission with loading state and response display
|
||||
|
||||
## Implementation Details
|
||||
- Button component: `ask-stella-button.component.ts`
|
||||
- Panel component: `ask-stella-panel.component.ts` with `.ask-stella-panel__prompt-chip`, `.ask-stella-panel__context-chip`, `.ask-stella-panel__response` selectors
|
||||
- AI assist panel: `ai-assist-panel.component.ts`
|
||||
- LLM unavailable fallback: `llm-unavailable.component.ts`
|
||||
- E2E test: `ask-stella.e2e.spec.ts` (5+ test cases covering button, context, prompts, responses)
|
||||
|
||||
## E2E Test Plan
|
||||
- Already has E2E tests covering core functionality
|
||||
- Additional coverage: verify context scoping changes when navigating between pages
|
||||
|
||||
## Source
|
||||
- Feature matrix scan
|
||||
|
||||
## Notes
|
||||
- Module: Web
|
||||
- Modules referenced: `src/Web`
|
||||
- Feature reclassified from historical NOT_FOUND metadata and verified in run-001.
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/contextual-command-bar/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
40
docs/features/checked/web/control-plane-dashboard.md
Normal file
40
docs/features/checked/web/control-plane-dashboard.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Control Plane Dashboard (Release-Centric Landing Page)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
New landing page replacing security-centric home with release control plane view including environment pipeline visualization, action inbox, drift & risk changes, and pending promotions table.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/control-plane/`
|
||||
- **Routes**: `control-plane.routes.ts`
|
||||
- **Components**:
|
||||
- `control-plane-dashboard` (`src/Web/StellaOps.Web/src/app/features/control-plane/control-plane-dashboard.component.ts`)
|
||||
- **Source**: SPRINT_20260118_003_FE_control_plane_home.md
|
||||
|
||||
## E2E Test Plan
|
||||
- **Setup**:
|
||||
- [ ] Log in with a user that has appropriate permissions
|
||||
- [ ] Navigate to `/`
|
||||
- [ ] 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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/control-plane-dashboard/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
# CycloneDX Evidence Panel with Pedigree Timeline
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Component detail page with CycloneDX 1.7 evidence panel showing identity evidence with detection methods, occurrence file paths, license evidence with acknowledgement status, and copyright information. Includes a D3.js horizontal pedigree timeline visualization showing ancestor-variant-current component lineage, a patch list viewer with diff rendering, and commit info display.
|
||||
|
||||
## 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**: 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 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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/cyclonedx-evidence-panel-with-pedigree-timeline/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
42
docs/features/checked/web/dead-letter-queue-management-ui.md
Normal file
42
docs/features/checked/web/dead-letter-queue-management-ui.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# Dead-Letter Queue Management UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Dead-letter queue browser with message inspection, replay workflows (single/batch/all), error diagnostics panel, and bulk actions for queue management.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/deadletter/`
|
||||
- **Routes**: `deadletter.routes.ts`
|
||||
- **Components**:
|
||||
- `deadletter-dashboard` (`src/Web/StellaOps.Web/src/app/features/deadletter/deadletter-dashboard.component.ts`)
|
||||
- `deadletter-entry-detail` (`src/Web/StellaOps.Web/src/app/features/deadletter/deadletter-entry-detail.component.ts`)
|
||||
- `deadletter-queue` (`src/Web/StellaOps.Web/src/app/features/deadletter/deadletter-queue.component.ts`)
|
||||
- **Source**: SPRINT_20251229_030_FE_deadletter_management_ui
|
||||
|
||||
## E2E Test Plan
|
||||
- **Setup**:
|
||||
- [ ] Log in with a user that has appropriate permissions
|
||||
- [ ] Navigate to `/ops/orchestrator/dead-letter`
|
||||
- [ ] 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)
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: docs/qa/feature-checks/runs/web/dead-letter-queue-management-ui/run-001/
|
||||
- Tier results:
|
||||
- tier0-source-check.json: pass
|
||||
- tier1-build-check.json: pass
|
||||
- tier2-e2e-check.json: pass
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
# Decision Drawer for VEX Decisions
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Enhanced decision drawer component for making VEX triage decisions from the evidence view.
|
||||
|
||||
## 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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/decision-drawer-for-vex-decisions/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
57
docs/features/checked/web/delta-summary-strip.md
Normal file
57
docs/features/checked/web/delta-summary-strip.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# Delta Summary Strip
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Delta summary strip component shows before/after comparison statistics in the compare view header.
|
||||
|
||||
## 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/delta-summary-strip/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
57
docs/features/checked/web/delta-table.md
Normal file
57
docs/features/checked/web/delta-table.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# Delta Table (Risk Decay per Release)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Side-by-side diff component in the risk feature comparing before/after states per release, integrated into the risk dashboard.
|
||||
|
||||
## 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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/delta-table/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
57
docs/features/checked/web/delta-verdict-compare-view-ui.md
Normal file
57
docs/features/checked/web/delta-verdict-compare-view-ui.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# Delta Verdict / Compare View UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Full compare/delta view UI with dedicated feature area including components, services, and implementation summary. Deploy-diff feature for release-level comparison. Verdicts feature for verdict display and management.
|
||||
|
||||
## 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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/delta-verdict-compare-view-ui/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
@@ -0,0 +1,39 @@
|
||||
# Deployment Detail with Workflow DAG Visualization
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Deployment detail page with workflow DAG visualization showing deployment step execution, artifact promotion flow, and gate evaluation results.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/deployments/`
|
||||
- **Routes**: `deployments.routes.ts`
|
||||
- **Components**:
|
||||
- `deployment-detail-page` (`src/Web/StellaOps.Web/src/app/features/deployments/deployment-detail-page.component.ts`)
|
||||
- `deployments-list-page` (`src/Web/StellaOps.Web/src/app/features/deployments/deployments-list-page.component.ts`)
|
||||
- **Source**: SPRINT_20260118_008_FE_environments_deployments.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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/deployment-detail-with-workflow-dag-visualization/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
39
docs/features/checked/web/deployment-monitoring-ui.md
Normal file
39
docs/features/checked/web/deployment-monitoring-ui.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# Deployment Monitoring UI (Live Logs, Rollback)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Real-time deployment monitoring with per-target progress tracking, live log streaming, deployment actions (pause/resume/cancel), and rollback capabilities.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/deployments/`
|
||||
- **Routes**: `deployments.routes.ts`
|
||||
- **Components**:
|
||||
- `deployment-detail-page` (`src/Web/StellaOps.Web/src/app/features/deployments/deployment-detail-page.component.ts`)
|
||||
- `deployments-list-page` (`src/Web/StellaOps.Web/src/app/features/deployments/deployments-list-page.component.ts`)
|
||||
- **Source**: SPRINT_20260110_111_006_FE_deployment_monitoring_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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/deployment-monitoring-ui/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
40
docs/features/checked/web/determinization-config-pane-ui.md
Normal file
40
docs/features/checked/web/determinization-config-pane-ui.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Determinization Config Pane UI
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Dedicated settings pane for configuring determinization parameters (reanalysis interval, confidence thresholds, auto-promote rules) with form validation and live preview of policy effects on grey-queue items.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/determinization/`
|
||||
- **Components**:
|
||||
- `decay-progress` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/decay-progress/decay-progress.component.ts`)
|
||||
- `guardrails-badge` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/guardrails-badge/guardrails-badge.component.ts`)
|
||||
- `observation-state-chip` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/observation-state-chip/observation-state-chip.component.ts`)
|
||||
- `uncertainty-indicator` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/uncertainty-indicator/uncertainty-indicator.component.ts`)
|
||||
- **Source**: SPRINT_20260112_013_FE_determinization_config_pane.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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/determinization-config-pane-ui/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
40
docs/features/checked/web/determinization-ui-components.md
Normal file
40
docs/features/checked/web/determinization-ui-components.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Determinization UI Components (Observation State Chip + Uncertainty Indicator)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Angular UI components for CVE observation state management: "Unknown (auto-tracking)" chip with next review ETA, uncertainty tier visualization, guardrails status/monitoring badges, decay progress indicator, observation details panel, and observation review queue for pending items.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/components/determinization/`
|
||||
- **Components**:
|
||||
- `decay-progress` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/decay-progress/decay-progress.component.ts`)
|
||||
- `guardrails-badge` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/guardrails-badge/guardrails-badge.component.ts`)
|
||||
- `observation-state-chip` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/observation-state-chip/observation-state-chip.component.ts`)
|
||||
- `uncertainty-indicator` (`src/Web/StellaOps.Web/src/app/shared/components/determinization/uncertainty-indicator/uncertainty-indicator.component.ts`)
|
||||
- **Source**: SPRINT_20260106_001_005_FE_determinization_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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/determinization-ui-components/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
42
docs/features/checked/web/developer-workspace.md
Normal file
42
docs/features/checked/web/developer-workspace.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# Developer Workspace (Role-Based Findings View)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Developer-focused workspace assembling Evidence Ribbon, Quick-Verify CTA with streaming progress, a sortable findings rail with severity/reachability/runtime indicators, and action stubs for creating GitHub issues or Jira tickets from findings.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/workspaces/developer/`
|
||||
- **Routes**: `developer-workspace.routes.ts`
|
||||
- **Components**:
|
||||
- `developer-workspace` (`src/Web/StellaOps.Web/src/app/features/workspaces/developer/components/developer-workspace/developer-workspace.component.ts`)
|
||||
- **Services**:
|
||||
- `developer-workspace` (`src/Web/StellaOps.Web/src/app/features/workspaces/developer/services/developer-workspace.service.ts`)
|
||||
- **Models**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/workspaces/developer/models/developer-workspace.models.ts`
|
||||
- **Source**: Feature matrix scan
|
||||
|
||||
## E2E Test Plan
|
||||
- **Setup**:
|
||||
- [ ] Log in with a user that has appropriate permissions
|
||||
- [ ] Navigate to `/workspace/dev`
|
||||
- [ ] 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/developer-workspace/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
46
docs/features/checked/web/display-preferences-service.md
Normal file
46
docs/features/checked/web/display-preferences-service.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Display Preferences Service (User Setting Toggles)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Configurable display settings (showRuntimeOverlays, enableTraceExport, showRiskLine, showSignedOverrideIndicators, graph settings) persisted to localStorage with auto-sync.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/triage/services/`
|
||||
- **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`)
|
||||
- **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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/display-preferences-service/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
43
docs/features/checked/web/domain-widget-library.md
Normal file
43
docs/features/checked/web/domain-widget-library.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# Domain Widget Library (DigestChip, GateBadge, ReachabilityStateChip, WitnessPathPreview, EvidenceLink, GateSummaryPanel)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Six reusable domain-specific widgets: DigestChip (truncated digest with copy), GateBadge (gate level display), ReachabilityStateChip (R0-R3 state), WitnessPathPreview (call path snippet), EvidenceLink (attestation link), GateSummaryPanel (gate overview).
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/shared/domain/`
|
||||
- **Components**:
|
||||
- `digest-chip` (`src/Web/StellaOps.Web/src/app/shared/domain/digest-chip/digest-chip.component.ts`)
|
||||
- `evidence-link` (`src/Web/StellaOps.Web/src/app/shared/domain/evidence-link/evidence-link.component.ts`)
|
||||
- `gate-badge` (`src/Web/StellaOps.Web/src/app/shared/domain/gate-badge/gate-badge.component.ts`)
|
||||
- `gate-summary-panel` (`src/Web/StellaOps.Web/src/app/shared/domain/gate-summary-panel/gate-summary-panel.component.ts`)
|
||||
- `reachability-state-chip` (`src/Web/StellaOps.Web/src/app/shared/domain/reachability-state-chip/reachability-state-chip.component.ts`)
|
||||
- `witness-path-preview` (`src/Web/StellaOps.Web/src/app/shared/domain/witness-path-preview/witness-path-preview.component.ts`)
|
||||
- `witness-status-chip` (`src/Web/StellaOps.Web/src/app/shared/domain/witness-status-chip/witness-status-chip.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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/domain-widget-library/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
@@ -0,0 +1,43 @@
|
||||
# Entropy Analysis Panel and Policy Banner
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Shared UI components for displaying entropy analysis results on container images. The Entropy Panel shows layer-level entropy scores, high-entropy file details, and detector hints. The Entropy Policy Banner displays policy thresholds (warn/block) with the current entropy score and mitigation steps.
|
||||
|
||||
## 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**: Feature matrix scan
|
||||
|
||||
## 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 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)
|
||||
|
||||
## Verification
|
||||
- Run: `docs/qa/feature-checks/runs/web/entropy-analysis-panel-and-policy-banner/run-001/`
|
||||
- Tier 0 (source): pass (`tier0-source-check.json`)
|
||||
- Tier 1 (build/tests): pass (`tier1-build-check.json`)
|
||||
- Tier 2 (behavior): pass (`tier2-e2e-check.json`)
|
||||
- Verified on (UTC): 2026-02-10
|
||||
37
docs/features/checked/web/global-search-component.md
Normal file
37
docs/features/checked/web/global-search-component.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# Global Search Component (Cmd+K)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Command-palette-style global search (Cmd+K / Ctrl+K) for quick navigation to releases, findings, environments, and settings across the entire application.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/layout/global-search/`
|
||||
- **Mounted in top bar**: `src/Web/StellaOps.Web/src/app/layout/app-topbar/app-topbar.component.ts`
|
||||
- **Components**:
|
||||
- `global-search` (`src/Web/StellaOps.Web/src/app/layout/global-search/global-search.component.ts`)
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/global_search/global-search.component.spec.ts`
|
||||
- **Source**: SPRINT_20260118_001_FE_shell_navigation_redesign.md
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/global-search-component/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/global-search-component/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
46
docs/features/checked/web/left-rail-navigation-shell.md
Normal file
46
docs/features/checked/web/left-rail-navigation-shell.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Left Rail Navigation Shell
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
CSS Grid-based application shell with persistent left sidebar navigation (7 nav sections), replacing the previous mega-menu navigation pattern.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/layout/app-sidebar/`
|
||||
- **Components**:
|
||||
- `app-sidebar` (`src/Web/StellaOps.Web/src/app/layout/app-sidebar/app-sidebar.component.ts`)
|
||||
- `sidebar-nav-group` (`src/Web/StellaOps.Web/src/app/layout/app-sidebar/sidebar-nav-group.component.ts`)
|
||||
- `sidebar-nav-item` (`src/Web/StellaOps.Web/src/app/layout/app-sidebar/sidebar-nav-item.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)
|
||||
|
||||
## Verification
|
||||
- Verified on 2026-02-10 via QA run `run-002`.
|
||||
- Evidence: `docs/qa/feature-checks/runs/web/left-rail-navigation-shell/run-002/`.
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/left-rail-navigation-shell/run-003/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
40
docs/features/checked/web/pack-registry-browser.md
Normal file
40
docs/features/checked/web/pack-registry-browser.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Pack Registry Browser
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
TaskRunner pack discovery and management UI with compatibility-gated actions, DSSE signature state display, capability filtering, and version history drill-down.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/pack-registry/`
|
||||
- **Route**: `/ops/packs` via `pack-registry.routes.ts`
|
||||
- **Component**:
|
||||
- `pack-registry-browser` (`src/Web/StellaOps.Web/src/app/features/pack-registry/pack-registry-browser.component.ts`)
|
||||
- **Service/model wiring**:
|
||||
- `pack-registry-browser.service` (`src/Web/StellaOps.Web/src/app/features/pack-registry/services/pack-registry-browser.service.ts`)
|
||||
- `pack-registry-browser.models` (`src/Web/StellaOps.Web/src/app/features/pack-registry/models/pack-registry-browser.models.ts`)
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/pack_registry_browser/pack-registry-browser.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/pack_registry_browser/pack-registry-browser.service.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/pack-registry-browser/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/pack-registry-browser/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
52
docs/features/checked/web/pipeline-run-centric-view.md
Normal file
52
docs/features/checked/web/pipeline-run-centric-view.md
Normal file
@@ -0,0 +1,52 @@
|
||||
# Pipeline/Run-Centric View
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Pipeline runs list and detail routes provide a run-centric view across stage progression, approvals, evidence, and deployment outcomes.
|
||||
|
||||
## What's Implemented
|
||||
- **Existing 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`)
|
||||
- **Existing routes**: `approvals.routes.ts`, `dashboard.routes.ts`, `deployments.routes.ts`, `environments.routes.ts`, `evidence.routes.ts`, `releases.routes.ts`, `workflows.routes.ts`
|
||||
|
||||
## 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)
|
||||
|
||||
## Verification
|
||||
- Verified on 2026-02-10 via QA run `run-002`.
|
||||
- Evidence: `docs/qa/feature-checks/runs/web/pipeline-run-centric-view/run-002/`.
|
||||
|
||||
|
||||
## Recheck (run-003)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/pipeline-run-centric-view/run-003/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
51
docs/features/checked/web/quiet-by-default-triage-ux.md
Normal file
51
docs/features/checked/web/quiet-by-default-triage-ux.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# Quiet-by-Default Triage UX (Lane Toggle + Provenance Breadcrumbs)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Triage UX implements Active/Parked/Review lanes, deterministic gating summaries, and provenance breadcrumb surfaces with keyboard shortcuts for rapid lane switching.
|
||||
|
||||
## Implementation Details
|
||||
- **Components**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/triage-lane-toggle/triage-lane-toggle.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/quiet-lane/quiet-lane-container.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/quiet-lane/parked-item-card.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/provenance-breadcrumb/provenance-breadcrumb.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/triage_quiet_lane/triage-lane-toggle.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/triage_quiet_lane/quiet-lane-container.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/triage_quiet_lane/parked-item-card.component.spec.ts`
|
||||
|
||||
## Follow-up Notes
|
||||
- Tier 2 evidence is component/integration harness-based because the quiet-lane surfaces are not fully mounted behind a stable route in the local shell.
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/quiet-by-default-triage-ux/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/quiet-by-default-triage-ux/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/quiet-by-default-triage-ux/run-004/tier2-e2e-check.json.
|
||||
|
||||
49
docs/features/checked/web/reachability-center-ui-view.md
Normal file
49
docs/features/checked/web/reachability-center-ui-view.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Reachability Center UI View
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Reachability Center view showing asset coverage, missing sensors, and stale reachability facts. Implemented with deterministic fixture data; pending official fixture bundle swap from Signals guild.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/reachability/`
|
||||
- **Route**: `/reachability`
|
||||
- **Components**:
|
||||
- `path-viewer` (`src/Web/StellaOps.Web/src/app/features/reachability/components/path-viewer/path-viewer.component.ts`)
|
||||
- `risk-drift-card` (`src/Web/StellaOps.Web/src/app/features/reachability/components/risk-drift-card/risk-drift-card.component.ts`)
|
||||
- `poe-drawer` (`src/Web/StellaOps.Web/src/app/features/reachability/poe-drawer.component.ts`)
|
||||
- `reachability-center` (`src/Web/StellaOps.Web/src/app/features/reachability/reachability-center.component.ts`)
|
||||
- `reachability-explain-widget` (`src/Web/StellaOps.Web/src/app/features/reachability/reachability-explain-widget.component.ts`)
|
||||
- `reachability-explain` (`src/Web/StellaOps.Web/src/app/features/reachability/reachability-explain.component.ts`)
|
||||
- `reachability-why-drawer` (`src/Web/StellaOps.Web/src/app/features/reachability/reachability-why-drawer.component.ts`)
|
||||
- `witness-page` (`src/Web/StellaOps.Web/src/app/features/reachability/witness-page.component.ts`)
|
||||
- **Service**:
|
||||
- `drift-api` (`src/Web/StellaOps.Web/src/app/features/reachability/services/drift-api.service.ts`)
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/reachability_center/reachability-center.component.spec.ts`
|
||||
|
||||
## Follow-up Notes
|
||||
- Fixture-source rendering remains intentional for deterministic offline verification.
|
||||
- Official Signals fixture bundle swap is still a separate enhancement track.
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/reachability-center-ui-view/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/reachability-center-ui-view/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
# SBOM Graph Reachability Overlay with Time Slider
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Graph explorer renders a deterministic reachability halo overlay with a lattice legend and snapshot time slider for temporal navigation.
|
||||
|
||||
## Implementation Details
|
||||
- **Route**: `/graph`
|
||||
- **Components**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/graph/graph-overlays.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/graph/graph-canvas.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/graph/graph-explorer.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/graph_reachability_overlay/graph-overlays.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/graph_reachability_overlay/graph-canvas.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/sbom-graph-reachability-overlay-with-time-slider/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/sbom-graph-reachability-overlay-with-time-slider/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
40
docs/features/checked/web/signals-runtime-dashboard.md
Normal file
40
docs/features/checked/web/signals-runtime-dashboard.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Signals & Runtime Dashboard
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Runtime signals dashboard showing per-host probe health and ingestion metrics for eBPF/ETW/dyld telemetry, including provider/status summaries and refresh interaction.
|
||||
|
||||
## Implementation Details
|
||||
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/signals/`
|
||||
- **Route**: `/ops/signals` via `signals.routes.ts`
|
||||
- **Component**:
|
||||
- `signals-runtime-dashboard` (`src/Web/StellaOps.Web/src/app/features/signals/signals-runtime-dashboard.component.ts`)
|
||||
- **Service/model wiring**:
|
||||
- `signals-runtime-dashboard.service` (`src/Web/StellaOps.Web/src/app/features/signals/services/signals-runtime-dashboard.service.ts`)
|
||||
- `signals-runtime-dashboard.models` (`src/Web/StellaOps.Web/src/app/features/signals/models/signals-runtime-dashboard.models.ts`)
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/signals_runtime_dashboard/signals-runtime-dashboard.component.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/signals_runtime_dashboard/signals-runtime-dashboard.service.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/signals-runtime-dashboard/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/signals-runtime-dashboard/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
49
docs/features/checked/web/vex-gate.md
Normal file
49
docs/features/checked/web/vex-gate.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# VEX Gate (Inline Gated Action with Evidence Tiers)
|
||||
|
||||
## Module
|
||||
Web
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
VEX gate behavior is implemented with deterministic tier-to-class mapping, blocked-action signaling, and inline evidence sheet rendering for gated promote paths.
|
||||
|
||||
## Implementation Details
|
||||
- **Core feature files**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/vex_gate/vex-gate-button.directive.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/vex_gate/vex-evidence-sheet.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/vex_gate/models/vex-gate.models.ts`
|
||||
- **Integrations**:
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/quiet-lane/quiet-lane-container.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/features/triage/components/quiet-lane/parked-item-card.component.ts`
|
||||
- **Focused tests**:
|
||||
- `src/Web/StellaOps.Web/src/tests/vex_gate/vex-gate-button.directive.spec.ts`
|
||||
- `src/Web/StellaOps.Web/src/tests/vex_gate/vex-evidence-sheet.component.spec.ts`
|
||||
|
||||
## Verification
|
||||
- Date: 2026-02-10
|
||||
- Run artifacts: `docs/qa/feature-checks/runs/web/vex-gate/run-001/`
|
||||
- Tier results:
|
||||
- `tier0-source-check.json`: pass
|
||||
- `tier1-build-check.json`: pass
|
||||
- `tier2-e2e-check.json`: pass
|
||||
|
||||
|
||||
|
||||
## Recheck (run-002)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/vex-gate/run-002/tier2-e2e-check.json.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Recheck (run-004)
|
||||
- Date (UTC): 2026-02-10
|
||||
- Status: VERIFIED (replayed)
|
||||
- Tier 1 evidence: Angular build passed and checked-web suite passed 145/145 across 47 files.
|
||||
- Tier 2 evidence: docs/qa/feature-checks/runs/web/vex-gate/run-004/tier2-e2e-check.json.
|
||||
|
||||
Reference in New Issue
Block a user