fix(tests): keep transcript and hook fixtures in private temp roots

Isolate spawned Stop hooks through TMPDIR/TMP/TEMP, open transcript fixtures exclusively with private modes, and derive intentional stale-race fixture identity from its opened descriptor.
This commit is contained in:
haelyra
2026-10-10 18:38:26 -04:00
parent 8044679227
commit d6dc05a12b
3 changed files with 28 additions and 9 deletions
+5 -3
View File
@@ -45,12 +45,14 @@ function test(desc, fn) {
}
}
const transcriptRoot = fs.mkdtempSync(path.join(os.tmpdir(), 'ecc-transcript-context-'));
process.on('exit', () => fs.rmSync(transcriptRoot, { recursive: true, force: true }));
let fixtureSeq = 0;
function writeTranscript(lines) {
fixtureSeq += 1;
const filePath = path.join(os.tmpdir(), `transcript-context-test-${process.pid}-${fixtureSeq}.jsonl`);
fs.writeFileSync(filePath, lines.join('\n') + '\n');
const filePath = path.join(transcriptRoot, `transcript-context-test-${process.pid}-${fixtureSeq}.jsonl`);
fs.writeFileSync(filePath, lines.join('\n') + '\n', { flag: 'wx', mode: 0o600 });
return filePath;
}
@@ -111,7 +113,7 @@ test('returns null for a transcript with no usage records', () => {
});
test('returns null for a missing transcript file', () => {
assert.strictEqual(readLatestContextTokens(path.join(os.tmpdir(), 'definitely-missing.jsonl')), null);
assert.strictEqual(readLatestContextTokens(path.join(transcriptRoot, 'definitely-missing.jsonl')), null);
});
test('returns null for empty or non-string paths', () => {