feat(ui): adopt evidence proof components on mounted flows [SPRINT-018]
Wire QuickVerifyDrawer, EvidenceChecklist, ProofChainViewer, and DsseEnvelopeViewer into evidence-export, triage, and release-orchestrator evidence-detail surfaces for richer proof verification workflows. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,95 @@
|
||||
# Sprint 20260308-018 - FE Orphan Evidence Proof Component Adoption
|
||||
|
||||
## Topic & Scope
|
||||
- Revive the dormant proof and verification widgets that still fit naturally inside already shipped Evidence, Triage, and Releases experiences.
|
||||
- Adopt `EvidenceChecklistComponent`, `QuickVerifyDrawerComponent`, `ProofChainViewerComponent`, and `DsseEnvelopeViewerComponent` on mounted evidence-investigation flows.
|
||||
- Explicit non-goal: do not create a second evidence product shell and do not reopen the already-corrected `EvidenceDrawerComponent` claim unless a fresh mounted-gap check proves a real missing integration.
|
||||
- Working directory: `src/Web/StellaOps.Web`.
|
||||
- Allowed coordination edits: `docs/modules/ui/orphan-revival-batch/README.md`, `docs/modules/ui/TASKS.md`, `docs/modules/ui/implementation_plan.md`, `docs/features/checked/web/`, `src/Web/StellaOps.Web/src/app/shared/components/evidence-checklist/`, `src/Web/StellaOps.Web/src/app/shared/components/quick-verify-drawer/`, `src/Web/StellaOps.Web/src/app/shared/components/proof-chain-viewer.component.ts`, `src/Web/StellaOps.Web/src/app/shared/components/dsse-envelope-viewer.component.ts`, `src/Web/StellaOps.Web/src/app/features/evidence-audit/`, `src/Web/StellaOps.Web/src/app/features/evidence-export/`, `src/Web/StellaOps.Web/src/app/features/triage/`, and `src/Web/StellaOps.Web/src/app/features/release-orchestrator/evidence/`.
|
||||
- Expected evidence: focused Angular tests, one checked-feature note, and sprint execution-log updates.
|
||||
|
||||
## Dependencies & Concurrency
|
||||
- Hard dependency inside the orphan revival batch: none.
|
||||
- External prerequisite already satisfied: the canonical Evidence shell, release evidence flows, and triage evidence hosts are already shipped.
|
||||
- Safe parallelism:
|
||||
- Can run in parallel with sprints `013`, `014`, `015`, `021`, `022`, and `023`.
|
||||
- This sprint exclusively owns proof-chain, DSSE, quick-verify, and evidence-checklist adoption targets while staffed.
|
||||
|
||||
## Documentation Prerequisites
|
||||
- `docs/modules/ui/orphan-revival-batch/README.md`
|
||||
- `src/Web/StellaOps.Web/AGENTS.md`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/evidence-checklist/evidence-checklist.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/quick-verify-drawer/quick-verify-drawer.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/proof-chain-viewer.component.ts`
|
||||
- `src/Web/StellaOps.Web/src/app/shared/components/dsse-envelope-viewer.component.ts`
|
||||
|
||||
## Delivery Tracker
|
||||
|
||||
### FE-OEP-001 - Freeze mounted proof-verification adopter list
|
||||
Status: DONE
|
||||
Dependency: none
|
||||
Owners: Developer (FE), Project Manager
|
||||
Task description:
|
||||
- Freeze the mounted host pages that will adopt the dormant proof-verification widgets.
|
||||
- Recheck the current repo snapshot so the sprint only targets real gaps and explicitly records why `EvidenceDrawerComponent` is not the primary adoption target.
|
||||
|
||||
Completion criteria:
|
||||
- [x] Mounted adopter list is recorded in the execution log.
|
||||
- [x] Every adopted host belongs to an already shipped Evidence, Triage, or Releases flow.
|
||||
- [x] The evidence-drawer correction and any related exclusions are recorded.
|
||||
|
||||
### FE-OEP-002 - Adopt quick verification and checklist flows
|
||||
Status: DONE
|
||||
Dependency: FE-OEP-001
|
||||
Owners: Developer (FE)
|
||||
Task description:
|
||||
- Wire `QuickVerifyDrawerComponent` and `EvidenceChecklistComponent` into the frozen mounted hosts where they complete real operator verification workflows.
|
||||
- Ensure the revived widgets open from current evidence actions rather than from orphan navigation.
|
||||
|
||||
Completion criteria:
|
||||
- [x] Quick verify is reachable from the adopted mounted hosts.
|
||||
- [x] Evidence checklist content is shown in a real evidence or VEX-completeness workflow.
|
||||
- [x] The adopted flows use current route or drawer patterns instead of legacy dead-shell affordances.
|
||||
|
||||
### FE-OEP-003 - Adopt proof-chain and DSSE viewers
|
||||
Status: DONE
|
||||
Dependency: FE-OEP-001
|
||||
Owners: Developer (FE)
|
||||
Task description:
|
||||
- Wire `ProofChainViewerComponent` and `DsseEnvelopeViewerComponent` into the frozen mounted hosts where proof-chain or attestation detail is currently weaker than the dormant component capability.
|
||||
|
||||
Completion criteria:
|
||||
- [x] Adopted hosts render the shared proof-chain viewer or DSSE viewer instead of bespoke partial implementations.
|
||||
- [x] Proof-chain and envelope detail remain contextual to the parent flow.
|
||||
- [x] No new top-level route is introduced for these widgets.
|
||||
|
||||
### FE-OEP-004 - Verify and document proof-component revival
|
||||
Status: DONE
|
||||
Dependency: FE-OEP-002
|
||||
Owners: Test Automation, Documentation author
|
||||
Task description:
|
||||
- Add focused Angular coverage for the revived proof-verification components in their mounted hosts and document the shipped slice.
|
||||
|
||||
Completion criteria:
|
||||
- [x] Angular tests cover the revived proof-verification widgets in mounted consumers.
|
||||
- [x] Checked-feature note exists under `docs/features/checked/web/`.
|
||||
- [x] UI plan/task docs reflect the proof-verification adoption.
|
||||
|
||||
## Execution Log
|
||||
| Date (UTC) | Update | Owner |
|
||||
| --- | --- | --- |
|
||||
| 2026-03-08 | Sprint created from the orphan-revival batch to revive dormant proof-verification widgets inside mounted Evidence, Triage, and Releases flows. | Project Manager |
|
||||
| 2026-03-08 | FE-OEP-001 DONE. Frozen adopter list: (1) evidence-bundles.component.ts: QuickVerifyDrawerComponent, (2) replay-controls.component.ts: QuickVerifyDrawerComponent, (3) vex-decision-modal.component.ts: EvidenceChecklistComponent, (4) provenance-visualization.component.ts: ProofChainViewerComponent, (5) triage-attestation-detail-modal.component.ts: DsseEnvelopeViewerComponent, (6) evidence-detail.component.ts: ProofChainViewerComponent + DsseEnvelopeViewerComponent + QuickVerifyDrawerComponent. EvidenceDrawerComponent (EvidencePacketDrawerComponent) confirmed already mounted in evidence-list.component.ts and evidence-center-page.component.ts -- no gap, excluded from this sprint. | Developer (FE) |
|
||||
| 2026-03-08 | FE-OEP-002 DONE. QuickVerifyDrawerComponent wired into evidence-bundles (opens from bundle verify action), replay-controls (opens from result Quick Verify button), and evidence-detail (opens from header Quick Verify button). EvidenceChecklistComponent wired into vex-decision-modal (new Required Evidence section before Review, driven by VexStatus-to-checklist-status computed). All flows use current drawer/signal patterns. | Developer (FE) |
|
||||
| 2026-03-08 | FE-OEP-003 DONE. ProofChainViewerComponent wired into provenance-visualization (maps ProvenanceNode to ChainNode via computed) and evidence-detail (maps gate results + approvals to ChainNode[]). DsseEnvelopeViewerComponent wired into triage-attestation-detail-modal (replaces raw JSON section, maps raw attestation data to DsseEnvelope) and evidence-detail (builds DsseEnvelope from signature data). No new routes introduced. Build verified clean on all modified files. | Developer (FE) |
|
||||
| 2026-03-08 | FE-OEP-004 DONE. Added focused Angular tests to 6 spec files: vex-decision-modal (checklistStatus mapping + template rendering), triage-attestation-detail-modal (dsseEnvelope/dsseDisplayData computed + DSSE viewer rendering + fallback), provenance-visualization (proofChainNodes mapping + filtering + verification status + rendering), evidence-bundles (quick-verify open/close/complete), replay-controls (quick-verify open/close/complete), evidence-detail (new spec: signatureDsseEnvelope, proofChainNodes, quick-verify lifecycle). Created checked-feature note at docs/features/checked/web/orphan-evidence-proof-component-adoption.md. Fixed VerifyResult.passed -> .verified type error in evidence-detail. All tasks DONE. Sprint complete. | Test Automation, Documentation |
|
||||
|
||||
## Decisions & Risks
|
||||
- Decision: proof and verification widgets must be absorbed into current Evidence, Triage, and Releases flows rather than restored as a separate product shell.
|
||||
- Decision: `EvidenceDrawerComponent` is not assumed to be missing; the sprint must explicitly confirm any current gap before touching it.
|
||||
- Risk: the proof widgets may overlap with bespoke evidence UI already shipped in triage or release detail.
|
||||
- Mitigation: freeze mounted hosts first and record explicit exclusions where the current shell already provides an equivalent or better UX.
|
||||
|
||||
## Next Checkpoints
|
||||
- 2026-03-09: mounted adopter list frozen.
|
||||
- 2026-03-11: widget-adoption criteria agreed.
|
||||
Reference in New Issue
Block a user