Skip to content

feat(p3): relay-sc P3 async stream variant — completes cFS streamification (#168)#187

Merged
avrabe merged 1 commit into
mainfrom
feat/relay-sc-p3-stream
Jun 15, 2026
Merged

feat(p3): relay-sc P3 async stream variant — completes cFS streamification (#168)#187
avrabe merged 1 commit into
mainfrom
feat/relay-sc-p3-stream

Conversation

@avrabe

@avrabe avrabe commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

The fourth and final cFS engine streamified (#168 STREAM-P04) — LC/SCH/HK/SC are now all P3 async streams. SC (stored-command sequencer) was sync-only (process_tick(time) -> list); now exposes monitor: func(stream<time-tick>) -> stream<dispatched-command>, a real async stream transformer firing due ATS/RTS via the verified relay_sc::engine::CommandStore::process_tickuse relay_sc::engine, not an inline copy.

//:relay-sc-stream (wasi=p3) deps on relay-sc-engine; built + exercised in CI (bazel.yml now builds all four stream components). SWREQ-RELAY-STREAM-P04 -> FV-RELAY-STREAM-004, rivet PASS.

Backlog-driven: no new tracker activity this pass — #168 streamification is now COMPLETE, 4/4 (LC + SCH + HK + SC). CI-validated via the Component Model cascade, mirroring the prior three.

Falsification: wrong if //:relay-sc-stream fails to build as a P3 component; if monitor() calls a method absent from the verified relay_sc crate; or if grep '^mod engine' on the stream component is non-empty.

🤖 Generated with Claude Code

…ification (#168, STREAM-P04)

The fourth and FINAL cFS engine streamified (LC/SCH/HK/SC all P3 async streams).
SC (stored-command sequencer) was sync-only (process_tick(time) -> list); now
exposes the P3-native async stream interface, running the SAME verified engine.

- crates/relay-sc/wit/stored_command_stream.wit: monitor: func(
  stream<time-tick>) -> stream<dispatched-command> (+ init/load-ats/rts ctrl).
- crates/relay-sc/src/wasm_stream_component.rs: async fn monitor over a
  StreamReader<TimeTick>, firing due ATS/RTS via
  relay_sc::engine::CommandStore::process_tick — use relay_sc::engine, NOT an
  inline copy.
- BUILD.bazel: relay_stored_command_stream_wit + //:relay-sc-stream (wasi=p3)
  deps on relay-sc-engine.
- bazel.yml: builds //:relay-sc-stream in CI (exercised, #168 lesson) — now all
  four stream components build in CI.
- SWREQ-RELAY-STREAM-P04 -> FV-RELAY-STREAM-004. rivet validate PASS.

Backlog-driven (no new tracker activity this pass) — #168 streamification now
COMPLETE: 4/4 cFS engines (LC + SCH + HK + SC).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@avrabe avrabe merged commit 161c09e into main Jun 15, 2026
30 checks passed
@avrabe avrabe deleted the feat/relay-sc-p3-stream branch June 15, 2026 06:50
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