Slice 2 av fix #1 («rettelser fester seg»): binder rules.ts til den menneskelige sannhetskilden (skrivekontrakt §E), så en korreksjon gjort én gang håndheves for alltid i stedet for å gjenoppdages hver utgave (diagnose-gap 2). - ratify.ts: importerer RULES direkte (ingen skjør tekst-parsing), krever en bijeksjon mot §E gate-bindings-manifestet (id ↔ ref ↔ severity) + dangling- §-anker-sjekk. CLI: `--ratify [kontrakt]` / `npm run ratify`. Sti: arg > env MASKINROMMET_CONTRACT > default (relativt til modulen). - edition-state.template: foldIns[] fangst-kø (per-artikkel proveniens, pending|promoted|rejected, mekanisk→rules.ts / dømmekraft→§C2). - 12 nye tester (33 totalt), tsc rent. Live-kontrakt-integrasjonstest ratify-er det ekte §E-manifestet rent (10 regler bundet 1:1). Companion: skrivekontrakt §E (JA-promoter-prosedyre + manifest) i maskinrommet. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
17 lines
569 B
JSON
17 lines
569 B
JSON
{
|
|
"name": "linkedin-contract-gate",
|
|
"version": "0.1.0",
|
|
"type": "module",
|
|
"description": "Deterministic §B/§C1 mechanical binding-gate for the Maskinrommet writing contract — runs BEFORE operator handoff so mechanical corrections never reach KTG twice",
|
|
"scripts": {
|
|
"build": "tsc",
|
|
"test": "node --import tsx --test tests/*.test.ts",
|
|
"start": "node --import tsx src/cli.ts",
|
|
"ratify": "node --import tsx src/cli.ts --ratify"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.0.0",
|
|
"tsx": "^4.19.0",
|
|
"typescript": "^5.7.0"
|
|
}
|
|
}
|