AGENTS.md §11: the shared side is everything outside emit/ and parse/, not the root alone
CI / gate (push) Successful in 36s
CI / publish (push) Successful in 5s

This commit was merged in pull request #101.
This commit is contained in:
2026-09-18 21:29:00 +02:00
parent 42ab63a03b
commit f303a815f7
+3 -3
View File
@@ -313,10 +313,10 @@ someone spells it or pins it.
fields it claims (`isAdfDocument`); past it everything is typed. Make invalid states
unrepresentable.
- `src/adf/` holds ADF's own knowledge and imports no format. Each format directory (`markdown/`,
`html/`) parts into `emit/` (ADF→format) and `parse/` (format→ADF), its root holding what both
directions read. A construct's reader lives in that root beside the regex the emitter escapes
`html/`) parts into `emit/` (ADF→format) and `parse/` (format→ADF), the rest of it holding what
both directions read. A construct's reader lives there beside the regex the emitter escapes
against, so the two cannot drift; a reader with no emit counterpart goes in `parse/`, unless it is
part of a construct the root already holds — a grammar stays in one file rather than splitting
part of a construct that side already holds — a grammar stays in one file rather than splitting
across the seam. A rule both
directions must answer alike — whether a list marker interrupts a paragraph — is one function
there too, never a copy per direction, however conservative the copy would be. Where the rule is