8000 T9 — End a box when its entrypoint returns, never for idleness or client loss · Issue #2401 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

T9 — End a box when its entrypoint returns, never for idleness or client loss #2401

Closed

Description

@mitodrummer

Task

slice size difficulty model who estimated lines
Tasks leave exited boxes L needs care strongest an agent 600 (360 code, 240 tests)

A session whose shell exits ends exited, with no prompt.

Covers:

  • BOX-015
  • BOX-038

Layers:

  • runtime:
    • crates/minimald/src/box_runtime.rs: entrypoint return ends box
    • crates/minimald/src/box_runtime/binding.rs: client loss never stops; no prompt
    • crates/minimald/src/box_runtime/tests.rs: tests
    • cargo nextest run -p minimald until_complete_ends_on_entrypoint_return_without_client
  • actor:
    • crates/minimald/src/box_actor.rs: records exited and code
    • crates/minimald/src/box_actor/host.rs: idleness never stops
    • crates/minimald/src/box_actor/tests.rs: tests
    • cargo nextest run -p minimald daemon_never_stops_for_idle_or_client_loss

Waits on:

Plan block
### T9 — End a box when its entrypoint returns, never for idleness or client loss
  slice: S2
  kind: task
  covers: BOX-015, BOX-038
  size: L
  est: 360 code, 240 tests
  executor: agent
  difficulty: needs care
  model: strongest
  diagnostics: daemon log names each box's exit
  observability: exited event carries reason and code
  layers:
    - runtime:
      - crates/minimald/src/box_runtime.rs: entrypoint return ends box
      - crates/minimald/src/box_runtime/binding.rs: client loss never stops; no prompt
      - crates/minimald/src/box_runtime/tests.rs: tests
      test: cargo nextest run -p minimald until_complete_ends_on_entrypoint_return_without_client
    - actor:
      - crates/minimald/src/box_actor.rs: records exited and code
      - crates/minimald/src/box_actor/host.rs: idleness never stops
      - crates/minimald/src/box_actor/tests.rs: tests
      test: cargo nextest run -p minimald daemon_never_stops_for_idle_or_client_loss
  produces: none
  consumes: none
  proof: A session whose shell exits ends exited, with no prompt.
  depends on:
    - blocked by #2399

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:strongestThe strongest model available: unknown ground, or large work that needs care
    on Oct 19, 2026
  2. minimal-foundry commented on Nov 2, 2026

    @minimal-foundry
    Contributor

    Done. #2850 merged.

    branch agent/2401-end-a-box-when-its-entrypoint-returns-never-for · epic #2236 · PR #2850

    round outcome job
    1 changed nothing: Changed nothing in this round. The fix for the failed checks is outside the layers of this task. Cause: native-daemon-e2e fails with "session ... still listed after answering 'Delete' at the exit pro e532c124
    2 changed nothing: Revise round 2. I made no change this round. The failed checks are a conflict in the plan, and I cannot fix them inside this task's layers. Cause: every box today is lifetime = "until_complete". crat 165869e9
    3 pushed 5569f17d
    4 pushed 14ccf55b
    5 pushed 03d32e0e
    6 pushed 2cc0c164
    7 pushed 97d8c353
    8 pushed 2086284c
    8 changed nothing: The merge of origin/main with T10 (#2852) is already on the branch at 8178ac9, so this round needed no new commit. I checked the resolution against the note. Binding::run keeps the ProcessExited-if-e 23dc1cc6

    Updated 2026-11-03T03:15:50.601Z.

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:strongestThe strongest model available: unknown ground, or large work that needs caresize: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