8000 T24 — Copy files out of a box and read its events · Issue #2908 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

T24 — Copy files out of a box and read its events #2908

Closed

Description

@mitodrummer

Task

slice size difficulty model who estimated lines
Manage retained boxes L routine standard an agent 600 (320 code, 280 tests)

min box cp copies a file out of a stopped box, and min box events replays and follows its events.

Covers:

  • BCLI-062
  • BCLI-016

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
    • 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
    • cargo nextest run -p minimal box_cp_reads_stopped_box_as_box_017
    • cargo nextest run -p minimal events_jsonl_replay_schema_fields
    • cargo nextest run -p minimal events_follow_replays_then_tails
    • cargo 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

Activity

  1. added
    kind:taskA task the plan skill rendered; the body carries ## Task
    size:L500 to 900 net lines; one PR, and the ceiling
    model:standardA standard model: work that needs care, or routine work that is large
    on Nov 3, 2026
  2. minimal-foundry commented on Nov 4, 2026

    @minimal-foundry
    Contributor

    Done. #3016 merged.

    branch agent/2908-copy-files-out-of-a-box-and-read-its-events · epic #2879 · PR #3016

    round outcome job
    1 pushed bb772e80
    2 pushed c2b7fae5
    3 pushed 7cebac56
    4 pushed a22c16eb

    Updated 2026-11-05T02:45:32.025Z.

  3. added
    needs-humanAn agent handed off; a human must act, then clear this label. Set by defer and handoffs.
    on Nov 4, 2026
  4. removed
    needs-humanAn agent handed off; a human must act, then clear this label. Set by defer and handoffs.
    on Nov 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind:taskA task the plan skill rendered; the body carries ## Taskmodel:standardA standard model: work that needs care, or routine work that is largesize:L500 to 900 net lines; one PR, and the ceiling

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0