Commit graph

23 commits

Author SHA1 Message Date
9a68441161 fix(okr): frontmatter-verdi krysser ikke linjeskift (patch-lane #5)
`get()`-regexens verdi-gren brukte `\s*`, som inkluderer linjeskift. Enhver
key med tom rest-av-linje slukte dermed den neste ikke-tomme linja. Utslaget
var bredere enn list-keys: en tom `title:` returnerte neste keys hele linje
("type: OKR"), og et tomt `description:` dempet okf-checks anbefalt-felt-
advarsel med data som tilhorte en annen key.

Verdi-grenen strammet til `[ \t]*`. Innrykk-ankeret (`^\s*`) er urort -- det
er load-bearing for inject-okr-context.mjs:69s nestede organisasjon:-lesing.
Kontrakt-kommentaren i :13-16 lovet allerede null for list-keys; den er naa
sann i stedet for aa bli rettet ned.

Sju RED-verifiserte tester: (L1) list-key gir null - (L2) tom skalar sluker
ikke neste rot-key - (L3) tom key foran list-blokk - (L4) innrykk-toleransen
bevart, forelder gir null - (L5) tab-separert verdi - (L6) tomt anbefalt felt
demper ikke okf-check-advarselen (rootLevelGet arvet defekten) - (L7)
broedtekst-fallbacken plukker ikke list-verdi fra frontmatter.

(L7) gjor S57s latente begrunnelse maalbar: uttrekket i okf-check.mjs:125 ble
beholdt mot nettopp denne defekten, og naar fm-laget endelig taper for
list-keys er `body = raw` foerste gang en roednende mutasjon.

Mutasjons-verifisert (M1 revert, M3 anker-fjerning, M4 uttrekk-fjerning). M2
viste at (L5) ikke vokter tegnklassen -- .trim() gjor `[ \t]*` og `[ ]*`
ekvivalente -- saa testen er omskrevet til aa paastaa det den faktisk viser.

Suite 321 -> 328.
2026-08-09 14:43:15 +02:00
b10153692d fix(okr): somTall kaster paa Infinity, ikke bare NaN (patch-lane #7)
Number.isNaN fanget ikke Infinity/-Infinity -- target: 1e400 ga stille
score 0 i stedet for kast. Bytt til Number.isFinite (negert).
2026-08-09 14:13:32 +02:00
a9aab508d2 feat(okr): arkivklar-rapport med bevaringskategorier som vurderingsgrunnlag 2026-08-02 10:23:11 +02:00
582fae3212 feat(okr): path-confined bundle-traversering for arkivklar 2026-08-02 10:20:18 +02:00
892acf1d87 refactor(okr): trekk path-confinement ut til delt modul 2026-08-02 10:15:59 +02:00
d2ac153a68 fix(okr): skjerp separasjonsvakten og lukk tre defekter i D6-leveransen 2026-08-02 07:09:35 +02:00
47e7ac9e2a feat(okr): sandbagging-vakt i alle tre rapportformene 2026-08-02 06:57:53 +02:00
052e4d4e86 feat(okr): etatsstyringsmoete-underlag fra syklusdata 2026-08-02 06:53:46 +02:00
77031b0c9a feat(okr): aarsrapport del III-generator 2026-08-02 06:49:59 +02:00
8ef8f7a405 fix(okr): avviksvurderingen maa gaa gjennom score, ikke naa >= target 2026-08-01 22:50:25 +02:00
50933d839d feat(okr): tertialrapport-generator med separert committed/aspirational 2026-08-01 22:40:22 +02:00
1592a73267 feat(okr): syklus-leser med kanonisk scoreberegning 2026-08-01 22:35:27 +02:00
482effbad1 fix(okr): B2 ingestion-kode-hygiene + bump 1.7.1 (patch-lane)
8 hygiene-fikser fra review 2026-07-16 par.4 kode-lista, TDD roed-groenn
(suite 138 -> 149):
- innboks-split: slugify translittererer ae/oe (datatap-fiks)
- innboks-frontmatter: beskrivende feil ved manglende sourceMtime
- okf-index: --okf-version bumper eksisterende rot, flagg-tolerant CLI
  (exit 2 ved manglende verdi), sanitizeEntry strip C1/zero-width/bidi/
  Unicode-tag
- write-org-profile: circuit-breaker MERGER i stedet for aa overskrive
  full config (M4); test beviser at eksisterende config overlever
- compose-org-profile: intern ----linje trunkerer ikke blokken
- coaching-hook: at-risk teller status-markerte tabellrader (M1/m1)
- inject-okr-context: topic-guard treffer boeyningsformer (maalene)
- frontmatter: BOM/CRLF-toleranse (falsk mangler-type-fiks)

Versjonsflater bumpet til 1.7.1 (package/plugin/lock/CLAUDE/README/
SKILL x2/package-shape-test) + CHANGELOG 1.7.1-seksjon (B1+B2).
Release-tag + katalog-ref venter paa [G-B] operatoer-go.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 04:02:10 +02:00
188b534a3b fix(okr): B1 pekerfil uten lenkeform + B5 kollisjons-guards (kuratert-vern, reservert index.md, kryss-kilde claimed) [skip-docs]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:27:55 +02:00
7f9c790f43 fix(okr): gate-herding B2 scoped strict + B3 alle lenkeformer + M2 realpath-confinement + M3 deriveType basename/ord-grense
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:12:35 +02:00
a807ee2b79 feat(okr): pure-JS konverterings-adaptere txt/docx/eml/pdf + ukjent-ext-skip (SC format) [skip-docs]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:06:43 +02:00
935c1d0ae9 feat(okr): konsept-skriver m/ type-til-nivaa-ruting + original-bevaring (SC original, riktig nivaa) [skip-docs]
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012HzGPGJ81k1BkUC6UvgX4Y
2026-06-30 13:33:38 +02:00
2b0c520efd feat(okr): delt bundle-root-relativ lenke-resolver + zero-dangling relasjoner (SC relasjoner) [skip-docs] 2026-06-30 13:01:19 +02:00
d011fb1922 feat(okr): deterministisk frontmatter-projeksjon + vokab-snap + mtime-timestamp (SC idempotens) [skip-docs] 2026-06-30 12:58:26 +02:00
136093da38 feat(okr): deterministisk heading-split for ingestion (SC idempotens) [skip-docs] 2026-06-30 12:54:57 +02:00
ca6c89e7be feat(okr): writeFrontmatter multi-linje tags-liste (additiv array-gren) [skip-docs] 2026-06-30 11:04:29 +02:00
a9d9c45192 feat(okr): lukket OKF type/tags-vokabular for ingestion-snap [skip-docs] 2026-06-30 11:00:16 +02:00
d9f2848d90 feat(okr): delt frontmatter-parse/skrive-modul + #-strip-fix (SC2) [skip-docs] 2026-06-26 14:19:20 +02:00