Skip to content

feat(relay): adopt RELAY spec v1.10 (§13.7 + §20 continuous conformance)#34

Merged
SoundMatt merged 1 commit into
mainfrom
feat/relay-v1.10
Jun 19, 2026
Merged

feat(relay): adopt RELAY spec v1.10 (§13.7 + §20 continuous conformance)#34
SoundMatt merged 1 commit into
mainfrom
feat/relay-v1.10

Conversation

@SoundMatt

Copy link
Copy Markdown
Owner

Uplifts go-LIN from RELAY spec v1.0 to the current stable spec v1.10, closing the full chain of adoption issues.

Dependency / spec uplift (#32)

  • github.com/SoundMatt/RELAY v1.0.0 → v1.10.0
  • SpecVersion auto-tracks relay.SpecVersion (now "1.10")
  • §13.7 library architecture already aligned (adapt, virtual, mock)

Interop driver + crossbar spokes (#29, #31)

  • convert --protocol LIN [--format json] (§11.2): lin.Frame JSON → Frame.ToMessage()relay.Message JSON, deterministic zero timestamp; ErrInvalidFrame + exit 1 on invalid input, exit 2 on bad args. relay interop --protocol LIN now reports go-lin EQUIVALENT.
  • Streaming send --format json NDJSON sink and subscribe --format json NDJSON source → full crossbar spoke.
  • convert/send/subscribe advertised in the capabilities document.

§20 continuous-conformance CI gates (#30, #33)

  • New relay-conform job: relay conform --strict against the built CLI.
  • New relay-interop job: relay interop --protocol LIN.
  • gofusa job expanded to the full lifecycle: check, trace -req-coverage 100, cyber, vuln, qualify (gating) + verify/tara/fmea/release/audit-pack evidence.

Functional safety

  • New requirements REQ-ADAPT-001..005, REQ-MOCK-001 (106 atomic ASIL-B reqs) with adapt_test.go / mock_test.go → 100% requirement traceability and 100% function-annotation density.
  • TARA (ISO 21434) added to the committed evidence set and to release.yml.
  • Removed a stray sync-conflict copy (mock/mock 2.go); ignore transient gofusa gate reports and CLI build binaries.

Verification (local)

  • go build / go vet / go test -race
  • relay conform --strictPASS
  • relay interop --protocol LINPASS (EQUIVALENT) ✅
  • gofusa check / trace -req-coverage 100 / cyber / vuln / qualify → all green ✅

Closes #29, #30, #31, #32, #33

Uplift go-LIN from RELAY spec v1.0 to the current stable spec v1.10,
closing the full chain of adoption issues (#29#33).

Dependency / spec uplift (#32):
- Bump github.com/SoundMatt/RELAY v1.0.0 → v1.10.0
- SpecVersion auto-tracks relay.SpecVersion (now "1.10")
- §13.7 library architecture already aligned (adapt, virtual, mock)

Interop driver + crossbar spokes (#29, #31):
- Add `convert --protocol LIN [--format json]` (§11.2): lin.Frame JSON on
  stdin → Frame.ToMessage() → relay.Message JSON on stdout, deterministic
  zero timestamp; ErrInvalidFrame sentinel + exit 1 on invalid input,
  exit 2 on bad args. relay interop now reports go-lin EQUIVALENT.
- Add streaming `send --format json` NDJSON sink and `subscribe
  --format json` NDJSON source so go-lin is a full crossbar spoke.
- Advertise convert/send/subscribe in the capabilities document.

§20 continuous-conformance CI gates (#30, #33):
- New relay-conform job: `relay conform --strict` against the built CLI.
- New relay-interop job: `relay interop --protocol LIN`.
- Expand the go-FuSa job to the full lifecycle: check, trace
  (-req-coverage 100), cyber, vuln, qualify (gating) + verify/tara/fmea/
  release/audit-pack evidence.

Functional safety:
- Add REQ-ADAPT-001..005 and REQ-MOCK-001 (106 atomic ASIL-B reqs) with
  adapt_test.go / mock_test.go so trace reaches 100% function-annotation
  density as well as 100% requirement traceability.
- Add TARA (ISO 21434) to the committed evidence set and to release.yml.
- Remove a stray sync-conflict copy (mock/mock 2.go); ignore transient
  gofusa gate reports and CLI build binaries.

Verified locally: build, go vet, go test -race, relay conform --strict
PASS, relay interop --protocol LIN PASS (EQUIVALENT), and the full gofusa
lifecycle (check/trace 100/cyber/vuln/qualify) all green.

Closes #29
Closes #30
Closes #31
Closes #32
Closes #33

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Matt Jones <47545907+SoundMatt@users.noreply.github.com>
@SoundMatt SoundMatt merged commit 1eb4d95 into main Jun 19, 2026
12 checks passed
@SoundMatt SoundMatt deleted the feat/relay-v1.10 branch June 19, 2026 19:30
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.

Implement convert driver for RELAY interop (spec §11.2)

1 participant