lilleman
|
1ae7ba6992
|
Give an inline node no mark Atlassian's schema withholds from it, in every reader
|
2026-10-14 15:08:46 +02:00 |
|
lilleman
|
580bc862f2
|
Write an external image a link marks as [](href) in both writers
|
2026-10-11 13:31:18 +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
|
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
|
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
|
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
|
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
|
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
|
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
|
bc4b65501b
|
Reword the isBareText and adfNodes comments
|
2026-10-03 17:52:56 +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
|
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
|
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
|
d912bf1c9f
|
Lead the refusals ordinary editing meets with the edit that fixes them
|
2026-10-03 15:05:36 +02:00 |
|
lilleman
|
05c1728173
|
Hold a carried node's own marks on the item, not in a side set copies fall out of
|
2026-10-03 14:43:03 +02:00 |
|
lilleman
|
b34f9309f4
|
Set up every inline scan through one freshScan
|
2026-10-03 14:33:06 +02:00 |
|
lilleman
|
b78d841b34
|
Carry the text break as its own item, not a fake node, and check it where the outermost content resolves
|
2026-10-03 14:19:55 +02:00 |
|
lilleman
|
3aa693d2a1
|
Keep one merge loop and one mark key: editor-normal compares normalized marks with identicalMark
|
2026-10-03 14:17:22 +02:00 |
|
lilleman
|
039aac8873
|
Make markdownToAdf(adfToMarkdown(doc)) deep-equal doc: textBreak, empty keys, -0, typed carry fences, code blocks of several text nodes
|
2026-10-03 12:25:01 +02:00 |
|
lilleman
|
89911a501c
|
35b - the writer spells the plain flavour and escapes text that would read as its markers
|
2026-09-29 11:42:46 +02:00 |
|
lilleman
|
189f6d96a7
|
35a - review: a title keeps its ==, an image beside a marker is refused as before
|
2026-09-28 22:12:58 +02:00 |
|
lilleman
|
1d7797bbdc
|
35a - the parser reads the plain flavour and the lift goes
|
2026-09-28 22:02:55 +02:00 |
|
lilleman
|
86c80fe40e
|
36b - §8, §9 and §14's decisions move to docs/decisions.md
|
2026-09-28 03:54:34 +02:00 |
|
lilleman
|
a52ec5a73d
|
22 - the line container is markdown's, so the seam is the two spelling asks
|
2026-09-21 22:15:27 +02:00 |
|
lilleman
|
fb48a5da6b
|
21 - the table's row is the node's model, never the node
|
2026-09-21 21:45:11 +02:00 |
|
lilleman
|
4036b677ed
|
21 - the ADF tables carry ADF's nouns
|
2026-09-21 21:39:59 +02:00 |
|
lilleman
|
dd612b85c4
|
Pin the deactivation where an image close folds the evidence away
|
2026-09-19 02:31:03 +02:00 |
|
lilleman
|
ff59d737c4
|
Literal brackets put nothing inside a mark, so the nested-link check runs ahead of both guards
|
2026-09-19 02:21:38 +02:00 |
|
lilleman
|
508851b953
|
Review nits: the walk's start needs no clamp, and the invariant needs one copy
|
2026-09-19 02:15:15 +02:00 |
|
lilleman
|
29bb0a29f6
|
Pin what the doomed openers keep: the carry and the image literal brackets hold
|
2026-09-19 02:09:19 +02:00 |
|
lilleman
|
50200bcc18
|
Review nits: deactivate the openers a nested link dooms, and pin the refusal order
|
2026-09-19 02:02:01 +02:00 |
|
lilleman
|
0f79dac6ec
|
16 - no link wraps a link: the outer brackets go literal, the directive form is refused
|
2026-09-19 01:48:30 +02:00 |
|
lilleman
|
220cf31db2
|
15 - refuse the directive link spelling no href, so the mark has one spelling
|
2026-09-18 23:08:34 +02:00 |
|
lilleman
|
2ae9dcfb24
|
AGENTS.md §11: a sort keys on the name a line introduces, so an import sorts on its first binding
|
2026-09-18 23:03:13 +02:00 |
|