From 7c0dec54cf1c3493f7f3b130df2a2716f30efbdb Mon Sep 17 00:00:00 2001 From: Lilleman auf Larv Date: Wed, 4 Nov 2026 20:59:19 +0100 Subject: [PATCH] Limit the identical-refusal claim to writers, say non-empty content, and warn of stored carries --- docs/decisions.md | 7 ++++--- todo.md | 4 +++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/decisions.md b/docs/decisions.md index 71ebc18..9ae4a72 100644 --- a/docs/decisions.md +++ b/docs/decisions.md @@ -758,12 +758,13 @@ while Atlassian's schema forbids shapes a converter would otherwise meet. A shape Atlassian's schema forbids, and the library refuses, is refused in the first step, where the document is checked once: `writableContent` opens every writer, and `carriedNode` opens every carry reader's node. No converter refuses one. A document one call refuses on a schema rule every -call refuses alike, with one code, message and path, wherever the shape stands, in a carried node -too. The first step refuses an `inlineCard` with a `link` mark as `unsupported-node-shape`: the +writer refuses alike, with one code, message and path, wherever the shape stands, in a carried node +too, and a carry reader refuses it with the same code and the writers' message after its holder's +name. The first step refuses an `inlineCard` with a `link` mark as `unsupported-node-shape`: the schema gives a card the `annotation` mark alone (§The node tables answer to Atlassian's schema), and HTML nests no `` in an ``. `adfToLosslessMarkdown` still refuses two more, on a node not riding the carry: a block or non-text inline node holding `text`, and a leaf block or non-text -inline node holding `content`. `todo.md` item 167 moves them, and until it ships this entry does +inline node holding a non-empty `content`. `todo.md` item 167 moves them, and until it ships this entry does not hold for them. Nothing else joins the first step. Nothing refuses a node type, mark or attribute the schema does diff --git a/todo.md b/todo.md index 58ecac1..3bf8cbb 100644 --- a/todo.md +++ b/todo.md @@ -118,7 +118,9 @@ are". It replaces item 68, which would have carried these shapes. Move into `ref Atlassian's schema gives each such node no `text` or `content` (`additionalProperties` is false). Breaking: `adfToHtml` and `adfToPortableMarkdown` refuse these shapes too, and so does -`adfToLosslessMarkdown` inside a node that rides the carry, where it writes them today. Say so in +`adfToLosslessMarkdown` inside a node that rides the carry, where it writes them today. Both carry +readers refuse them too, so a stored markdown or HTML document whose carry holds one stops +reading; `MIGRATION.md` says to convert it once with the last version that reads it. Say so in `CHANGELOG.md` and `MIGRATION.md`. Search the writers for any other refusal of a shape the schema forbids, and `carriedNode` for one the readers still build.