You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rivet release status cuttability is status-only — misses link-based (V-model) verification
Tool: rivet 0.22.0, release status (#516). Consumer: gale (ASIL-D, 967 artifacts, ASPICE + STPA + safety-case).
What happened
Adopting the new release-handling on gale: scoped a 16-artifact vertical to release: v0.1.0, ran rivet release status v0.1.0. The burn-down view + move + list --release + json output are all great. But cuttability is decided purely by status ∈ {verified, accepted}, and gale has zero artifacts in those statuses — by design.
all gale statuses: {draft:53, approved:869, proposed:30, active:12, resolved:3}
verified/accepted: 0
gale (like any ASPICE/V-model project) expresses verification through links, not a status value: a requirement sits at terminal status approved and is "verified" by a verified-by / verified-on link to a passing verification artifact — exactly what rivet validate's coverage rules already check (e.g. "every sw-req verified by ≥1 verification measure"). So release status reports ✗ NOT cuttable even for a fully-closed-V release, because no artifact will ever carry status: verified.
Net: as shipped, the cuttability gate (the headline CI-gating feature — exits non-zero) can never go green on a link-verification project. The burn-down counts are still useful; the verdict isn't.
Suggestion
Make "release-ready" derive from the schema/lifecycle rather than two hardcoded strings. Options, any of which unblocks the hard-gate use:
Link/coverage-based readiness — an artifact is release-ready when its validate coverage rules pass (the V is closed), not when a status string matches. This is the most correct for V-model projects and reuses logic validate already has.
Configurable — a release.ready-when list in rivet.yaml (statuses and/or "coverage-clean").
Happy to test a build against gale's real artifact set the moment any of these lands — gale is a live ASPICE consumer with the link-based model this would serve.
Workaround (current)
gale wires rivet validate (the real V-gate) as the blocking release gate and runs rivet release status as a non-blocking burn-down view, pending this fix.
rivet release statuscuttability is status-only — misses link-based (V-model) verificationTool: rivet 0.22.0,
release status(#516). Consumer: gale (ASIL-D, 967 artifacts, ASPICE + STPA + safety-case).What happened
Adopting the new release-handling on gale: scoped a 16-artifact vertical to
release: v0.1.0, ranrivet release status v0.1.0. The burn-down view +move+list --release+ json output are all great. But cuttability is decided purely bystatus ∈ {verified, accepted}, and gale has zero artifacts in those statuses — by design.gale (like any ASPICE/V-model project) expresses verification through links, not a status value: a requirement sits at terminal status
approvedand is "verified" by averified-by/verified-onlink to a passing verification artifact — exactly whatrivet validate's coverage rules already check (e.g. "every sw-req verified by ≥1 verification measure"). Sorelease statusreports✗ NOT cuttableeven for a fully-closed-V release, because no artifact will ever carrystatus: verified.Net: as shipped, the cuttability gate (the headline CI-gating feature — exits non-zero) can never go green on a link-verification project. The burn-down counts are still useful; the verdict isn't.
Suggestion
Make "release-ready" derive from the schema/lifecycle rather than two hardcoded strings. Options, any of which unblocks the hard-gate use:
approvedis terminal for a requirement.validatecoverage rules pass (the V is closed), not when a status string matches. This is the most correct for V-model projects and reuses logicvalidatealready has.release.ready-whenlist inrivet.yaml(statuses and/or "coverage-clean").Happy to test a build against gale's real artifact set the moment any of these lands — gale is a live ASPICE consumer with the link-based model this would serve.
Workaround (current)
gale wires
rivet validate(the real V-gate) as the blocking release gate and runsrivet release statusas a non-blocking burn-down view, pending this fix.