The danger is not that the suite breaks. It is that nobody notices it stopped running (novox/hq 04-ISSUES/005). The harness this replaces had not built for two and a half months and nothing said so — and this suite needs a hypervisor, so it inherits exactly that: it runs when somebody remembers, and remembering is not a mechanism. So running, recording, and rebuilding are one act: - the host binary, control-plane image and builder are rebuilt from source first. The last two both parse manifests; building one and not the other left a binary eleven hours old refusing a field the mesh had just renamed, found by a full run. - a receipt lands in XDG state — outside git, because the question is whether *this machine* has run it, and a receipt in git would be a claim about everybody's machine made by whoever committed last. - `last-run` judges it and exits non-zero when it no longer counts. Three faults found by running the thing rather than reading it, each now held by a test confirmed to fail without it: - counted() passed every test while parsing nothing. The runner colours its summary even into a pipe; the fixtures were clean text that had been imagined rather than captured. A fixture that agrees with the mistake proves the mistake. - a receipt for `suite test/lastrun.test.ts` was indistinguishable from one for the real thing — 005's own symptom, rebuilt inside its remedy. The receipt now records what ran. - a tree with uncommitted work reported the bare commit, claiming coverage of code nobody can check out. Nothing else could tell: the hash is identical either way. Proven on real machines: 22/22, against all three repositories.
24 lines
653 B
JSON
24 lines
653 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 --experimental-strip-types src/cli.ts suite",
|
|
"check": "npm run typecheck && npm test && npm run test:integration",
|
|
"last-run": "node --experimental-strip-types src/cli.ts last-run"
|
|
},
|
|
"dependencies": {
|
|
"yaml": "^2.6.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.0.0",
|
|
"typescript": "^5.6.0"
|
|
}
|
|
}
|