Repository navigation
Closed
Labels
kind:taskA task the plan skill rendered; the body carries ## TaskA task the plan skill rendered; the body carries ## Taskmodel:standardA standard model: work that needs care, or routine work that is largeA standard model: work that needs care, or routine work that is largesize:L500 to 900 net lines; one PR, and the ceiling500 to 900 net lines; one PR, and the ceiling
Description
Task
| slice | size | difficulty | model | who | estimated lines |
|---|---|---|---|---|---|
| Manage retained boxes | L | routine | standard | an agent | 600 (320 code, 280 tests) |
min box cpcopies a file out of a stopped box, andmin box eventsreplays and follows its events.
Covers:
- BCLI-062
- BCLI-016
Layers:
- library:
- crates/minimal-client/src/lib.rs: a public
Clientmethod opens a session subsystem channel for a box (MINIMAL_SESSION_ID set) and streams its reply line by line, formin box events(READ_EVENTS_SUBSYSTEM, with follow) and the sftp read of a retained box formin box cp cargo nextest run -p minimal-client session_subsystem_channel_streams_reply_lines
- crates/minimal-client/src/lib.rs: a public
- client:
- crates/minimal/src/cli.rs: the verb's arguments and help in the one command model
- crates/minimal/src/cmd/mod.rs: dispatches the verb
- crates/minimal/src/cmd/boxes/events.rs (new):
min box events [--follow] [--parent]andmin box cpfrom a retained filesystem - crates/minimal/src/cmd/boxes.rs: declares the events module
- crates/minimal/src/tests.rs: the in-process minimald test harness gains this layer's tests
cargo nextest run -p minimal box_cp_reads_stopped_box_as_box_017cargo nextest run -p minimal events_jsonl_replay_schema_fieldscargo nextest run -p minimal events_follow_replays_then_tailscargo nextest run -p minimal events_parent_merges_children
Waits on:
Plan block
### T24 — Copy files out of a box and read its events
slice: S6
kind: task
covers: BCLI-062, BCLI-016
size: L
est: 320 code, 280 tests
executor: agent
difficulty: routine
model: standard
diagnostics: `min box events <box> -o jsonl` prints one event per line with `schema`, `ts`, `box`, `parent`, `type` and `data`, pinned by events_jsonl_replay_schema_fields
observability: the command's existing tracing span records the verb, the box id it resolved and the outcome
layers:
- library:
- crates/minimal-client/src/lib.rs: a public `Client` method opens a session subsystem channel for a box (MINIMAL_SESSION_ID set) and streams its reply line by line, for `min box events` (READ_EVENTS_SUBSYSTEM, with follow) and the sftp read of a retained box for `min box cp`
test: cargo nextest run -p minimal-client session_subsystem_channel_streams_reply_lines
- client:
- crates/minimal/src/cli.rs: the verb's arguments and help in the one command model
- crates/minimal/src/cmd/mod.rs: dispatches the verb
- crates/minimal/src/cmd/boxes/events.rs (new): `min box events [--follow] [--parent]` and `min box cp` from a retained filesystem
- crates/minimal/src/cmd/boxes.rs: declares the events module
- crates/minimal/src/tests.rs: the in-process minimald test harness gains this layer's tests
test: cargo nextest run -p minimal box_cp_reads_stopped_box_as_box_017
test: cargo nextest run -p minimal events_jsonl_replay_schema_fields
test: cargo nextest run -p minimal events_follow_replays_then_tails
test: cargo nextest run -p minimal events_parent_merges_children
produces:
- crates/minimal/src/cmd/boxes/events.rs (entry point)
consumes:
- crates/minimal/src/cmd/boxes/address.rs
proof: `min box cp` copies a file out of a stopped box, and `min box events` replays and follows its events.
depends on:
- blocked by #2895
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:standardA standard model: work that needs care, or routine work that is largeA standard model: work that needs care, or routine work that is largesize:L500 to 900 net lines; one PR, and the ceiling500 to 900 net lines; one PR, and the ceiling
Activity
minimal-foundry commentedon Nov 4, 2026
Done. #3016 merged.
branch
agent/2908-copy-files-out-of-a-box-and-read-its-events· epic #2879 · PR #3016bb772e80c2b7fae57cebac56a22c16ebUpdated 2026-11-05T02:45:32.025Z.