The suite next door raises one scenario and asks deep questions of it. This one asks shallow questions of every scenario — the half that was missing, since both faults found by hand lived in scenarios nothing ever built. Adds bootstrap-single, the cheapest, and the loop that lets the list grow. Also adds the second universal invariant: every address a scenario declared is one the machine actually holds. A machine that came up bare looks identical to one that came up correctly until something asks it. Verified to bite rather than assumed: against a live instance, the real declaration passes and a declaration claiming an address nothing holds fails with 'anchor declared 192.0.2.99 on hosting but holds 192.0.2.10'. Integration now runs with --test-concurrency=1. Two files raise real instances, node --test runs files in parallel by default, and two concurrent runs of this suite already produced a whole-suite failure once — every test red, from resource contention rather than from any fault in the code. Gate: 45.7s -> 60.2s.
23 lines
622 B
JSON
23 lines
622 B
JSON
{
|
|
"name": "@novox/mesh-lab",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"bin": {
|
|
"mesh-lab": "./src/cli.ts"
|
|
},
|
|
"scripts": {
|
|
"typecheck": "tsc --noEmit && tsc --noEmit -p tsconfig.test.json",
|
|
"test": "node --test --experimental-strip-types 'test/*.test.ts'",
|
|
"test:integration": "node --test --test-concurrency=1 --experimental-strip-types 'test/integration/*.test.ts'",
|
|
"check": "npm run typecheck && npm test && npm run test:integration"
|
|
},
|
|
"dependencies": {
|
|
"yaml": "^2.6.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.0.0",
|
|
"typescript": "^5.6.0"
|
|
}
|
|
}
|