From 5e55fe4c66f2ec6496e0489d0b266038f8c075c1 Mon Sep 17 00:00:00 2001 From: "K. Isom" Date: Wed, 23 Sep 2026 00:00:12 -0700 Subject: [PATCH] M3b plan: every task's git add includes Cargo.lock Task 04 added dependencies to toolkit and its git add line left out the lock file, so the driver stopped on an unclean tree. The lock change is folded into task 04's commit. Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/plans/M3b/01-proto-tools-hosts.md | 2 +- docs/plans/M3b/02-brokerd-fetch-url.md | 2 +- docs/plans/M3b/03-brokerd-grant-mount-rule.md | 2 +- docs/plans/M3b/04-toolkit-files.md | 2 +- docs/plans/M3b/05-toolkit-shell.md | 2 +- docs/plans/M3b/06-toolkit-fetch.md | 2 +- docs/plans/M3b/07-toolkit-addr.md | 2 +- docs/plans/M3b/08-toolkit-egress-proxy.md | 2 +- docs/plans/M3b/09-brokerd-runner-config.md | 2 +- docs/plans/M3b/10-brokerd-podman-args.md | 2 +- docs/plans/M3b/11-brokerd-container.md | 2 +- docs/plans/M3b/12-brokerd-egress.md | 2 +- docs/plans/M3b/13-brokerd-serve-runner.md | 2 +- docs/plans/M3b/README.md | 7 +++++++ 14 files changed, 20 insertions(+), 13 deletions(-) diff --git a/docs/plans/M3b/01-proto-tools-hosts.md b/docs/plans/M3b/01-proto-tools-hosts.md index 9d4e199..eefcb94 100644 --- a/docs/plans/M3b/01-proto-tools-hosts.md +++ b/docs/plans/M3b/01-proto-tools-hosts.md @@ -81,7 +81,7 @@ it if the compiler says it is unused. must show only `crates/proto/src/`. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. - [ ] **7. Log and commit.** Add your row to `docs/implementer-log.md`, then - `git add crates/proto crates/brokerd docs/implementer-log.md && git commit` + `git add crates/proto crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/02-brokerd-fetch-url.md b/docs/plans/M3b/02-brokerd-fetch-url.md index 1f250ec..89bb2f2 100644 --- a/docs/plans/M3b/02-brokerd-fetch-url.md +++ b/docs/plans/M3b/02-brokerd-fetch-url.md @@ -92,7 +92,7 @@ Search for any other: `grep -rn "HttpFetch {" crates/` must show nothing when yo - [ ] **5. Check the seal.** `grep -rn "FetchUrl {" crates/brokerd/src/` shows the struct definition, the `parse` line, and the doctest only. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/03-brokerd-grant-mount-rule.md b/docs/plans/M3b/03-brokerd-grant-mount-rule.md index 58c23ac..4d53647 100644 --- a/docs/plans/M3b/03-brokerd-grant-mount-rule.md +++ b/docs/plans/M3b/03-brokerd-grant-mount-rule.md @@ -42,7 +42,7 @@ text contains `cannot be mounted`. Other punctuation (space, `;`, `=`, `.`, `-`, - [ ] **4. See it pass.** `cargo test -p brokerd --test grants_mount --test grants`. Expected: 2 and 17 passed. - [ ] **5. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/04-toolkit-files.md b/docs/plans/M3b/04-toolkit-files.md index 7d3cae4..f9a2e47 100644 --- a/docs/plans/M3b/04-toolkit-files.md +++ b/docs/plans/M3b/04-toolkit-files.md @@ -139,7 +139,7 @@ to standard error with `write_all` (ignore their errors), and return returns early and passes if you are root; you should not be. - [ ] **5. Walk the exits.** Point at the line of your code for each numbered exit above. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/toolkit docs/dependencies.md docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/toolkit docs/dependencies.md docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/05-toolkit-shell.md b/docs/plans/M3b/05-toolkit-shell.md index 4668511..fa61270 100644 --- a/docs/plans/M3b/05-toolkit-shell.md +++ b/docs/plans/M3b/05-toolkit-shell.md @@ -67,7 +67,7 @@ it; that is expected, and `brokerd`'s time limit ends it. times; it must pass every time. - [ ] **5. Walk the steps.** Point at the line for steps 4 and 5 in particular. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/toolkit docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/toolkit docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/06-toolkit-fetch.md b/docs/plans/M3b/06-toolkit-fetch.md index 9d004ee..48f754b 100644 --- a/docs/plans/M3b/06-toolkit-fetch.md +++ b/docs/plans/M3b/06-toolkit-fetch.md @@ -79,7 +79,7 @@ once in seven runs. If you add a test that writes and runs a script, take the lo - [ ] **4. See it pass.** `cargo test -p toolkit --test fetch`. Expected: 7 passed. Run it ten times; it must pass every time. - [ ] **5. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **6. Log and commit.** `git add crates/toolkit docs/implementer-log.md && git commit` +- [ ] **6. Log and commit.** `git add crates/toolkit docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/07-toolkit-addr.md b/docs/plans/M3b/07-toolkit-addr.md index 113c013..f06ba4e 100644 --- a/docs/plans/M3b/07-toolkit-addr.md +++ b/docs/plans/M3b/07-toolkit-addr.md @@ -71,7 +71,7 @@ that are not in these tables: the test checks public neighbours just outside eac - [ ] **4. See it pass.** `cargo test -p toolkit --test addr`. Expected: 4 passed. - [ ] **5. Walk the tables.** Point at the line for each row of both tables. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/toolkit docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/toolkit docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/08-toolkit-egress-proxy.md b/docs/plans/M3b/08-toolkit-egress-proxy.md index 1b6d3a8..676fd7c 100644 --- a/docs/plans/M3b/08-toolkit-egress-proxy.md +++ b/docs/plans/M3b/08-toolkit-egress-proxy.md @@ -146,7 +146,7 @@ you. times; it must pass every time. - [ ] **5. Walk the exits.** Point at the line of your code for each of the 11 handshake steps. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/toolkit docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/toolkit docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/09-brokerd-runner-config.md b/docs/plans/M3b/09-brokerd-runner-config.md index 878878e..8095cd0 100644 --- a/docs/plans/M3b/09-brokerd-runner-config.md +++ b/docs/plans/M3b/09-brokerd-runner-config.md @@ -89,7 +89,7 @@ these checks; only `load` does, as for `ttl_ms` today. - [ ] **4. See it pass.** `cargo test -p brokerd --test config_runner --test config`. Expected: 7 and 7 passed. Then `cargo test -p brokerd`: everything passes. - [ ] **5. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/10-brokerd-podman-args.md b/docs/plans/M3b/10-brokerd-podman-args.md index e352111..a31a3d7 100644 --- a/docs/plans/M3b/10-brokerd-podman-args.md +++ b/docs/plans/M3b/10-brokerd-podman-args.md @@ -94,7 +94,7 @@ directory need not be UTF-8 (`dir.as_os_str()`), not with `format!` on `display( - [ ] **4. See it pass.** `cargo test -p brokerd --test podman_args --test runner`. Expected: 7 and 8 passed. `cargo test -p brokerd --doc`: every doctest passes. - [ ] **5. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/11-brokerd-container.md b/docs/plans/M3b/11-brokerd-container.md index f151309..675c09b 100644 --- a/docs/plans/M3b/11-brokerd-container.md +++ b/docs/plans/M3b/11-brokerd-container.md @@ -97,7 +97,7 @@ process kills the sleep and nothing keeps the pipes open. - [ ] **5. Walk the table.** Point at the line of your code for each row, and check that no row puts output into a `RunError`. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/12-brokerd-egress.md b/docs/plans/M3b/12-brokerd-egress.md index 440da01..b0ce907 100644 --- a/docs/plans/M3b/12-brokerd-egress.md +++ b/docs/plans/M3b/12-brokerd-egress.md @@ -77,7 +77,7 @@ proxy's run, the tool's run, `kill `, `rm -f `, then `rm -f -e Expected: 6 and 11 passed. Run them ten times; they must pass every time. - [ ] **5. Walk the exits.** For each of the four steps, say how the guard cleans up after it. - [ ] **6. Run the gate.** `make gate`. Expected last line: `gate: ok`. -- [ ] **7. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **7. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` ## Done when diff --git a/docs/plans/M3b/13-brokerd-serve-runner.md b/docs/plans/M3b/13-brokerd-serve-runner.md index 6e450cf..c22ec00 100644 --- a/docs/plans/M3b/13-brokerd-serve-runner.md +++ b/docs/plans/M3b/13-brokerd-serve-runner.md @@ -43,7 +43,7 @@ there today). Print the notice with `eprintln!` right after the existing and 9 passed. - [ ] **5. Run the gate.** `make gate`. Expected last line: `gate: ok`, with about 638 tests in all. -- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md && git commit` +- [ ] **6. Log and commit.** `git add crates/brokerd docs/implementer-log.md Cargo.lock && git commit` This is the last task of M3b. Stop after the commit; the review comes next. diff --git a/docs/plans/M3b/README.md b/docs/plans/M3b/README.md index 377ff0c..5329d3d 100644 --- a/docs/plans/M3b/README.md +++ b/docs/plans/M3b/README.md @@ -54,6 +54,13 @@ it at that task's end state, then the reference was deleted so it cannot be read At the end: `make gate` prints `gate: ok` with about 638 tests. +## Changes during the run + +- 2026-09-23, after task 04: task 04 adds dependencies to `toolkit`, which changes `Cargo.lock`, but + its `git add` line left the lock out, so the driver stopped on an unclean tree. The design model + folded the lock into task 04's commit and added `Cargo.lock` to every task's `git add` (a no-op + when it has not changed). The owner resumes from task 05. + ## Running it ```sh