repo-mailbox/scripts
Kjell Tore Guttormsen 20fcd67f4a test(board): red eval for the PLAN column, before the column exists
scripts/plan-column-eval.sh is the gate for a display-only PLAN column
(operator decision 2026-09-17): '-' without a root PLAN.md, otherwise the
whole days PLAN.md's mtime lies behind the last commit.

Seven rows: three fixtures with three different values ('-', '0d', and an
Nd computed from the fixture's own timestamps); docs/PLAN.md and a lowercase
plan.md read '-' (the case trap is asserted armed on APFS, so the byte-exact
name check is real); --row carries plan= equal to the table cell; the column
is kept out of the sort, the --plan blocks and SUM (two repos whose PLAN
values are swapped between runs must keep their order); a replay with many
commits, the destination in docs/*.local.md and a release tag reads '-' at
every step; every scanned repo has a value; the legend says the column does
not judge whether a criterion can be falsified and that touch/checkout reset
the mtime.

Kept outside the five suites and npm test on purpose: committed red checks
inside board-selftest.sh would turn main red and break the README count
check. The build session moves them in once green.

Today: plan-column-eval 9 passed, 24 failed (fixture ground truth green,
every column check red because the column is missing). Suites unchanged:
coord 257, board 427, route 73, orders 116, guard 54; npm test 12/12.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 15:36:06 +02:00
..
board-selftest.sh feat(route,board): strike the advisor rule, add board.sh --row <repo> 2026-09-12 23:45:47 +02:00
board.sh feat(route,board): strike the advisor rule, add board.sh --row <repo> 2026-09-12 23:45:47 +02:00
brief-nightly.sh feat(brief): render the nightly cross-repo briefing without a model 2026-08-01 22:38:46 +02:00
coord-count.sh fix(infra): a failed measurement must never render as a reassuring value 2026-08-26 12:15:05 +02:00
coord-done.sh feat(engine): make a bulk close state what Rule 7 says must be stated 2026-07-31 15:48:42 +02:00
coord-inbox.sh feat(engine): let a message say it needs no answer, and count debt without losing sight of the rest 2026-07-31 15:46:14 +02:00
coord-order-claim.sh fix(orders): call the order-verbs by absolute path, not bare PATH names 2026-08-18 09:16:59 +02:00
coord-order-done.sh fix(orders): narrow the return-reason escape so a plain arrow survives 2026-08-17 21:24:37 +02:00
coord-order-inbox.sh fix(orders): a pending order's age comes from the filename, not the mtime 2026-09-03 22:17:26 +02:00
coord-order-send.sh fix(coord): refuse a control character in --to instead of sanitizing it 2026-08-18 17:00:34 +02:00
coord-selftest.sh feat(sweep): schedule the FYI sweep - invocation was the gap, not the mechanism 2026-09-04 08:20:33 +02:00
coord-send.sh fix(coord): refuse a control character in --to instead of sanitizing it 2026-08-18 17:00:34 +02:00
coord-sweep.sh fix(coord-send): stop rejecting dot-prefixed repo names 2026-08-09 21:09:23 +02:00
orders-selftest.sh fix(orders): a pending order's age comes from the filename, not the mtime 2026-09-03 22:17:26 +02:00
plan-column-eval.sh test(board): red eval for the PLAN column, before the column exists 2026-09-17 15:36:06 +02:00
route-selftest.sh feat(route,board): strike the advisor rule, add board.sh --row <repo> 2026-09-12 23:45:47 +02:00
route.sh feat(route,board): strike the advisor rule, add board.sh --row <repo> 2026-09-12 23:45:47 +02:00
state-line-guard-selftest.sh fix(infra): a failed measurement must never render as a reassuring value 2026-08-26 12:15:05 +02:00