feat(coord,board): flag mailboxes no session has ever read (WP1d detection half)
coord-count.sh gains a fourth TSV column: "-" when a mailbox has .origin (a real session has read it via SessionStart), otherwise the age in whole days of the oldest pending message. .origin is only written by coord-inbox.sh's non---repo path, so its absence means the mailbox is never reached by normal injection — a genuine dead letter, not merely slow. board.sh's --brief surfaces mailboxes past the 3-day threshold as a new "ALDRI LEST" section, mirroring the existing orphan-mailbox listing. This is WP1d's detection half only (per .claude's coord bestilling 2026-08-14); the action half (report-to-sender / retract) is unapproved design, not built here. coord-selftest.sh: 191 -> 197 checks. board-selftest.sh: 175 -> 178 checks (net +3; section 16 adds 3 new fixtures on top of the existing 175 baseline, some pre-existing counts shift with the trailing column). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0194eV8b6BXNv6aKLovP8TP6
This commit is contained in:
parent
44fb34ab72
commit
19c0c1010b
6 changed files with 211 additions and 18 deletions
|
|
@ -16,7 +16,7 @@ marketplace plugin. Three components, one boundary:
|
|||
`coord-done.sh` archives, `coord-count.sh` counts without delivering,
|
||||
`coord-sweep.sh` closes the aged FYI backlog machine-wide.
|
||||
Everything is pinned by `coord-selftest.sh`
|
||||
(191 checks, throwaway mailbox via `CLAUDE_COORD_DIR`).
|
||||
(197 checks, throwaway mailbox via `CLAUDE_COORD_DIR`).
|
||||
|
||||
**`coord-sweep.sh` is the only path that closes a message with no human in
|
||||
the loop, and every constraint on it follows from that.** It may close exactly
|
||||
|
|
@ -123,7 +123,7 @@ marketplace plugin. Three components, one boundary:
|
|||
- **Board (`scripts/board.sh`):** cross-repo attention board. Reads STATE.md
|
||||
next-step blocks + board lines, `git status`, and mailbox pending counts, and
|
||||
prints one line per repo. Read-only by construction: it writes to no repo, no
|
||||
STATE.md and no mailbox. Pinned by `board-selftest.sh` (152 checks).
|
||||
STATE.md and no mailbox. Pinned by `board-selftest.sh` (178 checks).
|
||||
|
||||
**It lives here because the mailbox is one of its three inputs, and it carries
|
||||
the same axis distinction the mailbox does.** A pending count means *others
|
||||
|
|
@ -429,8 +429,8 @@ obligations in another repo.
|
|||
- Zero dependencies everywhere: bash + coreutils in the engine, `node:`
|
||||
builtins only in hook and tests.
|
||||
- TDD: no behavior change without a failing selftest check first.
|
||||
`bash scripts/coord-selftest.sh` must exit 0 (191/191),
|
||||
`bash scripts/board-selftest.sh` must exit 0 (152/152),
|
||||
`bash scripts/coord-selftest.sh` must exit 0 (197/197),
|
||||
`bash scripts/board-selftest.sh` must exit 0 (178/178),
|
||||
`bash scripts/route-selftest.sh` must exit 0 (69/69) and
|
||||
`bash scripts/state-line-guard-selftest.sh` must exit 0 (21/21).
|
||||
- English for all code, docs, and commit messages (public repo). Norwegian
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue