voyage/tests/validators
Kjell Tore Guttormsen 8677836060
fix: close the gaps the review of the trial-5 fixes found
- park-attempt-files: parks in the git dir (outside the work tree, so Sub-step C.2 never registers a parked file again), reads a path with a space, names a new file under a header it cannot read, parks a symlink, never overwrites a parked file, and exits 1 while a file the attempt made is still in the tree; the upward diff is saved in one form whatever the git config.

- brief-validator: BRIEF_SC_NOT_RUNNABLE only when a later backticked span is a command; a criterion that only names a flag or a path stays prose (Handover 1 says so now).

- review ids: counted over the final list (runContract), as fill-finding-ids counts review.md; trimmed_count matches rows by id; engine-findings and fidelity-diff use computeFindingIds; the --workflow dedup keeps one source's different findings apart, the decision-23 put-back stays one copy per triplet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 20:11:08 +02:00
..
architecture-discovery.test.mjs feat(voyage)!: bulk content rewrite ultra -> voyage/trek prose [skip-docs] 2026-05-05 15:08:20 +02:00
brief-ceremony.test.mjs feat(brief): ceremony by size, one question round, logged and committed approvals 2026-10-06 19:44:42 +02:00
brief-gate-coverage.test.mjs test(eval): two-sided gate coverage for BRIEF_* BLOCKERs 2026-06-26 11:57:10 +02:00
brief-review-stamp-order.test.mjs fix(trekbrief): the review stamp covers only text the reviewer saw 2026-10-12 20:03:26 +02:00
brief-review-stamp.test.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.test.mjs test(validators): cover fable accept + unknown-model reject in both gate layers 2026-07-02 16:56:26 +02:00
intent-approval.test.mjs refactor(simplify): one source per rule, shared test helpers, a faster isolation test [skip-docs] 2026-10-12 21:06:47 +02:00
next-session-prompt-validator.test.mjs feat(voyage)!: rename produced_by field values + validator comments [skip-docs] 2026-05-05 14:42:21 +02:00
plan-gate-diff-mode.test.mjs refactor: simplify pass (trekexecute) 2026-10-16 17:03:56 +02:00
plan-gate-open-major.test.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-gate.test.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-parse-once.test.mjs refactor(plan): the plan validator parses each step once 2026-10-13 14:47:33 +02:00
plan-validator-profile-drift.test.mjs feat(voyage): emit MANIFEST_PROFILE_DRIFT warning in plan-validator strict mode — brief assumption 7 2026-05-09 10:02:53 +02:00
plan-validator-v18.test.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
plan-validator.test.mjs fix(voyage): S26 — parse plan_version prose form (S22 defect #2/#3) 2026-06-19 21:59:31 +02:00
plan-version-1-9.test.mjs fix(plan): a 1.9 wrapped line keeps its paths only after a comma or in an empty entry 2026-10-14 10:29:35 +02:00
profile-validator.test.mjs feat(profiles): add built-in fable profile (all six phases on fable) 2026-07-02 16:59:26 +02:00
progress-validator.test.mjs fix(validators): the progress validator knows stopped and blocked 2026-10-05 17:32:54 +02:00
query-privacy-gate.test.mjs fix(validators): hard-block the token formats the run-length patterns missed 2026-08-12 22:03:43 +02:00
research-validator.test.mjs feat(voyage)!: rename type discriminators across validators + fixtures [skip-docs] 2026-05-05 14:40:25 +02:00
review-validator.test.mjs fix(review): close the gate's fail-open paths an independent review found 2026-10-06 20:03:16 +02:00
runnable-checks.test.mjs fix: close the gaps the review of the trial-5 fixes found 2026-10-18 20:11:08 +02:00
session-state-validator.test.mjs feat(voyage)!: bulk content rewrite ultra -> voyage/trek prose [skip-docs] 2026-05-05 15:08:20 +02:00