test(vfs): reclassify the many-files wall-clock case into the perf lane
vfs.unit.test.ts's 'Performance > should handle many files efficiently' (100 writes + readdir, 5.5s write budget) is a wall-clock flake: 121ms alone, 16.5s under the gate's sibling-file contention — the code never caused it. Same pattern already used for storage-batch-operations.test.ts's batch-vs-individual timing case: ctx.skip(!process.env.BRAINY_PERF_LANE, reason) inside the test, and the file added to vitest.perf.config.ts's include list (it stays in the unit gate's *.unit.test.ts match too, so every other test in the file keeps running there).
This commit is contained in:
parent
2808398164
commit
7932175503
2 changed files with 16 additions and 2 deletions
|
|
@ -57,7 +57,14 @@ export default defineConfig({
|
|||
// otherwise-correctness integration suite (self-skipped everywhere
|
||||
// else via BRAINY_PERF_LANE). Stays in the integration gate's
|
||||
// include too, so every OTHER test in the file keeps running there.
|
||||
'tests/integration/storage-batch-operations.test.ts'
|
||||
'tests/integration/storage-batch-operations.test.ts',
|
||||
// Same pattern: one wall-clock budget case (100-file write + readdir,
|
||||
// 5.5s budget) inside an otherwise-correctness VFS unit suite
|
||||
// (self-skipped everywhere else via BRAINY_PERF_LANE — see
|
||||
// tests/vfs/vfs.unit.test.ts's 'Performance > should handle many
|
||||
// files efficiently'). Stays in the unit gate's *.unit.test.ts match
|
||||
// too, so every OTHER test in the file keeps running there.
|
||||
'tests/vfs/vfs.unit.test.ts'
|
||||
],
|
||||
|
||||
reporters: process.env.CI ? ['dot'] : ['basic'],
|
||||
|
|
|
|||
|
|
@ -389,7 +389,14 @@ describe('VirtualFileSystem - Production Tests', () => {
|
|||
})
|
||||
|
||||
describe('Performance', () => {
|
||||
it('should handle many files efficiently', async () => {
|
||||
it('should handle many files efficiently', async (ctx) => {
|
||||
// Wall-clock budget assertion — belongs to the perf lane (npm run
|
||||
// test:perf), not the correctness gate: 121ms alone but 16.5s under
|
||||
// the gate's sibling-file contention, a flake the code never caused
|
||||
// (same pattern as storage-batch-operations.test.ts's batch-vs-
|
||||
// individual timing case).
|
||||
ctx.skip(!process.env.BRAINY_PERF_LANE, 'wall-clock budget assertion — runs only under the perf lane (npm run test:perf)')
|
||||
|
||||
const dir = '/performance-test'
|
||||
await vfs.mkdir(dir)
|
||||
|
||||
|
|
|
|||
Reference in a new issue