Repository navigation
Closed
Labels
kind:taskA task the plan skill rendered; the body carries ## TaskA task the plan skill rendered; the body carries ## Taskmodel:strongestThe strongest model available: unknown ground, or large work that needs careThe strongest model available: unknown ground, or large work that needs caresize:SUnder 200 net lines; one PRUnder 200 net lines; one PR
Description
Task
| slice | size | difficulty | model | who | estimated lines |
|---|---|---|---|---|---|
| Round-two conditions closed | S | needs care | strongest | an agent | 160 (60 code, 100 tests) |
A process injected while a blocking member's admit runs ends in the blocked leaf and is recorded.
Covers:
- BEP-018
Layers:
- inject:
- crates/minimald/src/box_runtime.rs: after the shim joins its leaf,
Host::commandchecks the cohort again under the lock and moves the shim into the blocked leaf and records it, or refuses the injection - crates/minimald/src/box_runtime/tests.rs: the interleaving test
cargo nextest run -p minimald an_admit_between_injection_leaf_and_the_join_ends_in_the_blocked_leaf
- crates/minimald/src/box_runtime.rs: after the shim joins its leaf,
Waits on:
Plan block
### T73 — Close the race between the cohort lock and the shim's leaf join
slice: S10
kind: task
covers: BEP-018
size: S
est: 60 code, 100 tests
executor: agent
difficulty: needs care
model: strongest
diagnostics: the daemon log names an injected process that the post-join check moved into the blocked leaf
observability: one debug line per post-join move
layers:
- inject:
- crates/minimald/src/box_runtime.rs: after the shim joins its leaf, `Host::command` checks the cohort again under the lock and moves the shim into the blocked leaf and records it, or refuses the injection
- crates/minimald/src/box_runtime/tests.rs: the interleaving test
test: cargo nextest run -p minimald an_admit_between_injection_leaf_and_the_join_ends_in_the_blocked_leaf
produces: none
consumes: none
proof: A process injected while a blocking member's admit runs ends in the blocked leaf and is recorded.
depends on:
- blocked by #2534
Generated by Claude Code
Reacted by minimal-foundry
Metadata
Metadata
Assignees
Labels
kind:taskA task the plan skill rendered; the body carries ## TaskA task the plan skill rendered; the body carries ## Taskmodel:strongestThe strongest model available: unknown ground, or large work that needs careThe strongest model available: unknown ground, or large work that needs caresize:SUnder 200 net lines; one PRUnder 200 net lines; one PR
Activity
norrietaylor commentedon Oct 26, 2026
The epic owner added this residual to the plan on 2026-10-26 as
T73(slice S10). Its body is now the rendered task. The residual text it replaces is kept below.Residual text
Residual filed from T53 #2553, arch condition C2 at ecdb372 (review thread 4370706134), epic #1501.
Situation
Host::commandincrates/minimald/src/box_runtime.rscallsinjection_leaf, which takes and releases the cohort lock before the shim joins its leaf. When a blocking member'sCohortQuic443::admitruns in that interval,move_infinds the box's own leaf empty and returnsOk. The shim then joins the box's own leaf, is not recorded (adoptis false), and sends UDP 443 until the block lifts, against Networking §5.3 line 150.What closes this
admitbetweeninjection_leafand the join and pins that the injected process ends in the blocked leaf, recorded.Generated by Claude Code
[-]Close the injection race between the cohort lock and the shim's leaf join (BEP-018)[/-][+]T73 — Close the race between the cohort lock and the shim's leaf join[/+]minimal-foundry commentedon Oct 26, 2026
Done. #2595 merged.
branch
agent/2559-close-the-race-between-the-cohort-lock-and-the-s· epic #1501 · PR #25951740ce5ce20f61a0b36406a517beffbbUpdated 2026-10-26T08:34:09.421Z.