Skip to content

Commit e58fed4

Browse files
committed
docs(v3): ractor helper-scope ruling + ownership compile attestation
Operator ruling folded: ractor is not for messaging (slow) but may serve as a HELPER where it makes sense (spawn, supervision, occasional serialized control RPC) — speed difference always in mind; hot-path dispatch belongs to the D-V3-W2e-probed ExecTarget. Compile attestation recorded: KanbanActor<O: MailboxSoaOwner> with type State = O — the owner MOVES into the actor at pre_start, so the compiler enforces sole mutation through the serialized message loop. cargo test -p lance-graph-supervisor --features supervisor: 22 tests green against the AdaWorldAPI ractor fork. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MLBnPuScZy6w9di2QEjsXM
1 parent 10749d5 commit e58fed4

2 files changed

Lines changed: 7 additions & 1 deletion

File tree

.claude/board/AGENT_LOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## 2026-07-02 — ractor ownership compile attestation + helper-scope ruling folded
2+
3+
- Operator: "compile with ractor and call it owner so that the compiler believes it" — VERIFIED: `KanbanActor<O: MailboxSoaOwner>` has `type State = O`; the owner MOVES in at `pre_start(..., owner) -> Ok(owner)` (kanban_actor.rs:77,94,100-104). `cargo test -p lance-graph-supervisor --features supervisor` green against the AdaWorldAPI ractor fork (P0-compliant git dep): 15 kanban_actor unit tests + 7 integration tests (one-for-one restart, lifecycle audit, inert-G denies, Send/Sync compile proof) — 0 failures. The compiler and the runtime both attest mailbox-as-owner.
4+
- Operator scope ruling folded into mailbox-kanban-model.md: ractor is NOT for messaging (slow); it MAY serve as a HELPER where it makes sense (spawn, supervision, occasional serialized control RPC), always minding the speed difference — nothing on the hot path waits on ractor latency (hot dispatch = the D-V3-W2e-probed ExecTarget).
5+
- Ops: root FS hit 100% (overlay ~37G effective); freed by pruning agent transcripts + sibling targets + `cargo clean` (16G); post-build 57% used.
6+
17
## 2026-07-02 — census fleet COMPLETE (21/21) — MODULE-TABLE.md shipped; D-V3-W0a Shipped
28

39
- 304/304 files censused across lance-graph / lance-graph-contract / lance-graph-planner by the Sonnet census fleet (21 chunks, throttled re-dispatch after the rate-limit incident); assembled mechanically into `.claude/v3/MODULE-TABLE.md` (per file: visibility / consumes / emits / LE contract / function+benefit / tech debt / duplication / V3 wave).

.claude/v3/knowledge/mailbox-kanban-model.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ proposes; the owner disposes.
2727
|---|---|---|
2828
| **Arm #1 — planner** | `lance-graph-planner/src/strategy/style_strategy.rs` | The D-MBX-A6 seam: the deferred `Outcome → Candidate/KanbanMove` adapter. Strategy outcomes (converged, cycle_count, gate verdicts) become kanban moves. |
2929
| **Arm #2 — symbiont** | `crates/symbiont` (`kanban_loop.rs` = POC) | SurrealDB-on-kv-lance executor: kanban updates as KV transactions on the same Lance substrate. Gated on the AdaWorldAPI surrealdb fork `kv-lance` feature. |
30-
| **Structural owner** | `lance-graph-supervisor/kanban_actor.rs` | ractor actor per mailbox. **ractor is a compile-time ownership dummy** — it spawns and proves single-ownership via move semantics; it is NOT a data-plane bus (payloads never flow through it; ractor itself is too slow; it just spawns). **Sharpening (review #629):** the actor mailbox IS still the runtime serialized single-writer CONTROL path — Advance/MulAdvance/Tick serialize through one actor message, which is exactly what the codex #578 atomicity fix relies on. "Dummy" scopes the data plane, not the control serialization. |
30+
| **Structural owner** | `lance-graph-supervisor/kanban_actor.rs` | ractor actor per mailbox. **ractor is a compile-time ownership dummy** — it spawns and proves single-ownership via move semantics (`KanbanActor<O>` with `type State = O`; the owner MOVES in at `pre_start`); it is NOT a data-plane bus and **not for messaging — it is slow** (operator, 2026-07-02). **It MAY serve as a HELPER where it makes sense** — spawn, supervision, occasional control RPC like the serialized Advance/MulAdvance (the codex #578 atomicity mechanism) — always keeping the speed difference in mind: nothing on the hot path may wait on ractor latency; hot-path dispatch belongs to the D-V3-W2e-probed ExecTarget. |
3131

3232
## The ahead-firing batch writer
3333

0 commit comments

Comments
 (0)