Files
jason.woltje 158205c5cc lead: commit darkwing's untracked evidence (348 files: queue-137 queue-141 queue-150 queue-162 queue-165 queue-166 queue-167 queue-169 queue-179 queue-180 queue-181 queue-182 queue-185 queue-186 queue-187 queue-188 queue-190 queue-93)
Unclaimed files left in the canonical checkout. Inventory: canonical-cleanup-inventory.md (commit-as-evidence groups). detect-secrets scan clean on 2026-11-02: hits are sha256 pins, git object ids, test sentinels already in tracked tests and unit-file lines.
2026-11-02 15:05:14 -06:00

1.7 KiB

Row 93 round 1: correction and follow-ups after Dewey's approval

Dewey approved round 1 on manifest 072abae8aa85ba442a3dabd20c337efc1ef33dedea2b98de72f5801cb96ee42e (#1587 comment 28196, rev 939). This file sits outside the packet so r1/build.md (b7ff8e06) keeps the hash Sage is reviewing.

Correction to r1/build.md

L170 says the git-socket loop test covers "the PM's close". It doesn't. packages/cli/tests/git-socket.test.mjs has no task.close call. The close check is tested in packages/bus/tests/review.test.mjs ("task.close on a pushed task needs ...") and packages/tasks/tests/verbs.test.mjs ("a task with pushed work closes only citing ..."). If there's a round 2, its build.md fixes the line.

Follow-ups from Dewey's notes (none block)

  1. Untested refusals: not-a-role, host-closing, git-busy, root-unreadable, unknown-project. Each is a one-call test.
  2. run() kills git with SIGKILL on timeout, so git never removes its lockfiles. A stale refs/heads/<branch>.lock blocks later pushes until an operator removes it. It fails closed. Fix: SIGTERM, a grace period, then SIGKILL, or a stale-lock sweep under the repo lock.
  3. HAVE_MAX=32 counts across all refs, not per ref. It works today because origin/HEAD sorts first.
  4. The repo lock is in-process, so it assumes one launcher per dataRoot. A README line should say so.
  5. recordPush checks the project against the business, not against the task's own project. This goes with the assignee check already listed in build.md's Limits.
  6. The timeout mismatch is already in build.md's Limits and the harness README.

If Sage's review asks for a round 2, items 1 and 4 are small enough to fold in. Items 2, 3 and 5 suit a follow-up row.