3.5.4 (2026-08-26)
Internal Improvements
force_bench: --no-embedded-sim hardware dry-run mode (5f00182)force_bench: detect real service stalls and validate --mode (57d6a06)force_bench: expose schedule, sessions, and rate-list CLI for paced sweeps (6f842b5)force_bench: fix inconsistent multi-session metrics merge (d054310)force_bench: fix m5 mode-latch race and wrong-device telemetry read (f4ef266)force_bench: paced open-loop generator ΓÇö rate sweep, waveforms, position/M5 modes (B1+B2) (dddf0c7)force_bench: per-step generator validity ΓÇö record and exclude, don't kill the run (7fdf03c)force_bench: send session.configure on every spawned multi-session client (dcc44d4)force_bench: stop m5 mode-switch from jumping to a stale center (52d1678)force_bench: stop yielding on every spin-wait iteration (48d51ed)force_bench: wait for live telemetry before position/m5 runs (a6e2dab)force_bench: yield to the executor during the paced spin-wait tail (907413f)http: make expert serial-io capture GET side-effect free (d907b63)protocol: avoid large stack allocation in serial IO log copy (a3ee03b)protocol: correct [secure] /expert/status precedent, add gate TODO (726fe72), closes #330protocol: document expert/serial_io as permanently ungated, add unit tests (aa5dd0b)protocol: expose Inverse3 serial I/O capture for validation suites (4d4990a)protocol: fix [[maybe_unused]] placement for Clang (95ee7f0)protocol: fix unused-parameter build failure in read_payload (029d13b), closes #ifdefprotocol: gate Inverse3 RX serial-io staging on armed() (7bb5aa6)protocol: heap-allocate serial_io_log ring lazily on first arm (9a23139)protocol: return seq watermarks from serial_io_log copy_since (820e7c3)protocol: route all Inverse3 RX reads through one capture point (78a12d8)protocol: stop expert serial-io capture from immediately re-disarming (ac4d0b0)protocol: tag serial_io_log RX captures with the real header, not bytes[0] (804f0bb)Bug Fixes
docs: add 3.5.4 changelog cycle records, reconcile the debt registry (4e240ed)perf: raise default dispatch in-flight cap from 4 to 30 (741a7d0)