mirror of
https://github.com/affaan-m/ECC.git
synced 2026-10-21 07:21:46 +02:00
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:
@@ -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', () => {
|
||||
|
||||
Reference in New Issue
Block a user