Skip to content

feat: full safety and cyber pack — TARA, FMEA, SAS, boundary, safety manual, IEC 62443, CI hardening#2

Merged
SoundMatt merged 1 commit into
mainfrom
feat/full-safety-pack
Jun 19, 2026
Merged

feat: full safety and cyber pack — TARA, FMEA, SAS, boundary, safety manual, IEC 62443, CI hardening#2
SoundMatt merged 1 commit into
mainfrom
feat/full-safety-pack

Conversation

@SoundMatt

Copy link
Copy Markdown
Owner

Summary

  • TARA (ISO/SAE 21434 + IEC 62443-4-1 SL-2): 7 threat scenarios (frame injection, replay, DoS, E2E bypass, LDF tampering, timing attack, data race), CVSS 3.1 scores, 8 security controls, attack tree, residual risk acceptance — TARA.md + tara.json
  • FMEA (ISO 26262-9): 14 entries linked to HARA hazards H-01..H-05, severity/occurrence/detection ratings — fmea.json
  • Software Architecture Specification (ISO 26262-6 §7.4): 9 modules, invariants, public interfaces, data flow, memory safety strategy — sas.md
  • Boundary diagram (ISO 26262-6 §7.4.1): all modules, data flows, ASIL annotations — boundary.mermaid
  • Safety Manual (ISO 26262-6 §7, Part 10 §9): safe API patterns, anti-patterns, thread safety matrix, shutdown sequencing — SAFETY_MANUAL.md
  • Incident Response + Security (ISO/SAE 21434 §7.4, IEC 62443-4-1 SM-2): coordinated disclosure, ASIL impact assessment, ISN process — INCIDENT-RESPONSE.md, SECURITY.md
  • IEC 62443 controls: expanded .fusa-iec62443.json from 5-line stub to 19 security requirements with standard references and evidence
  • Requirements: 32 new REQ-RELAY-001..029,051,056,059 added to .fusa-reqs.json — closes all orphan fusa:req annotations in relay.hpp/relay.cpp
  • CI hardening: cpfusa lint and cpfusa cyber are now hard gates (no || true); ThreadSanitizer job added for REQ-VIRT-018; all new docs added to ASIL-B evidence artifact upload

Test plan

  • CI build matrix (5 platforms) green
  • Coverage ≥70% gate passes
  • RELAY conformance + interop gates pass
  • ASan + UBSan sanitizer job passes
  • ThreadSanitizer (new) job passes
  • cpfusa lint (now hard gate) passes
  • cpfusa cyber (now hard gate) passes
  • cpfusa qualify ASIL-B gate passes
  • ASIL-B evidence artifact upload includes all new docs
  • SARIF upload to GitHub Security tab succeeds

…manual, IEC 62443, CI hardening

- Add TARA.md + tara.json: 7 threats (THREAT-01..07), CVSS scores, 8 security controls,
  attack tree, residual risk acceptance — ISO/SAE 21434 + IEC 62443-4-1 SL-2
- Add SAFETY_MANUAL.md: safe API patterns, anti-patterns, thread safety matrix,
  memory budget, shutdown sequencing — ISO 26262-6 §7 / Part 10 §9 SEooC
- Add SECURITY.md + INCIDENT-RESPONSE.md: coordinated disclosure, ASIL impact
  assessment, ISN process — ISO/SAE 21434 §7.4, IEC 62443-4-1 SM-2
- Add boundary.mermaid: ISO 26262-6 §7.4.1 software architecture boundary diagram
  with all 9 modules, data flows, and ASIL annotations
- Add sas.md: Software Architecture Specification with module responsibilities,
  invariants, public interfaces, data flow, memory safety strategy
- Add fmea.json: 14 FMEA entries linked to HARA hazards H-01..H-05,
  severity/occurrence/detection ratings, all Closed — ISO 26262-9
- Expand .fusa-iec62443.json: 5-line stub → 19 security requirements (SR-IAC,
  SR-UC, SR-SI, SR-DC, SR-RDF, SR-TR, SR-RA, SR-SM, SR-SD, SR-SV) with
  IEC 62443-4-1/4-2 standard references and evidence links
- Add REQ-RELAY-001..029,051,056,059 to .fusa-reqs.json: 32 new requirements
  closing orphan fusa:req annotations in relay.hpp/relay.cpp — full traceability
- CI: remove || true from cpfusa lint and cpfusa cyber (now hard gates)
- CI: add ThreadSanitizer job (REQ-VIRT-018 concurrent access gate)
- CI: add TARA.md, SAFETY_MANUAL.md, INCIDENT-RESPONSE.md, SECURITY.md
  to ASIL-B evidence artifact upload
- src/lin.cpp: REQ-ADAPT-001..005 annotations + send() range-check fix
- tests/test_relay_adapter.cpp: REQ-ADAPT-001..005 full coverage + 5 new tests

Signed-off-by: Matt Jones <matt@jellybaby.com>

Signed-off-by: Matt Jones <47545907+SoundMatt@users.noreply.github.com>
@SoundMatt SoundMatt merged commit fc7d369 into main Jun 19, 2026
15 checks passed
@SoundMatt SoundMatt deleted the feat/full-safety-pack branch June 19, 2026 20:42
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