Rotårsak-mekanisme: scripts/kb-update/data/ai-act-deadlines.json er nå eneste kilde for AI Act-frister; CLAUDE.md-tabellen, assessor-malen og begge hooks synk-testes mot den (tests/kb-update/test-ai-act-deadlines-sync.test.mjs, 9 tester, TDD rød→grønn). Suite 815/815. - B2: «Kommisjonen kan fremskynde»/«ytre grense» fjernet (trigger droppet i endelig Omnibus-tekst) - B3: status oppdatert i alle 3 lag — formelt vedtatt (EP 2026-06-16, Rådet 2026-06-29), trer i kraft ved OJ-publisering (ikke publisert per 2026-07-15, verifisert mot EUR-Lex 32024R1689) - B4: Art. 50-raden «Gjeldende» → «Fra 2026-08-02» - B5: stop-hooken feilmerket 2026-08-02 som «GPAI-frist» — begge hooks leser nå kilden, 0 hardkodede frist-literals - R3-5: 2026-12-02-raden (Art. 50(2)) inn i assessor-malen - M10: Nkom navngitt som koordinerende markedstilsynsmyndighet + nasjonalt kontaktpunkt (kilde: nkom.no/ki/regulering/hvem-handhever) - pending_oj-markører i kilden for RX-REG² (nudifiserings-forbud, Art. 111) - .gitignore: whitelist for den kuraterte frist-kilden
18 lines
670 B
JavaScript
18 lines
670 B
JavaScript
// ai-act-deadlines.mjs
|
|
// Accessor for the machine-readable EU AI Act deadline source (RX-REG).
|
|
// The JSON is resolved relative to THIS module, so it works both in dev mode
|
|
// (cwd = plugin root) and installed mode (any cwd), without CLAUDE_PLUGIN_ROOT.
|
|
|
|
import { readFileSync } from 'node:fs';
|
|
|
|
export const DATA_URL = new URL('../data/ai-act-deadlines.json', import.meta.url);
|
|
|
|
// Returns the parsed source, or null when unreadable — hook consumers are
|
|
// advisory-never-blocking and silently skip the deadline signal on null.
|
|
export function loadAiActDeadlines() {
|
|
try {
|
|
return JSON.parse(readFileSync(DATA_URL, 'utf8'));
|
|
} catch {
|
|
return null;
|
|
}
|
|
}
|