v2.19.0 - 2026-10-24
🎉 New Features
- Trace record format with schema validation, redaction and header diff c960431
- Carry the EdgePort version on every MessageRequest 80f4b68
- Announce the component version in gRPC metadata a119887
- Record messages to JSONL with per-hop timing and diffs f728335
- Flag calls for recording from the trunk's extended attributes 2d7cc3c
- Rctl trace replay, validate and send f49c4c8
- Rule engine with sip and sip-connect profiles over trace records be3381b
- Report the socket a message was received on 3ad41c4
- Spec.trace.enabled on Trunk, Agent, Peer and Domain a869908
- Lift trace.* metadata into hops, redact switch, end-of-message lint e81028a
- Trace lint, compat and sanitize; checks from rule findings; --sip-connect aad2029
- Trace viewer redesign, light terminals, compare by what Routr did 050d50f
🏗️ Build System
- Compatibility job replays the corpus through the Node chain edb6e05
📚 Documentation Changes
- Record and replay calls f50a3ed
- Lint profiles, annotations, the known-good corpus and chart values 491ed31
- Replay a call in the terminal, view by view e2d8871
- Show the replay screens inside a terminal window 2b01a02
- Recordings land in recording.path; RECORD_MESSAGES_PATH is the all-in-one image's 09d6402
🔍 Tests
- Known-good recordings of the compliance scenarios b96061d
- Agent 1002 places the same DOD call as 1001 74d30f2