// tests/fix-round-4-5a-mutations.mjs // The mutations of fix round 4-5a, for the shared red script // (tests/helpers/red-round.sh, through tests/helpers/red-mutate.mjs). DJ's // defect was a missing test: its sentences already stood at ab6b32c, so its // pins are proven red by deleting the copy-through spans. A deletes the span // in commands/trekreview.md, B both spans in agents/review-coordinator.md; // every span must match exactly once. Moved verbatim from the heredoc the // 4-5a red script used to write. Data only; never matched by `npm test`. export const MUTATIONS = [ { key: 'DJ-A', id: 'DJ', what: 'the copy-through span in commands/trekreview.md deleted', spans: [ { file: 'commands/trekreview.md', find: /, and pass each reviewer's\s+`### Declined to Judge` lines verbatim from its saved\s+`\{project_dir\}\/\.review-out-\{reviewer\}\.md`: the coordinator copies them into\s+`## Declined to Judge`, so nothing a reviewer set aside disappears\./g, replace: '.', }, ], }, { key: 'DJ-B', id: 'DJ', what: 'both spans in agents/review-coordinator.md deleted', spans: [ { file: 'agents/review-coordinator.md', find: /^- \*\*Reviewers' Declined to Judge lines\*\* \u2014 each reviewer's own\s+`### Declined to Judge` list, verbatim\. You copy them into\s+`## Declined to Judge` \(body section 9\); you do not rule on them\.\n/gm, replace: '', }, { file: 'agents/review-coordinator.md', find: /, then every\s+line a reviewer wrote under its own `### Declined to Judge`, copied as\s+`\{reviewer\}: \{line\}` \(they are not findings: they stay out of the JSON\s+`declined_to_judge` array and do not change the verdict\)/g, replace: '', }, ], }, ];