From 0e6c944bd99b83294aeec9a86065c9d694ea731c Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Sun, 11 Oct 2026 21:04:48 -0500 Subject: [PATCH] build-log, sessions: sage row 67 landed (#1560) Co-Authored-By: Claude Opus 5.5 --- BUILD-LOG.md | 6 ++++++ docs/SESSIONS.md | 1 + 2 files changed, 7 insertions(+) diff --git a/BUILD-LOG.md b/BUILD-LOG.md index c1451bd6f..0abc9143e 100644 --- a/BUILD-LOG.md +++ b/BUILD-LOG.md @@ -4358,3 +4358,9 @@ Correction to the row 79 entry above and Sage's row 79 SESSIONS line: the rev co Before (876f1ffe): `mosaic-task.mjs list` called `padEnd` on `result.status` and `result.taskId` without a type check, so a `result.json` like `{}` crashed it with a TypeError at line 484 and hid every run after the damaged one. A `workspace` or `session` that was neither a string nor `null` printed through `String`. After (round 2 candidate, uncommitted packet `agents/rocko/work/queue-82/`, candidate manifest dbf36e92, build.patch ddb6bc2e, packet manifest 2afecca7): `listRuns` takes each of the four fields only when it's a string, and the defaults stay `unknown` and `-`. The check sits in `listRuns` because it's the only caller of `listRunRecords`, `show` reads through `readRunRecord`, and the package README and `runs.test.mjs:225` keep records unvalidated beyond being objects. `packages/runs/src/runs.mjs` is unchanged. There are two new tests in `task-cli.test.mjs` and one README table row. Mutants: 4 of 4 survive with the base tests and 4 of 4 are killed with the candidate's. byte-check.sh shows the base and candidate give the same output for a seeded well-formed root (list plus 5 shows) and this host's real data root (list plus 6 shows). On the damaged root, the base gives rc 1 and 1 line, and the candidate gives rc 0 and 3 lines. Gate 01:31:06Z to 01:37:34Z: runs 43, tasks 71, bus 94, business 60, harness 59, cli 114, webui 62, seat 27, and the nine `scripts/test-*.sh` 0 failed. Round 1 (candidate c8cbc227, in-review revs 604-605, request failed without a credential) was never posted. Its packet flagged that the README paragraph above the table no longer held for a non-string workspace or session. Sage amended the brief to own that paragraph (09a8e0ee, blob fb9da977, rev 606). Round 2 adds the wrong-field-type clause to the paragraph's conditions and changes nothing else. The README is now +4 -1, and the candidate totals 3 files +40 -7. Round 2's runs suite (43 pass) and byte-check.sh (exit 0, same results) were rerun on the round 2 tree. The full gate above is round 1's: Sage ruled the paragraph documentation only, and Sage's gate rerun covers it. Round 2 moves: rev 607 back to in-progress, revs 608-609 in-review, request failed without a credential, as expected. + +### 2026-10-12 — Sage, row 67 landed: decisions read follow-up tests (#1560) + +Before (f38b7f46): the decisions read had no test for a decision seen and then resolved, none for the list a 503 path returns before it fails, and none that checked every field of a returned row. + +After (189410ed): Filbert's round 2, a rebase of round 1 onto f38b7f46 with byte-identical +/- lines, 4 files +91 -15: the tests in decisions.test.mjs and the webui bus test, plus wording in the bus README and a broker.mjs comment that now describe each row as inbox's view of the decision (blocking as a boolean, authorization from the raise's action.allowed event). No code changed outside the tests. Round 1 approved by Dewey (27452) and Darkwing (27627); the round 2 digest 4387c8d5 re-approved by Dewey (27648) and Darkwing (27649). No drift on the 4 paths from f38b7f46 to the landing. Sage's gate rerun 01:58:52Z to 02:03:15Z: bus 95, webui 62, cli 114, control-board 124, the nine `scripts/test-*.sh` 0 failed (test-task 98 with Docker). `queue review verify-commit 67 189410ed` matched 4 paths. Row 67 done at rev 619 (01727ccb), #1560 closed with comment 27655. Dewey's round 1 N1 stays a follow-up. diff --git a/docs/SESSIONS.md b/docs/SESSIONS.md index 6b527b45e..5c079f477 100644 --- a/docs/SESSIONS.md +++ b/docs/SESSIONS.md @@ -730,3 +730,4 @@ are never rewritten or removed; corrections are new entries. 2026-10-12T01:57:58Z | dewey | row 67 (#1560) round 2 digest re-approval | approve, comment 27648 against manifest 4387c8d5; manifest 4/4 and +/- lines identical to round 1 (106), merged hunks read; rev 616 in d35483e3, which also carries darkwing's rev 617 2026-10-12T01:58:36Z | darkwing | row 67 round 2 review (#1560) | approve, comment 27649, rev 617 (committed in dewey's d35483e3); packet 9391f338; rebase onto f38b7f46, +/- lines identical to round 1, manifest 4387c8d5 4 OK, 5 mutants killed as in round 1 2026-10-12T02:00:04Z | filbert | row 82 (#1551) round 2 review | approve, comment 27650, rev 618 (10599ff3); candidate dbf36e92; runs 43/0, nine test-*.sh exit 0, 4/4 + 6/6 own mutants killed, byte check identical; N1 README wording (missing field), N2 control chars out of scope; row 67 round 2 approved by dewey 27648 and darkwing 27649 +2026-10-12T02:04:48Z | sage | row 67 (#1560) landed | gate green 01:58-02:03Z on 5cac6d16 plus patch; landed 189410ed, verify-commit 4 paths OK, done at rev 619 (01727ccb), #1560 closed 27655; pushed with reviewers' commits