8000 T20 — Scaffold and append entries with min init · Issue #2893 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

T20 — Scaffold and append entries with min init #2893

Open

Description

@mitodrummer

Task

slice size difficulty model who estimated lines
Inspect specs and types L routine standard an agent 500 (200 code, 300 tests)

min init writes an entry-shaped minimal.toml, and min init <entry> --type <type> appends one entry.

Covers:

  • BCLI-017
  • BCLI-018

Layers:

  • client:
    • crates/minimal/src/cli.rs: the verb's arguments and help in the one command model
    • crates/minimal/src/cmd/project.rs: min init scaffolds the entry shape and appends one entry by --type or a noun flag
    • crates/minimal/src/main.rs: failure_exit_code maps this verb's refusals to their exit codes
    • crates/minimal/src/tests.rs: the in-process minimald test harness gains this layer's tests
    • cargo nextest run -p minimal init_scaffolds_entry_shape
    • cargo nextest run -p minimal init_entry_type_appends_one
    • cargo nextest run -p minimal init_refused_type_exit3_appends_nothing
    • cargo nextest run -p minimal init_noun_flag_is_type_alias
    • cargo nextest run -p minimal init_noun_flags_exclusive_exit2_appends_nothing

Held by the maintainer (2026-11-04), released 2026-11-06: min init keeps the legacy [session] scaffold until box creation expands a spec over [defaults.<type>]. #2410 (BOX T16) added mfile::expand, and BOX T21 (#2418) wires it into box creation. The PR lists the flip to the entry shape as a residual that links #2418.

Waits on:

Plan block
### T20 — Scaffold and append entries with min init
  slice: S5
  kind: task
  covers: BCLI-017, BCLI-018
  size: L
  est: 200 code, 300 tests
  executor: agent
  difficulty: routine
  model: standard
  diagnostics: when two of `--session`, `--task`, `--agent`, `--service` and `--type` are given, `min init` prints "Pass one of --session, --task, --agent, --service or --type." and changes nothing, pinned by init_noun_flags_exclusive_exit2_appends_nothing
  observability: the command's existing tracing span records the verb, the box id it resolved and the outcome
  layers:
    - client:
      - crates/minimal/src/cli.rs: the verb's arguments and help in the one command model
      - crates/minimal/src/cmd/project.rs: `min init` scaffolds the entry shape and appends one entry by `--type` or a noun flag
      - crates/minimal/src/main.rs: `failure_exit_code` maps this verb's refusals to their exit codes
      - crates/minimal/src/tests.rs: the in-process minimald test harness gains this layer's tests
      test: cargo nextest run -p minimal init_scaffolds_entry_shape
      test: cargo nextest run -p minimal init_entry_type_appends_one
      test: cargo nextest run -p minimal init_refused_type_exit3_appends_nothing
      test: cargo nextest run -p minimal init_noun_flag_is_type_alias
      test: cargo nextest run -p minimal init_noun_flags_exclusive_exit2_appends_nothing
  produces: none
  consumes: none
  proof: `min init` writes an entry-shaped `minimal.toml`, and `min init <entry> --type <type>` appends one entry.
  depends on:
    - blocked by #2410

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 3, 2026

    @minimal-foundry
    Contributor

    Pull request #2962 is open as a draft for T20.

    branch agent/2893-scaffold-and-append-entries-with-min-init · epic #2879

    round outcome job
    1 pushed 70eb5136
    2 pushed d7bc4772
    3 pushed 80f675f1
    4 pushed e66c0655
    5 pushed a9c48dda
    6 pushed 80035446
    test exit tail
    cargo nextest run -p minimal init_scaffolds_entry_shape 0 Applying loadouts: default Running task runtime-implement-test-0 in box runtime-implement-test-0-1... Compiling paths v0.0.1 (/workbench/crates/paths) Compiling ot v0.0.1 (/workbench/crates/ot) Compiling args v0.0.1 (/workbench/crates/args) Compiling client-config v0.0.1 (/workbench/crat
    cargo nextest run -p minimal init_entry_type_appends_one 0 Applying loadouts: default Running task runtime-implement-test-1 in box runtime-implement-test-1-1... Compiling stdlib v0.0.22 (/workbench/crates/stdlib) Compiling version v0.8.0 (/workbench/crates/version) Compiling decode v0.0.1 (/workbench/crates/decode) Compiling mlog v0.0.1 (/workbe
    cargo nextest run -p minimal init_refused_type_exit3_appends_nothing 0 Applying loadouts: default Running task runtime-implement-test-2 in box runtime-implement-test-2-1... Compiling stdlib v0.0.22 (/workbench/crates/stdlib) Compiling version v0.8.0 (/workbench/crates/version) Compiling decode v0.0.1 (/workbench/crates/decode) Compiling mlog v0.0.1 (/workbe
    cargo nextest run -p minimal init_noun_flag_is_type_alias 0 Applying loadouts: default Running task runtime-implement-test-3 in box runtime-implement-test-3-1... Compiling stdlib v0.0.22 (/workbench/crates/stdlib) Compiling version v0.8.0 (/workbench/crates/version) Compiling decode v0.0.1 (/workbench/crates/decode) Compiling mlog v0.0.1 (/workbe
    cargo nextest run -p minimal init_noun_flags_exclusive_exit2_appends_nothing 0 Applying loadouts: default Running task runtime-implement-test-4 in box runtime-implement-test-4-1... Compiling stdlib v0.0.22 (/workbench/crates/stdlib) Compiling version v0.8.0 (/workbench/crates/version) Compiling decode v0.0.1 (/workbench/crates/decode) Compiling mlog v0.0.1 (/workbe

    Verify min task run agent-verify: exit 100 — the sandbox ran rustc (1.99.0), the repository pins 1.99.1 in rust-toolchain.toml; a failure here may be the newer toolchain's, not this change's d_file PASS [ 0.315s] (546/957) minimal resolver::tests::privileged_bundle_copy_refuses_a_bundle_file_swapped_after_render PASS [ 0.31

    Outside the task's layers:, so the PR is a draft:

    • crates/minimal/src/cmd/mod.rs

    Updated 2026-11-06T21:36:06.811Z.

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 3D35 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