From 3fce43e884bc018620fef9ce2cbc962672c2b5d4 Mon Sep 17 00:00:00 2001 From: Lilleman auf Larv Date: Fri, 25 Sep 2026 18:49:19 +0200 Subject: [PATCH] 10 - referenced content leaves a note naming it --- README.md | 5 +++-- todo.md | 13 ++++++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d654dc7..4e79824 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,9 @@ In priority order. form carries only what CommonMark cannot hold. 5. **Lossy conversion keeps the content.** `adfToPlainMarkdown` and `plainMarkdownToAdf` drop what plain markdown cannot hold — format, design, structure — never content: what a reader of the - rendered document sees or follows, its text, images and link targets. What is dropped goes the - way the audience expects. + rendered document sees or follows, its text, images and link targets. Content the document only + references is marked where it stood, by a note that reads as the converter's and names what was + left out. What is dropped goes the way the audience expects. 6. **Failures are values.** Nothing throws, and `code` is a closed list — as much a contract as the emitted formats are. 7. **Nothing in the way.** No runtime dependencies, no I/O, no configuration, no host API: ESM on diff --git a/todo.md b/todo.md index 244987c..184481d 100644 --- a/todo.md +++ b/todo.md @@ -15,14 +15,15 @@ Start a session with: `Read AGENTS.md and todo.md, then do what todo.md's "Next states, which wins over where an item's bullet sits: a newly filed item is written beside the one it came in with, not at its own place in the order. Where that item has no release, the planning chunk §15 describes. -3. In flight: nothing. +3. In flight: 10a on the local branch `10a` (worktree `../adf-codec-10a`, `8a3a83f`), built before + item 10's rows were rewritten on 2026-09-25; rework it against them. 4. Before stopping, rewrite this section: the in-flight line, and the prompt itself wherever the session found it wrong or short. ## Milestones Shipping order: 3h, 3i, 3j, 5a, 5b, 5c, 5d, 5 → `0.1.0` (shipped 2026-09-05); 3k, 11, 4, 12, 13, 4b, -4c, 14, 15, 16, 18, 4d, 28, 17, 29, 19, 20, 21, 22, 32, 23, 24, 25, 30, 26, 27, 10, 6, 7, 31, 5f, 5g → +4c, 14, 15, 16, 18, 4d, 28, 17, 29, 19, 20, 21, 22, 32, 23, 24, 25, 30, 26, 27, 10, 6, 7, 31, 33, 5f, 5g → `0.2.0`; 8, 9 → TBD; 5e last. The numbering is the order the work was planned in, not the order it ships. Everything known and @@ -43,6 +44,8 @@ HTML doubles the importers and the file count they touch, and 25 to 27 because t panel says the next reader pays for. 29 and 30 come from 17's prose pass (2026-09-20). 29 reads first because every goal is what a later ask is settled against, 19's included; 30 sits beside 25, the other chunk rereading AGENTS.md. +33 comes from 10a (2026-09-25) and reads beside 31, the other chunk about what the pipeline +measures. 31 comes from 20's gate runs (2026-09-21) and reads beside 5f, the other chunk putting a measured number under the pipeline. 32 comes from 21's review (2026-09-21) and reads beside 22, the other chunk clearing a §11 seam. @@ -56,6 +59,9 @@ chunk clearing a §11 seam. upward, so the first raise to the measured figure reddens a run that changed nothing. Make the measurement repeatable, or state the number the floor may be raised to and why it is not the measured one. +- [ ] **33 — A carried mark run costs the line one re-emit (`0.2.0`).** `adfToMarkdown` spends 23 s + on one paragraph of 2000 × `un` plus `**-r**`: each run its flanking cannot spell re-emits the + whole line before riding the carry, quadratic in the runs (§11 Bounds). Make it linear. - [x] **24 — The conformance gates have a directory (`0.2.0`).** - [x] **25 — AGENTS.md §8 and §11 are findable (`0.2.0`).** - [x] **26 — The two mutable structures say what they guarantee (`0.2.0`).** @@ -220,7 +226,8 @@ chunk clearing a §11 seam. its text being the editor's prompt rather than the document's; a node no row names, or one standing where no spelling holds it, its blocks or its text. - Content the document only references — a stored file with no `alt`, an extension with no - `text`, a `syncBlock`, a card with neither `url` nor `data` naming one — leaves MARKER. + `text`, a `syncBlock`, a card with neither `url` nor `data` naming one — leaves an italic note + naming it: `*(image not included)*`, `*(jira-issues-table not included)*`. - A table stays a pipe table: the first row becomes the header, a cell's blocks join on one line with spaces, and a span keeps its cell under its header by empty cells in the columns and rows it covered, padding at most to the table's cell count.