8000 T17 — Read one box's audit trail with min box audit · Issue #2269 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

T17 — Read one box's audit trail with min box audit #2269

Closed

Description

@norrietaylor

Task

slice size difficulty model who estimated lines
Clone, push and gh from a box with no token in it L routine standard an agent 600 (300 code, 300 tests)

min box audit web lists only that box's decisions and names the id it read.

Covers:

  • BEP-042

Layers:

  • cli:
    • crates/minimal/src/cli.rs: min box audit <box|self> | --parent <box|self> [-o jsonl] [--follow]
    • crates/minimal/src/cmd/mod.rs: dispatch and module line
    • crates/minimal/src/cmd/box_audit.rs (new): the BEP-042 grammar: one box id, a name, --follow, --parent, self refused
    • crates/bep/src/audit.rs: a reader over the log for the client
    • cargo nextest run -p minimal box_audit_filters_to_one_box
    • cargo nextest run -p minimal box_audit_name_reads_live_else_latest_creation
    • cargo nextest run -p minimal box_audit_follow_replays_then_tails
    • cargo nextest run -p minimal box_audit_parent_merges_children
    • cargo nextest run -p minimal box_audit_self_unenrolled_refused_with_error

Waits on:

Plan block
### T17 — Read one box's audit trail with min box audit
  slice: S0
  kind: task
  covers: BEP-042
  size: L
  est: 300 code, 300 tests
  executor: agent
  difficulty: routine
  model: standard
  diagnostics: inside a box, `min box audit self` prints "Reading your own audit trail from inside a box needs a Gatehouse. On the host, run `min box audit <box>`." on stderr and exits non-zero, pinned by box_audit_self_unenrolled_refused_with_error; a name prints "Showing <name> (box <id>)." before the records
  observability: one debug log line per read naming the box id and the segments read
  layers:
    - cli:
      - crates/minimal/src/cli.rs: `min box audit <box|self> | --parent <box|self> [-o jsonl] [--follow]`
      - crates/minimal/src/cmd/mod.rs: dispatch and module line
      - crates/minimal/src/cmd/box_audit.rs (new): the BEP-042 grammar: one box id, a name, `--follow`, `--parent`, `self` refused
      - crates/bep/src/audit.rs: a reader over the log for the client
      test: cargo nextest run -p minimal box_audit_filters_to_one_box
      test: cargo nextest run -p minimal box_audit_name_reads_live_else_latest_creation
      test: cargo nextest run -p minimal box_audit_follow_replays_then_tails
      test: cargo nextest run -p minimal box_audit_parent_merges_children
      test: cargo nextest run -p minimal box_audit_self_unenrolled_refused_with_error
  produces:
    - crates/minimal/src/cmd/box_audit.rs (entry point)
  consumes:
    - crates/bep/src/audit.rs
  proof: `min box audit web` lists only that box's decisions and names the id it read.
  depends on:
    - blocked by #2262
    - blocked by #2267

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 Oct 17, 2026
  2. minimal-foundry commented on Oct 20, 2026

    @minimal-foundry
    Contributor

    Done. #2457 merged.

    branch agent/2269-read-one-box-s-audit-trail-with-min-box-audit · epic #1501 · PR #2457

    round outcome job
    1 pushed 426fb110
    2 pushed 4cb069ae
    3 pushed e5763a76
    4 pushed e3b1671a
    5 pushed 180ff0dd
    6 pushed 6e722c09
    6 changed nothing: Round 6 changes no code. The one thread does not hold, see its verdict. I ran no test line this round because the tree did not change from 174dd48. The runner re-runs every test: line at the branch h 62cd11c8
    7 changed nothing: No code change this round. The e2e job failed in its 'Install nextest' step (taiki-e/install-action in .github/workflows/ci-macos.yml), with exit code 100 on the self-hosted macOS runner. That step ru ff0505cb

    Updated 2026-10-20T22:48:54.757Z.

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