Skip to content

feat(validate): lifecycle gap names the ASPICE verification chain (REQ-237, #350)#642

Merged
avrabe merged 1 commit into
mainfrom
feat/req-237-aspice-chain-hint
Jul 1, 2026
Merged

feat(validate): lifecycle gap names the ASPICE verification chain (REQ-237, #350)#642
avrabe merged 1 commit into
mainfrom
feat/req-237-aspice-chain-hint

Conversation

@avrabe

@avrabe avrabe commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

What

Closes #350 (Shape B — guide to the chain). Marking a sw-req implemented+verified needs the full ASPICE chain, but the completeness diagnostic only listed missing: unit-verification, sw-integration-verification — so a downstream user (synth) authored a direct unit-verification verifies: <sw-req>, got rejected (that link targets sw-detail-design), and reverse-engineered the layering from the rejection.

Fix

For each missing downstream type that cannot link directly to the artifact's type, the gap now names what it does attach to:

SL-TR-003 (sw-req, status: implemented) — missing: unit-verification, ...
  → a `unit-verification` `verifies` `sw-detail-design`, not `sw-req`
    directly — add an intermediate `sw-detail-design` that traces to this
    artifact and is `verifies`-linked by the `unit-verification`

A type that CAN link directly (e.g. sw-verification→sw-req) gets no hint. Keeps the ASPICE layering required — just guided (the reporter's own ask). Rendered at the CLI display layer shared by the salsa and --direct paths, so validate/direct parity (REQ-241) holds.

Verification

lifecycle_gap_names_the_aspice_verification_chain asserts the chain hint on a real aspice sw-req. cli_commands 150 green; clippy --all-targets clean.

Self-hosted CI pool offline (#509); verified locally.

🤖 Generated with Claude Code

…Q-237, #350)

Marking a sw-req implemented and green requires the full ASPICE chain
(sw-req <- sw-detail-design <- unit-verification; sw-req <- sw-arch-component
<- sw-integration-verification), but the completeness diagnostic only listed
"missing: unit-verification, sw-integration-verification". A downstream user
(synth) authored a direct `unit-verification verifies: SL-TR-003`, which
validate rejected (that link targets sw-detail-design), and had to
reverse-engineer the layering from the rejection.

Now, for each missing downstream type that cannot link DIRECTLY to the
artifact's type, the gap names what it DOES attach to, so the required
intermediate is obvious:

  SL-TR-003 (sw-req, status: implemented) — missing: unit-verification, ...
    -> a `unit-verification` `verifies` `sw-detail-design`, not `sw-req`
       directly — add an intermediate `sw-detail-design` that traces to this
       artifact and is `verifies`-linked by the `unit-verification`

A missing type that CAN link directly (e.g. `sw-verification` -> sw-req) gets
no hint. Rendered at the CLI display layer (shared by the salsa and --direct
paths, so validate/direct parity is preserved — REQ-241). Per the reporter's
own ask; keeps the ASPICE layering required (shape B), just guided.

Implements: REQ-237
Verifies: REQ-237
Refs: REQ-089
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@avrabe avrabe merged commit cc2a638 into main Jul 1, 2026
22 checks passed
@avrabe avrabe deleted the feat/req-237-aspice-chain-hint branch July 1, 2026 05:40
@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

📐 Rivet artifact delta

Change Count
Added 0
Removed 0
Modified 1
Downstream impacted (depth ≤ 5) 0

Graph

graph LR
  REQ_237["REQ-237"]:::modified
  classDef added fill:#d4edda,stroke:#28a745,color:#155724
  classDef removed fill:#f8d7da,stroke:#dc3545,color:#721c24
  classDef modified fill:#fff3cd,stroke:#ffc107,color:#856404
  classDef overflow fill:#e2e3e5,stroke:#6c757d,color:#495057,stroke-dasharray: 3 3
Loading
Modified
ID Changes
REQ-237

📎 Full HTML dashboard attached as workflow artifact rivet-delta-pr-642download from the workflow run.

Posted by rivet-delta workflow. The graph shows only changed artifacts; open the HTML dashboard (above) for full context.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Rivet Criterion Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: 2ca2f3a Previous: 49b44e5 Ratio
traceability_matrix/1000 63114 ns/iter (± 388) 44678 ns/iter (± 415) 1.41
query/10000 336157 ns/iter (± 6579) 234773 ns/iter (± 2041) 1.43

This comment was automatically generated by workflow using github-action-benchmark.

@codecov

codecov Bot commented Jul 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant