- Canonical ownership: generated
Functional Spec
- Story: story-vibepro-accepted-spec-traceability
- Status: -
- Clauses: 12
INV-001
Canonical accepted-spec authority is resolved from the target HEAD tree and records HEAD SHA, path, and blob OID.
Origin refs
INV-002
Story identity and stable AC ids resolve only by exact identity.
Origin refs
INV-003
Test file and case resolve against the named test blob at target HEAD.
Origin refs
INV-004
Invariant test patterns are evaluated from target HEAD blobs and failed patterns never map.
Origin refs
INV-005
A scenario with an exact test reference remains eligible without a test_pattern.
Origin refs
INV-006
The regression fixture proves twelve one-to-one accepted-spec mappings, with nine invariant patterns and three patternless scenarios.
Origin refs
INV-007
PR prepare, canonical traceability, and PR body consume the same clause map and provenance.
Origin refs
INV-008
Unknown AC, missing test file, missing test case, and failed pattern produce explicit fail-closed reasons.
Origin refs
INV-009
A worktree accepted-spec that differs from or is absent from target HEAD fails closed.
Origin refs
S-001
Lineage status remains resolved while untrusted verification receives its own untrusted status and reason.
Origin refs
S-002
Legacy mapped_tests string arrays and absent-spec heuristic behavior remain compatible.
Origin refs
S-003
Node 22 focused and related regression checks plus repository integrity checks pass.
Origin refs
Diagrams
Target HEAD lineage resolution
flowchart LR Spec[HEAD canonical accepted-spec blob] --> AC[HEAD Story AC ids] Spec --> Test[HEAD test file and case blobs] AC --> Map[Authoritative clause map] Test --> Map Map --> Prepare[pr-prepare.json] Map --> Trace[traceability.json] Map --> Body[pr-body.md]