voyage/lib/validators
Kjell Tore Guttormsen 2d29966f51
fix(plan): an open MAJOR stops the plan; after the last round the operator decides
voyage-lekerepo trial (2026-10-06) point 6, operator decision 2026-10-08
(«samme skala, og du spør»): the critics rated a non-discriminating test
minor in round 3, there was no way to fix it after the last round, it was
built, and /trekreview called the same weakness MAJOR (MISSING_TEST).

- plan-critic, scope-guardian: rate on the review catalogue's tiers; a test
  that cannot fail on a wrong implementation is major, never minor.
- plan-gate: an open MAJOR stops (PLAN_GATE_OPEN_MAJOR: revise and run the
  next round; PLAN_GATE_OPEN_MAJOR_FINAL after the last round: ask the
  operator). --accept-open records "build as is" after their yes, bound to
  the round and the plan hash; never for a blocker.
- trekplan Phase 9: REVISE after the last round asks fix now (one extra
  round) or build as is, instead of carrying the majors silently.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 07:07:00 +02:00
..
architecture-discovery.mjs chore(voyage): scrub ultra-cc-architect references from source 2026-05-05 15:51:17 +02:00
brief-review-stamp.mjs fix(plan): every exploration agent runs; the brief is reviewed again only when it changed 2026-10-08 07:01:44 +02:00
brief-validator.mjs fix(validate): a check that can never run is caught when the brief or plan is written 2026-10-08 06:42:33 +02:00
intent-approval.mjs feat(brief): ceremony by size, one question round, logged and committed approvals 2026-10-06 19:44:42 +02:00
next-session-prompt-validator.mjs feat(voyage)!: bulk content rewrite ultra -> voyage/trek prose [skip-docs] 2026-05-05 15:08:20 +02:00
plan-gate.mjs fix(plan): an open MAJOR stops the plan; after the last round the operator decides 2026-10-08 07:07:00 +02:00
plan-validator.mjs fix(validate): a check that can never run is caught when the brief or plan is written 2026-10-08 06:42:33 +02:00
profile-validator.mjs feat(validators): add fable to BASE_ALLOWED_MODELS with accept/reject coverage 2026-07-02 16:54:08 +02:00
progress-validator.mjs feat(execute): one fresh helper per step, a controller on the diff, proof by command 2026-10-06 19:58:18 +02:00
query-privacy-gate.mjs fix(validators): hard-block the token formats the run-length patterns missed 2026-08-12 22:03:43 +02:00
research-validator.mjs feat(voyage)!: rename type discriminators across validators + fixtures [skip-docs] 2026-05-05 14:40:25 +02:00
review-validator.mjs fix(review): close the gate's fail-open paths an independent review found 2026-10-06 20:03:16 +02:00
session-state-validator.mjs feat(voyage)!: bulk content rewrite ultra -> voyage/trek prose [skip-docs] 2026-05-05 15:08:20 +02:00