Twinned from https://github.com/cfsh/ninefold/issues/591 by tools/beads/import_github.py's reconcile pass.
Suggestions from ninefold-reviewer's review of #589. All advisory — #589 converged and none of these blocked it. Unclaimed.
origin/main" is not true on the box this section is written for (DEVEL.md:191)The clone is only ever synced by REVIEWER_SELF_SYNC=1, and per tools/reviewer/README.md:167 that flag is set in exactly one place: the sandbox box's schtasks job. The section's own closing paragraph tells the reader *not* to stand up a second dispatcher — so on the machine this section provisions, nothing refreshes ~/agents/ninefold-reviewer after gh repo clone. It sits at the sha it was cloned at while the reviewer reads it for context, with no local symptom.
Once #578 lands this becomes true again by a different mechanism: review_now.py:337 passes REVIEWER_SELF_SYNC=1 itself. So the fix is a rewording, not a new step — credit the tool, not "the dispatcher".
DEVEL.md:193-204)§4 verifies with dispatch.py --dry-run, which is right and safe, but nothing in the section says what to actually run afterwards. On main today the only answer is a bare dispatch.py <n> — and that is a real trap:
write_heartbeat is enabled=not args.dry_run (tools/reviewer/dispatch.py:984, :1084) and does path.parent.mkdir(parents=True, exist_ok=True) (:163), so one explicit real run creates ~/.ninefold-reviewer/ and stamps a heartbeat;stale_after = interval * 3) poll.py:327 reports ⚠ STALE-DISPATCH: last good dispatcher tick was Nm ago … Reviews and label reconciliation have stopped, permanently, on a box where no cron will ever refresh it;CLAUDE.md ranks above everything and which pins every session's cron at 30m — the same outcome the Gotchas bullet at DEVEL.md:215 warns about, reached by a route it does not mention, and its remedy ("check whether that directory exists and remove it") does not stick, because the next on-demand review re-creates it.#578 engineers this away (--on-demand stamps nothing) and review_now.py is the entry point. One sentence pointing at it, added when #578 merges, closes both halves. Related but distinct from #581 item 3, which is about the stray dir the *test suite* used to leave behind.
DEVEL.md:30)notes/machines.md still frames the world as two environments; #582 counts three (sandbox box, WSL office box, Linux gating host) and #589 was written from the third. A doc for setting up a *new* machine invalidates its own count as soon as it is followed. "Every box" reads correctly at any n.
Refs #590 missing from the PR body#590 is named in the body prose and is the artifact of the fourth ask in the same chat message, but without a Refs keyword GitHub creates no cross-link — and #590 already Refs #589 in the other direction.
---
Not filed, deliberately: the "everything from Tier-0 reviewer credentials onward is platform-neutral" line sits above a Gotchas bullet about /etc/profile.d/ and a chmod 600 that is close to a no-op under Git Bash. Both are cosmetic and neither misleads anyone into a wrong action.
None.
No comments.