3
0
mirror of https://github.com/larvit/adf-codec.git synced 2026-11-13 04:08:29 +01:00
Commit Graph

219 Commits

Author SHA1 Message Date
lilleman fa7f4ef987 Read two lists a link reference definition parts as two lists, and put the changelog's breaking entries first 2026-10-10 13:20:05 +02:00
lilleman 3741b9e5b3 Answer prose round 1: the comments say why, items 95, 96, 91 and 34 read in one pass, the floor's decision drops the rule CLAUDE.md holds, and item 97 files the changelog's order 2026-10-09 19:17:20 +02:00
lilleman 3e9c56d399 Answer architecture round 3: the comprehension floor's decision names item 95, the directive read takes its index from the claimed prefix, and only the claimed prefix leaves directive-syntax.ts 2026-10-09 19:17:20 +02:00
lilleman af9b0d082c Answer architecture round 2: the escape walk owns its escapes and names every token kind, a directive read takes the claimed prefix, the reader computes one end, imports sort, and item 96 covers unclosed backtick runs 2026-10-09 19:17:20 +02:00
lilleman 652ae60179 Answer architecture round 1: a token's width is true for every kind that carries one, the escape walk threads one record, the == step and the directive precondition say why, and item 96 files the inline HTML scan 2026-10-09 19:17:20 +02:00
lilleman 59ead3e8e9 Escape a line against the inline reader's own tokens, in time linear in a run 2026-10-09 19:17:20 +02:00
lilleman 167bf1ff9b Answer prose round 1: the decision says right after and keeps only its reason, the README counts the link-definition exception, and the comments and spec say which list alternates 2026-10-09 15:39:13 +02:00
lilleman 559ad4ec3c Answer architecture round 1: a * marker before a first line of * alone takes a backslash, the marker choice is a decision, the spec names which lists alternate, and the stale listBreak test goes 2026-10-09 15:39:13 +02:00
lilleman 40580e6948 Read a list whose bullet or ordered delimiter changes as two lists, and alternate the marker between adjacent lists in place of !adf:listBreak 2026-10-09 15:39:13 +02:00
lilleman 180840532d Answer architecture round 2: itemParts takes one run of task lists over the item, the properties share blockTaskItemChildren, and readBlock's bullet case names who reads a task list first 2026-10-09 14:37:06 +02:00
lilleman 2e640ded91 Answer architecture round 1: splitTaskList groups a list into items, bulletBlocks returns the split blocks itself, isTaskItem lives in adf/, a property reads generated task lists through portableMarkdownToAdf, and items 56 and 93 name today's code 2026-10-09 14:37:06 +02:00
lilleman cd6cb8bece Answer prose round 1: a task item keeps the task lists right after its paragraphs nested, and the README, changelog, decision, comment, item 49 and a test title say it plainly 2026-10-09 14:37:06 +02:00
lilleman 67bdc3ca44 Answer stability round 1: a task list nested beside a task item of paragraphs stays nested when written, the property checks every block task item holds paragraphs alone, item 49 names the checkbox loss it closes, and item 93 files the stale refusal path 2026-10-09 14:37:06 +02:00
lilleman 654a960888 Stand a block a task item cannot hold after its task list, in portableMarkdownToAdf and adfToPortableMarkdown 2026-10-09 14:37:06 +02:00
lilleman 77a6806160 Answer architecture round 3: one joinsBreaks flag in place of the parted set and its retry loops, a directive link spells its break, and takesMarks names the table's field 2026-10-09 12:21:18 +02:00
lilleman e4364b19d0 Answer prose round 1: plainer decision title and spec, the refusal the spec owes, and comments that say why 2026-10-09 12:21:18 +02:00
lilleman 06c225f8f4 Keep the hard breaks a link text holds alone, after its destination, and move item 89 to 0.2.1 2026-10-09 12:21:18 +02:00
lilleman 852d010ff7 Answer product-owner round 1: an emphasis or link run spans an unmarked hard break, the recipe drops a hard break's marks, and the refusal names hard breaks 2026-10-09 12:21:18 +02:00
lilleman 2ca5ac41e6 Answer architecture round 1: the node table says a hard break takes no marks, and a link text of hard breaks alone reads as its destination 2026-10-09 12:21:18 +02:00
lilleman 3ff5c95f4c Build a hardBreak carrying no marks where a mark spelling spans a line break, in every reader 2026-10-09 12:21:18 +02:00
lilleman f7eb88ec1b Answer architecture round 5: name the alert and callout markers by their spelling, and item 56 its functions 2026-10-09 10:49:08 +02:00
lilleman d677222050 Read an image alone on an alert's marker line or the lines after it as the image, as a reader panel expected; item 88 filed 2026-10-09 10:49:08 +02:00
lilleman ee3086ad1e Answer prose round 1: one sentence per idea for the image readings, a decision title that states the rule, item 86 names its shapes 2026-10-09 10:49:08 +02:00
lilleman 050364dbdc Answer stability round 2: a link slot keeps a linked image linked, so the link-in-link refusal holds 2026-10-09 10:49:08 +02:00
lilleman d97c5c2935 Answer stability round 1: an !adf:link slot reads an image as plain alt text 2026-10-09 10:49:08 +02:00
lilleman 3a41e9ccca Answer architecture round 3: a link alone holding a titled image keeps its caption, and the decision's title names []() 2026-10-09 10:49:08 +02:00
lilleman 88aef1c8c4 Answer architecture round 1: one owner for the image's ADF shape, the readings' decision, marker paragraphs, the exceptions the README names; items 87 filed and 56 widened 2026-10-09 10:49:08 +02:00
lilleman 3b621a9cef Read every CommonMark image and empty link: an image ADF holds no node for as its linked alt text, a title as its caption, an empty link text as its destination 2026-10-09 10:49:08 +02:00
lilleman 23ec45febd Give each markdown input its own reader: commonMarkToAdf, losslessMarkdownToAdf and portableMarkdownToAdf, each claiming only its flavour 2026-10-09 03:08:39 +02:00
lilleman d7f2384876 Answer architecture round 1: the reader returns its refusals and owns its stack, a decision and a test keep JSON.parse out, item 83 filed, the scoring run recorded 2026-10-08 14:10:50 +02:00
lilleman 380a894589 Answer prose round 1: one name per thing in the new docs, the changelog points at MIGRATION's rows, item 82 drops its partial file list 2026-10-07 12:39:45 +02:00
lilleman 913aae49ea Answer stability round 1: hand every not-a-string refusal its own position 2026-10-07 12:39:45 +02:00
lilleman a62cd39809 Answer architecture round 2: rename isBareText to isSpellableText, say which link holdsLink counts, the README names the type passed 2026-10-07 12:39:45 +02:00
lilleman 41ac4510f5 Answer architecture round 1: name a non-string by typeof alone, name and comment what the seats could not read, file items 81 and 82 2026-10-07 12:39:45 +02:00
lilleman 2c4fadbd8b Refuse a markdown input that is not a string with not-a-string 2026-10-07 12:39:45 +02:00
lilleman 7da3c1fbbe Refuse an attribute value JSON does not hold, and push a folded callout's title leaves one at a time 2026-10-05 01:07:55 +02:00
lilleman 1b55e0f528 Answer prose round 3: the comments on highlight pairing, escaped backtick lengths and the memo read once, and the Raw HTML paragraph loses its half clause 2026-10-04 23:36:47 +02:00
lilleman 1ff27164f8 Answer architecture round 2: the spelling memo, headroom and the escaped backtick lengths state their rule at the code, and the highlight counter is named for what it counts 2026-10-04 23:36:47 +02:00
lilleman 0bc086ba43 Answer architecture round 1: a code span opening a line spells as CommonMark, the slot refuses a null character, every generated document emits 2026-10-04 20:43:46 +02:00
lilleman e040d1d3ef Spell every document the emitter refused for a carriage return, a null character, a code-span line start or an empty text node 2026-10-04 20:29:29 +02:00
lilleman bc4b65501b Reword the isBareText and adfNodes comments 2026-10-03 17:52:56 +02:00
lilleman ead2e7f4b7 Give the unmarked bare text check and the text-holding-content refusal one owner each 2026-10-03 16:22:19 +02:00
lilleman 85f1063c7b Name the reader's own-marks items for what they hold, and drop the carry flag the items already say 2026-10-03 16:21:49 +02:00
lilleman 72f919ae04 Rename isPlainText to isBareText, apart from the plain flavour, and say truly what it admits 2026-10-03 16:19:09 +02:00
lilleman 4e6a4b5ac4 Name the two text-joining rules for whose rule they are, side by side in adjacent-text.ts 2026-10-03 15:51:41 +02:00
lilleman acc8227598 Gather the plain flavour's code in markdown/plain/ 2026-10-03 15:50:24 +02:00
lilleman 4409d5befc Reword the attrs=empty and language-placement refusals, quoting a language that needs it 2026-10-03 15:17:40 +02:00
lilleman 91879d01b1 Lead the code block, empty-key, carry fence, text break and carry-in-mark refusals with their fix 2026-10-03 15:12:51 +02:00
lilleman 1d6a6b0914 Name the code block wrapper in the two carry-fence refusals that lacked it 2026-10-03 15:05:51 +02:00
lilleman d912bf1c9f Lead the refusals ordinary editing meets with the edit that fixes them 2026-10-03 15:05:36 +02:00