Add prototype/openapi/validate/resume commands, wire edge-failure matrix into UX, enforce traceability + validation gates, mandate C4/C5 belief-runtime verification. Rework 038-dashboard-scenario-model artifacts: applicability, structured edge cases, 24-class UX state matrix, interactive HTML prototype, standardized OpenAPI 3.1 (7 ops), full RTM with coverage gate, 56-task backlog, and PASS validation report.
5.4 KiB
#region DashboardScenarioModel.ValidationReport [C:3] [TYPE ADR] [SEMANTICS validation,gate,scenario] @defgroup Validation Pre-implementation validation gate for the Dashboard Scenario Model.
Status: PASS
Date: 2026-07-31 Feature: 038 Dashboard Scenario Model Branch: 038-dashboard-scenario-model (spec reworked on 037 branch; implementation branch to be created)
Validated Inputs
| Artifact | Size (bytes) | Modified (UTC) | SHA-256 |
|---|---|---|---|
| spec.md | reworked | 2026-07-31 | reworked-per-new-flow |
| plan.md | reworked | 2026-07-31 | reworked-per-new-flow |
| tasks.md | reworked (56 tasks) | 2026-07-31 | reworked-per-new-flow |
| traceability.md | reworked | 2026-07-31 | reworked-per-new-flow |
| ux_reference.md | reworked | 2026-07-31 | reworked-per-new-flow |
| contracts/modules.md | belief-runtime annotations added | 2026-07-31 | reworked-per-new-flow |
| contracts/openapi.yaml | standardized (7 ops) | 2026-07-31 | validated: 3.1, 7 unique operationIds, security on mutating ops |
| contracts/openapi-traceability.md | new | 2026-07-31 | 7 operations traced |
| prototype/index.html | new (18 states) | 2026-07-31 | state coverage 100% |
| prototype/manifest.md | new | 2026-07-31 | 24 state classes covered |
| contracts/ux/ | edge matrix + alternatives added | 2026-07-31 | 24 classes evaluated |
NOTE: Actual SHA-256 digests to be recorded by the implementer when running
/speckit.validateon the dedicated038-dashboard-scenario-modelbranch. This report documents the rework-time validation.
Blocking Findings
✅ No blocking findings. Proceed to /speckit.implement (after branch creation).
Warning Findings
| ID | Check | Severity | Location | Finding |
|---|---|---|---|---|
| W01 | Branch alignment | WARNING | git branch | Spec lives on 037-superset-baseline-engine; implementation branch 038-dashboard-scenario-model must be created before implementation |
| W02 | SHA-256 provenance | WARNING | validation.md | Real digests to be recorded on the 038 branch run |
| W03 | Frontend verification | WARNING | tasks.md | No frontend tasks (DTO-only); 039 owns rendering — confirm 039 has its own UI tasks |
Check Results
Phase 1: Unresolved Markers
- TODO/TKTK/???: 0
- Status: ✅ PASS
Phase 2: Artifact Completeness
| Artifact | Expected | Present | Status |
|---|---|---|---|
| spec.md | required | ✅ | PASS |
| plan.md | required | ✅ | PASS |
| tasks.md | required | ✅ | PASS |
| traceability.md | required | ✅ | PASS |
| ux_reference.md | required | ✅ | PASS |
| contracts/modules.md | required | ✅ | PASS |
| contracts/openapi.yaml | API surface | ✅ | PASS |
| contracts/openapi-traceability.md | API surface | ✅ | PASS |
| prototype/index.html | UI surface | ✅ | PASS |
| prototype/manifest.md | UI surface | ✅ | PASS |
| contracts/ux/scenario-graph-ux.md | UI surface | ✅ | PASS |
| contracts/ux/alternatives.md | UI surface | ✅ | PASS |
| data-model.md | required | ✅ | PASS |
| research.md | required | ✅ | PASS |
| checklist-catalog.md | required | ✅ | PASS |
| fixtures/ | plan references | ✅ (task T003/T004) | PASS |
Phase 3: Schema & Contract Validation
- YAML parse: ✅ (openapi.yaml, 3.1)
- operationId uniqueness: ✅ (7 unique)
- Contract audit: ✅ region pairs balanced across all 038 artifacts
- ATTN rules: ✅ ScenarioGraph.* hierarchical IDs; shared [SEMANTICS scenario,...]
Phase 4: Reference & ADR Integrity
- ADR continuity: ✅ ADR-0001/0002/0005 acknowledged in plan; 037 no-SQL invariant propagated to validator contract
- Cross-reference integrity: ✅ all task refs in traceability exist (56 tasks); all operationIds traced
Phase 5: Decision-Memory Continuity
- Three-layer chain: ✅ 8 guardrails traced ADR → plan → contracts → tasks (see plan.md Decision Memory table)
- Dangling rationale: 0
- Contradictory resurrection: 0
- Missing guardrail: 0 (all C4/C5 contracts now carry @RATIONALE/@REJECTED; belief-runtime @SIDE_EFFECT added to Capture/VLM/Disposition/Resolver/Serializer)
Phase 6: Task Dependency & Path
- Task count: 56
- Invalid paths: 0
- Circular dependencies: 0
- Phases 1→2→3→4→5→6→7→8→9 ordered; US1→US2 dependency explicit
Phase 7: UX State Coverage
- State matrix coverage: 24/24 state classes evaluated (0 skipped without rationale)
- Prototype coverage: 24/24 represented (18 dedicated sections + grouped/aria-live coverage)
- UX test coverage: ✅ every @UX_TEST in scenario-graph-ux.md mapped to prototype states
Phase 8: Axiom Health
- Index status: to be verified on 038 branch (
axiom_search({operation="status"})) - Orphans: to be verified on 038 branch
- Unresolved relations: 0 in 038 contract artifacts (all @RELATION targets defined or 036/037 cross-spec)
Gate Decision
Verdict: ✅ PASS — /speckit.implement may proceed after creating the 038-dashboard-scenario-model branch and re-recording SHA-256 provenance.
Resolution Instructions
- W01: Create branch
038-dashboard-scenario-modelfrom current HEAD (specs/038 already on disk). - W02: Re-run
/speckit.validateon the 038 branch to record real digests. - W03: Confirm 039 owns UI rendering tasks; 038 remains DTO-only.
#endregion DashboardScenarioModel.ValidationReport