M3b plan: follow-up tasks 14 to 17 for the review's lower findings

14 moves the pipe handling out of container.rs (a pure move, replayed on its
own); 15 starts threads with Builder and bounds output collection with a 2 s
grace period; 16 escapes container errors in the log and fixes two texts; 17
fixes toolkit's thread start, casts and the egress-proxy form. Each checked
against a reference, which is not kept. Tips T24 to T26 from this run.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-23 15:33:23 -07:00
co-authored by Claude Opus 5.5
parent c3aaecdae2
commit a57a1305e7
11 changed files with 695 additions and 7 deletions
+7 -3
View File
@@ -51,8 +51,12 @@ it at that task's end state, then the reference was deleted so it cannot be read
| 11 | `11-brokerd-container.md` | the Podman runtime | `container.rs`, `support/fake_podman.rs` | reference; 20 runs clean |
| 12 | `12-brokerd-egress.md` | the proxy's lifecycle for `http_fetch` | `container_egress.rs` | reference; 20 runs clean |
| 13 | `13-brokerd-serve-runner.md` | `brokerd serve` uses the runtime | `serve_runner.rs` | reference |
| 14 | `14-brokerd-pipes-module.md` | review follow-up: the pipe handling moves to `pipes.rs`, unchanged | none new | replayed on its own |
| 15 | `15-brokerd-pipes-grace.md` | review findings 3 and 4: `thread::Builder`; a 2 s grace period for the output | `container_grace.rs` | reference; 5 runs clean |
| 16 | `16-brokerd-log-escaping.md` | review findings 5 and 7: container errors escaped in the log; two texts | `container_log.rs`, `notices.rs` | reference; red without it |
| 17 | `17-toolkit-nits.md` | review findings 3 and 7 in `toolkit` | `egress_form.rs` | reference; red without it |
At the end: `make gate` prints `gate: ok` with about 638 tests.
At the end of task 13: about 638 tests; at the end of task 17: about 649.
## Changes during the run
@@ -85,8 +89,8 @@ At the end: `make gate` prints `gate: ok` with about 638 tests.
- 2026-09-23, after the review: two plan defects found on straylight were fixed by the design
model: `curl` gains `--globoff` (and a leading `--disable`), since `[1-3]` in a URL made three
requests; both `podman run`s gain `--pull=never`, since a missing image made Podman try to pull.
The given `fetch.rs` and the six golden files changed with them. Follow-up tasks 14 to 16 are for
the implementer.
The given `fetch.rs` and the six golden files changed with them. Follow-up tasks 14 to 17 are for
the implementer; run them with `tools/run-plan.sh docs/plans/M3b 14`.
## Running it