test: fix cross-platform orchestration regressions

This commit is contained in:
Affaan Mustafa
2026-03-12 15:46:50 -07:00
parent 2d43541f0e
commit d994e0503b
2 changed files with 14 additions and 3 deletions

View File

@@ -4570,10 +4570,20 @@ async function runTests() {
const files = fs.readdirSync(sessionsDir).filter(f => f.endsWith('.tmp')); const files = fs.readdirSync(sessionsDir).filter(f => f.endsWith('.tmp'));
assert.ok(files.length > 0, 'Should create session file'); assert.ok(files.length > 0, 'Should create session file');
const content = fs.readFileSync(path.join(sessionsDir, files[0]), 'utf8'); const content = fs.readFileSync(path.join(sessionsDir, files[0]), 'utf8');
const summaryMatch = content.match(
/<!-- ECC:SUMMARY:START -->([\s\S]*?)<!-- ECC:SUMMARY:END -->/
);
// The real string message should appear // The real string message should appear
assert.ok(content.includes('Real user message'), 'Should include the string content user message'); assert.ok(content.includes('Real user message'), 'Should include the string content user message');
// Numeric/boolean/object content should NOT appear as text assert.ok(summaryMatch, 'Should include a generated summary block');
assert.ok(!content.includes('42'), 'Numeric content should be skipped (else branch → empty string → filtered)'); const summaryBlock = summaryMatch[1];
// Numeric/boolean/object content should NOT appear as task bullets
assert.ok(
!summaryBlock.includes('\n- 42\n'),
'Numeric content should be skipped (else branch → empty string → filtered)'
);
assert.ok(!summaryBlock.includes('\n- true\n'), 'Boolean content should be skipped');
assert.ok(!summaryBlock.includes('[object Object]'), 'Object content should be skipped');
} finally { } finally {
fs.rmSync(isoHome, { recursive: true, force: true }); fs.rmSync(isoHome, { recursive: true, force: true });
} }

View File

@@ -161,9 +161,10 @@ test('buildOrchestrationPlan exposes shell-safe launcher aliases alongside raw d
workers: [{ name: 'Docs Fixer', task: 'Update docs' }] workers: [{ name: 'Docs Fixer', task: 'Update docs' }]
}); });
const quote = value => `'${String(value).replace(/'/g, `'\\''`)}'`; const quote = value => `'${String(value).replace(/'/g, `'\\''`)}'`;
const resolvedRepoRoot = plan.workerPlans[0].repoRoot;
assert.ok( assert.ok(
plan.workerPlans[0].launchCommand.includes(`bash ${quote(repoRoot)}/scripts/orchestrate-codex-worker.sh`), plan.workerPlans[0].launchCommand.includes(`bash ${quote(resolvedRepoRoot)}/scripts/orchestrate-codex-worker.sh`),
'repo_root_sh should provide a shell-safe path' 'repo_root_sh should provide a shell-safe path'
); );
assert.ok( assert.ok(