feat/supervisor-actor-model #1

Merged
yorunikakeru merged 20 commits from feat/supervisor-actor-model into main 2026-06-24 14:44:45 +02:00
Owner
No description provided.
Implements encode_state (ToadState → proto bytes) and bridge_task
(watch::Receiver → mpsc::Sender<PlannerMsg>) with three passing tests.
Also fixes items_after_test_module lint from Task 3 in supervisor.rs.
Implements SupervisorConfig, Supervisor::new, and Supervisor::run with
Erlang-style rest_for_one supervision: Toad death restarts all three actors,
Bridge/Planner death restarts only Bridge+Planner with a fresh mpsc channel.
Version and schema now owned by Types.emptyIRDocument in the IR crate,
exposed via hs_empty_ir FFI. No more hardcoded version:9 or field list.
rust-lld (LLVM 22, default since Rust 1.96) misparses ELF VER_NDX_LOCAL
entries in GHC-produced libplanner-ffi.so. nixpkgs ships Rust 1.95 which
still uses ld.bfd — no linker issue.

Also removes direct prost dep from Supervisor; bridge.rs now uses
planner_actor::system_state_bytes() to avoid prost version conflict.
Adds frogos-toad as flake input so its narHash feeds importCargoLock
outputHashes automatically on nix flake update.
Add pkgs.clippy to nativeBuildInputs so cargo clippy is available in
the Nix sandbox. Set PLANNER_PROTO_DIR to the flake-input source of
the planner repo so build.rs resolves proto/ without needing the repo
root (which is absent from the vendor dir subtree).
choire: update gitignore
Some checks failed
CI / linux (pull_request) Has been cancelled
a5f3abb9d0
fix: address review feedback
Some checks failed
CI / linux (pull_request) Has been cancelled
09736631e3
- Add warn! on each actor restart arm for operational visibility
- Surface supervisor errors in integration test via tokio::select!
- Narrow tokio features from "full" to rt-multi-thread/sync/time/macros
- Remove unused rustToolchain binding from flake.nix
- Fix double space in flake.nix cargo test command
- Simplify ToadState::default() in bridge test
- Remove file-level narrating comment from supervisor.rs
- Document IFD risk on plannerFfiLibDir; keep hardcoded GHC path
fix: ssh->http
Some checks failed
CI / linux (pull_request) Has been cancelled
19e937894b
fix(nix): replace allowBuiltinFetchGit with outputHashes from flake inputs
Some checks failed
CI / linux (pull_request) Failing after 12s
2c65a3323e
allowBuiltinFetchGit calls builtins.fetchGit with SSH URLs from Cargo.lock
during evaluation, triggering the SSH host key prompt even when inputs are
already fetched via HTTPS. outputHashes derived from locked flake inputs
avoids all eval-time network access.
style: formatted
Some checks failed
CI / linux (pull_request) Failing after 8s
0d18214e09
choire: cargo ssh -> http
All checks were successful
CI / linux (pull_request) Successful in 1m17s
1e66dc17c9
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
FrogOS/Supervisor!1
No description provided.