Skip to content

feat: set up rivet SDLC artifact traceability#43

Closed
avrabe wants to merge 1 commit intomainfrom
feat/isa-feature-gating
Closed

feat: set up rivet SDLC artifact traceability#43
avrabe wants to merge 1 commit intomainfrom
feat/isa-feature-gating

Conversation

@avrabe
Copy link
Contributor

@avrabe avrabe commented Mar 17, 2026

Summary

  • Adds rivet.yaml project configuration with common, stpa, aspice, dev schemas
  • Converts REQUIREMENTS.md into 22 rivet artifacts (BR, FR, NFR, TR) with ASPICE V-model types
  • Adds 6 architecture component artifacts (ARCH-001 through ARCH-006) with requirement traceability
  • Adds 6 verification artifacts (VER-001 through VER-006) linking proofs/tests to requirements
  • Wires existing STPA safety analysis (losses.yaml, hazards.yaml) via stpa-yaml adapter
  • Configures commit traceability (Implements/Fixes/Verifies trailers)
  • Cross-repo externals for kiln and meld

53 total artifacts, rivet validate passes with 24 warnings (expected for initial setup — missing STPA steps 2-4, NFRs lacking verification backlinks).

Artifact Summary

Type Count IDs
stakeholder-req 4 BR-001 to BR-004
system-req 13 FR-001 to FR-008, NFR-001 to NFR-005
sw-req 5 TR-001 to TR-005
system-arch-component 6 ARCH-001 to ARCH-006
sys-verification 6 VER-001 to VER-006
loss 6 L-1 to L-6
hazard 10 H-1 to H-10

Test plan

  • rivet validate passes (PASS, 24 warnings)
  • rivet stats shows 53 artifacts
  • Cross-repo externals resolve correctly (kiln, meld backlinks)
  • CI passes (no Rust changes)

🤖 Generated with Claude Code

…ions

Add compile-time validation that ensures the compiler never emits ARM
instructions unsupported by the target platform. This is critical for
correctness: e.g., Cortex-M3/M4 (no FPU) must not receive VFP
instructions, and single-precision targets must not receive F64 ops.

Changes:
- Add ISA capability methods to CortexMVariant (has_dsp, has_fpu,
  has_trustzone, has_helium) and TargetSpec (has_single/double_precision)
- Add ArmOp::requires_fpu() and requires_double_precision_fpu() methods
  with human-readable instruction_name() for error messages
- Add validate_instructions() pass between instruction selection and
  encoding in the compilation pipeline
- Add UnsupportedInstruction error variant to synth-core
- Add 18 new tests covering ISA feature queries, instruction validation,
  and end-to-end compilation gating across M3/M4/M4F/M7DP targets

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@avrabe avrabe force-pushed the feat/isa-feature-gating branch from 1d13bb2 to dbb8372 Compare March 17, 2026 05:48
@avrabe
Copy link
Contributor Author

avrabe commented Mar 17, 2026

Recreating with correct branch mapping

@avrabe avrabe closed this Mar 17, 2026
@avrabe avrabe deleted the feat/isa-feature-gating branch March 17, 2026 06:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant