feat(voyage)!: rename commands, templates, fixtures for v4.0.0 [skip-docs]

This commit is contained in:
Kjell Tore Guttormsen 2026-05-05 14:13:44 +02:00
commit 47a4ad47d8
23 changed files with 99 additions and 98 deletions

View file

@ -20,7 +20,7 @@ import { runHook } from '../helpers/hook-helper.mjs';
const HERE = dirname(fileURLToPath(import.meta.url));
const ROOT = join(HERE, '..', '..');
const COMMAND_FILE = join(ROOT, 'commands', 'ultracontinue-local.md');
const COMMAND_FILE = join(ROOT, 'commands', 'trekcontinue.md');
const PRE_BASH = join(ROOT, 'hooks', 'scripts', 'pre-bash-executor.mjs');
function readCommand() {

View file

@ -67,14 +67,14 @@ test('templates/plan-template.md declares plan_version: 1.7', () => {
assert.match(tpl, /plan_version:\s*['"]?1\.7['"]?/);
});
test('commands/ultraexecute-local.md still parses v1.7 plan schema', () => {
const cmd = read('commands/ultraexecute-local.md');
test('commands/trekexecute.md still parses v1.7 plan schema', () => {
const cmd = read('commands/trekexecute.md');
const tpl = read('templates/plan-template.md');
const tplVersion = (tpl.match(/plan_version:\s*['"]?([\d.]+)['"]?/) || [])[1];
assert.ok(tplVersion, 'templates/plan-template.md missing plan_version');
assert.ok(
cmd.includes(`plan_version`) || cmd.includes(`Step N:`) || cmd.includes('### Step '),
'commands/ultraexecute-local.md should reference v1.7 plan-schema parsing',
'commands/trekexecute.md should reference v1.7 plan-schema parsing',
);
});
@ -96,7 +96,7 @@ test('settings.json no longer carries vestigial exploration block', () => {
test('CLAUDE.md mentions all five pipeline commands', () => {
const md = read('CLAUDE.md');
for (const c of ['/ultrabrief-local', '/ultraresearch-local', '/ultraplan-local', '/ultraexecute-local', '/ultrareview-local']) {
for (const c of ['/trekbrief', '/trekresearch', '/trekplan', '/trekexecute', '/trekreview']) {
assert.ok(md.includes(c), `CLAUDE.md missing reference to ${c}`);
}
});
@ -114,7 +114,7 @@ test('HANDOVER-CONTRACTS.md contains Handover 7 section (session-state)', () =>
assert.ok(
text.includes('## Handover 7'),
'docs/HANDOVER-CONTRACTS.md should document Handover 7 (.session-state.local.json) ' +
'consumed by /ultracontinue',
'consumed by /trekcontinue',
);
assert.ok(
text.includes('.session-state.local.json'),
@ -136,7 +136,7 @@ test('session-state-validator has CLI shim', () => {
assert.ok(
text.includes('import.meta.url === '),
'lib/validators/session-state-validator.mjs should expose the standard CLI shim ' +
'(if (import.meta.url === `file://${process.argv[1]}`)) so /ultracontinue can call it from Bash',
'(if (import.meta.url === `file://${process.argv[1]}`)) so /trekcontinue can call it from Bash',
);
});
@ -145,7 +145,7 @@ test('next-session-prompt-validator has CLI shim', () => {
assert.ok(
text.includes('import.meta.url === '),
'lib/validators/next-session-prompt-validator.mjs should expose the standard CLI shim ' +
'(if (import.meta.url === `file://${process.argv[1]}`)) so /ultracontinue Phase 1.5 can call it from Bash',
'(if (import.meta.url === `file://${process.argv[1]}`)) so /trekcontinue Phase 1.5 can call it from Bash',
);
});
@ -177,11 +177,11 @@ test('HANDOVER-CONTRACTS.md Handover 7 § Lifecycle names --cleanup and produced
);
});
test('CLAUDE.md mentions /ultracontinue-local command', () => {
test('CLAUDE.md mentions /trekcontinue command', () => {
const md = read('CLAUDE.md');
assert.ok(
md.includes('/ultracontinue-local') || md.includes('ultracontinue-local'),
'CLAUDE.md should document /ultracontinue-local in the Commands table ' +
md.includes('/trekcontinue') || md.includes('trekcontinue'),
'CLAUDE.md should document /trekcontinue in the Commands table ' +
'(added in v3.3.0 alongside the new command file)',
);
});
@ -216,12 +216,12 @@ test('headless-launch-template.md mirrors Phase 2.6 hardenings', () => {
});
test('Phase 9 prose mandates parallel single-message dispatch + inline dedup', () => {
const cmd = read('commands/ultraplan-local.md');
const cmd = read('commands/trekplan.md');
const orch = read('agents/planning-orchestrator.md');
// Single-message reinforcement appears in both (command + orchestrator)
assert.ok(
cmd.includes('single assistant message turn'),
'commands/ultraplan-local.md Phase 9 should reinforce single-message parallel dispatch',
'commands/trekplan.md Phase 9 should reinforce single-message parallel dispatch',
);
assert.ok(
orch.includes('single assistant message turn'),
@ -230,7 +230,7 @@ test('Phase 9 prose mandates parallel single-message dispatch + inline dedup', (
// Dedup CLI shim is wired in both
assert.ok(
cmd.includes('plan-review-dedup.mjs'),
'commands/ultraplan-local.md Phase 9 should call lib/review/plan-review-dedup.mjs after both reviewers complete',
'commands/trekplan.md Phase 9 should call lib/review/plan-review-dedup.mjs after both reviewers complete',
);
assert.ok(
orch.includes('plan-review-dedup.mjs'),
@ -238,8 +238,8 @@ test('Phase 9 prose mandates parallel single-message dispatch + inline dedup', (
);
});
test('commands/ultraplan-local.md Phase 8 seals Opus-4.7 schema-drift defense', () => {
const cmd = read('commands/ultraplan-local.md');
test('commands/trekplan.md Phase 8 seals Opus-4.7 schema-drift defense', () => {
const cmd = read('commands/trekplan.md');
// Locate Phase 8 section
const phase8Start = cmd.indexOf('## Phase 8');
assert.ok(phase8Start >= 0, 'Phase 8 heading missing');

View file

@ -15,10 +15,10 @@ const ROOT = join(HERE, '..', '..');
function read(rel) { return readFileSync(join(ROOT, rel), 'utf-8'); }
const COMMANDS = [
'commands/ultrabrief-local.md',
'commands/ultraresearch-local.md',
'commands/ultraplan-local.md',
'commands/ultraexecute-local.md',
'commands/trekbrief.md',
'commands/trekresearch.md',
'commands/trekplan.md',
'commands/trekexecute.md',
];
for (const cmdPath of COMMANDS) {
@ -39,10 +39,10 @@ for (const cmdPath of COMMANDS) {
});
}
test('commands/ultraexecute-local.md mentions MAIN_MERGE_GATE', () => {
const text = read('commands/ultraexecute-local.md');
test('commands/trekexecute.md mentions MAIN_MERGE_GATE', () => {
const text = read('commands/trekexecute.md');
assert.ok(
text.includes('MAIN_MERGE_GATE'),
'commands/ultraexecute-local.md should name MAIN_MERGE_GATE — the only boundary that always pauses regardless of --gates',
'commands/trekexecute.md should name MAIN_MERGE_GATE — the only boundary that always pauses regardless of --gates',
);
});

View file

@ -1,5 +1,5 @@
// tests/lib/main-merge-gate.test.mjs
// Step 12 (plan-v2) — pin that commands/ultraexecute-local.md Phase 8
// Step 12 (plan-v2) — pin that commands/trekexecute.md Phase 8
// names the main-merge-gate lifecycle event, the decline + recovery
// surface, and the always-on gate prose.
@ -11,12 +11,12 @@ import { fileURLToPath } from 'node:url';
const HERE = dirname(fileURLToPath(import.meta.url));
const ROOT = join(HERE, '..', '..');
const CMD = readFileSync(join(ROOT, 'commands/ultraexecute-local.md'), 'utf-8');
const CMD = readFileSync(join(ROOT, 'commands/trekexecute.md'), 'utf-8');
test('Phase 8 names the main-merge-gate lifecycle event', () => {
assert.ok(
CMD.includes('main-merge-gate'),
'commands/ultraexecute-local.md should emit `main-merge-gate` from Phase 8',
'commands/trekexecute.md should emit `main-merge-gate` from Phase 8',
);
});

View file

@ -9,7 +9,7 @@
//
// This test exercises the Jaccard PIPELINE on a known input. It does NOT
// measure real-LLM determinism — that is deferred to v1.1, see
// tests/fixtures/ultrareview/README.md.
// tests/fixtures/trekreview/README.md.
import { test } from 'node:test';
import { strict as assert } from 'node:assert';
@ -35,8 +35,8 @@ function loadFindings(rel) {
}
test('review determinism — Jaccard of fixture run-A vs run-B meets SC4 threshold (0.70)', () => {
const a = loadFindings('tests/fixtures/ultrareview/review-run-A.md');
const b = loadFindings('tests/fixtures/ultrareview/review-run-B.md');
const a = loadFindings('tests/fixtures/trekreview/review-run-A.md');
const b = loadFindings('tests/fixtures/trekreview/review-run-B.md');
const jaccard = jaccardSimilarity(a, b);
assert.ok(
jaccard >= SC4_THRESHOLD,
@ -46,7 +46,7 @@ test('review determinism — Jaccard of fixture run-A vs run-B meets SC4 thresho
});
test('review determinism — finding IDs are 40-char hex', () => {
for (const rel of ['tests/fixtures/ultrareview/review-run-A.md', 'tests/fixtures/ultrareview/review-run-B.md']) {
for (const rel of ['tests/fixtures/trekreview/review-run-A.md', 'tests/fixtures/trekreview/review-run-B.md']) {
const findings = loadFindings(rel);
for (const id of findings) {
assert.ok(
@ -58,7 +58,7 @@ test('review determinism — finding IDs are 40-char hex', () => {
});
test('review determinism — no duplicate IDs within run', () => {
for (const rel of ['tests/fixtures/ultrareview/review-run-A.md', 'tests/fixtures/ultrareview/review-run-B.md']) {
for (const rel of ['tests/fixtures/trekreview/review-run-A.md', 'tests/fixtures/trekreview/review-run-B.md']) {
const findings = loadFindings(rel);
assert.strictEqual(
new Set(findings).size,

View file

@ -24,7 +24,7 @@ import { validatePlan } from '../../lib/validators/plan-validator.mjs';
const HERE = dirname(fileURLToPath(import.meta.url));
const ROOT = join(HERE, '..', '..');
const FIXTURE = join(ROOT, 'tests/fixtures/ultrareview/plan-with-source-findings.md');
const FIXTURE = join(ROOT, 'tests/fixtures/trekreview/plan-with-source-findings.md');
const HEX_ID_RE = /^[0-9a-f]{40}$/;

View file

@ -6,7 +6,7 @@
//
// This is the SC7 (higher) floor. The companion
// tests/lib/review-determinism.test.mjs holds the SC4 (0.70) floor against
// tests/fixtures/ultrareview/. Both pairs coexist on purpose: the lower
// tests/fixtures/trekreview/. Both pairs coexist on purpose: the lower
// floor protects against pipeline regressions, the higher one anchors the
// determinism aspiration set in the speedup brief.

View file

@ -52,7 +52,7 @@ this file's frontmatter and computes
`jaccardSimilarity(findingsA, findingsB)`. The test asserts the similarity is
at or above the SC7 brief threshold (0.833).
This fixture is distinct from `tests/fixtures/ultrareview/review-run-A.md`,
This fixture is distinct from `tests/fixtures/trekreview/review-run-A.md`,
which feeds the existing `tests/lib/review-determinism.test.mjs` against the
v1.0 SC4 floor (0.70). The synthetic pair pushes the floor higher per SC7.