diff --git a/AGENTS.md b/AGENTS.md index 6fe017b..2acbc3c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -261,9 +261,11 @@ The size ratchet is the other such number, `.oxlintrc.json`'s single rule over t downward. It stops where the package does, because one ceiling covering the tests and the harness too would have to be their worst — 64 — which loosens the guard over the shipped code. It guards against drift and never drives a refactor, so no cyclomatic rule and no second lint rule join it: -neither measure picked out what nine readers found hard (the comprehension panel, 2026-09-20). The -leg passes `--deny-warnings` and an explicit `-c`, since oxlint exits 0 on a warning and, finding -no config, falls back to 96 default rules — either way green with the ceiling gone. +neither measure picked out what nine readers found hard (the comprehension panel, 2026-09-20). +Three switches are load-bearing: `IIFEs: true`, since oxlint exempts an IIFE otherwise; an explicit +`-c`, since finding no config it falls back to 96 default rules, green with the ceiling gone; and +`--deny-warnings`, since a rule from a category the config never names arrives as a warning it +exits 0 on. The corpus, all checked in: hand-built fixtures per node and combination; real ADF Atlassian's editor wrote; the CommonMark spec suite against `markdownToAdf` and `markdownToHtml`. diff --git a/todo-history.md b/todo-history.md index 5ddaa64..911e084 100644 --- a/todo-history.md +++ b/todo-history.md @@ -874,9 +874,10 @@ The done `todo.md` items in full, as they were written. `todo.md` keeps a one-li ceiling is 52, `parseInline`'s length and the built set's worst; at 51 the gate reddens on it. The leg runs `oxlint --deny-warnings -c .oxlintrc.json src` beside the typecheck at 0.8s, the two flags because oxlint exits 0 on a warning and, discovering no config, falls back to - 96 default rules; `IIFEs`, `skipBlankLines` and `skipComments` are spelled so a changed - default cannot move what 52 counts (the stability-reviewer, 2026-09-20). The lockfile carries - every platform binding, so `npm ci` resolves the musl one inside the image. + 96 default rules; `skipBlankLines` and `skipComments` are spelled so a changed default cannot + move what 52 counts, and `IIFEs` because oxlint exempts an IIFE by default (the + stability-reviewer, 2026-09-20). The lockfile carries every platform binding, so `npm ci` + resolves the musl one inside the image. - [x] **18 — The subtree the directive spelling asks about (`0.2.0`).** The parser asks `commonMarkSpelling` at every directive-spelled block and the answer emits the whole subtree below, so a node at depth d is spelled d times: three nested rule-first directive lists cost