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

434 Commits

Author SHA1 Message Date
lilleman 69669476a8 Split the markdown writer's tests into one file per concern 2026-11-05 12:29:11 +01:00
lilleman d7c6a6b1f5 Answer stability round 1: 0 🔴, 10 🟡 (0 misread); pin section tags, cell values and refusal paths with tests, parametrize test loops, drop the markdown tryRule's dead clause 2026-11-05 12:09:36 +01:00
lilleman d55a249ef3 Refuse the schema-forbidden shapes in the first step, carried or not 2026-11-05 12:09:36 +01:00
lilleman deae360969 Answer stability round 1: 2 🔴, 1 🟡 (0 misread); refuse a link-marked card in the carry readers, and pin the order of two 2026-11-04 20:38:44 +01:00
lilleman a27a4453c2 Refuse an inline card a link marks in every writer, before it writes 2026-11-04 20:38:44 +01:00
lilleman 395874990c Ask once whether a line spans, keep base's fallback loop, and decide carries once per pass 2026-11-04 13:23:04 +01:00
lilleman bab2ffcfb8 Group a line's runs in one home, part a line as its first fallback, and trim each portable line by its own runs 2026-11-04 13:23:04 +01:00
lilleman 763d68ba03 Name edgeDepth's parameter apart from runsBeside 2026-11-04 13:23:04 +01:00
lilleman d76d4c9440 Span a run inside inlineRuns, with the reducer asking the same grouping 2026-11-04 13:23:04 +01:00
lilleman 5ee168efff Restore inlineRuns and join spanned runs in their own units, the span choice in linePass 2026-11-04 13:23:04 +01:00
lilleman e473fa92d0 Span a run inside inlineRuns, so runs group in one place 2026-11-04 13:23:04 +01:00
lilleman bed322fbef Keep a node's empty marks array where a run would span it 2026-11-04 13:23:04 +01:00
lilleman b2b124277a Answer prose round 1: 0 🔴, 6 🟡 (0 misread); reword the spanning comments, spec and changelog entry 2026-11-04 13:23:04 +01:00
lilleman 16690de96f Answer stability round 1: 1 🔴, 2 🟡 (0 misread); keep a portable line parted where spanning needs !adf:text, test the depth guard, drop a dead check 2026-11-04 13:23:04 +01:00
lilleman 6a8d487128 Spell an emphasis or link once across the nodes its mark skips, in both writers 2026-11-04 13:23:04 +01:00
lilleman 2e7f2a94e3 Put the first-run comment back above firstRunLine 2026-11-03 22:13:13 +01:00
lilleman 1409a1699a Answer prose round 1: 0 🔴, 2 🟡 (0 misread); say what insideRun's callers rely on, delete sharedRuns's comment, clear the termination comment 2026-11-03 22:13:13 +01:00
lilleman bcdf224e4c Answer stability round 1: 0 🔴, 6 🟡 (0 misread); restore inlineRuns's early exit, one mark equality, refuse a pass taking no mark, pin the carried range and the opening link's run 2026-11-03 22:13:13 +01:00
lilleman 47503fe3c7 Group mark runs by one rule, insideRun, that both writers and the portable reducer ask 2026-11-03 22:13:13 +01:00
lilleman c4cbebd0e1 Refuse a mark whose content is text and text breaks that the mark cannot hold 2026-10-31 03:10:24 +01:00
lilleman 6d09da68c7 Answer stability round 1: 0 🔴, 3 🟡 (0 misread); refuse a seeded carry on a portable line, say what undefined means 2026-10-31 03:10:24 +01:00
lilleman 342dc1f610 Answer product-owner round 1: 0 🔴, 2 🟡 (0 misread); name the fix for border around text, and the migration row 2026-10-31 03:10:24 +01:00
lilleman d0867686d5 Build text holding no border mark in losslessMarkdownToAdf, and carry text holding one 2026-10-31 03:10:24 +01:00
lilleman 088494511d Answer stability round 1: 1 🔴, 3 🟡 (0 misread); start an empty line's walk at its innermost quote, pin two guards, file item 162 2026-10-31 01:37:26 +01:00
lilleman 085ad7f508 Answer prose round 1: 0 🔴, 7 🟡 (0 misread); state the sweep's rule as line equality with the reference, and reword its comments 2026-10-31 01:37:26 +01:00
lilleman 42fc6d97fb Move the emphasis sweep into unspellable-runs.ts with named standings, derive its rule in docs/decisions.md, and close item 160 2026-10-31 01:37:26 +01:00
lilleman 9bedc7bae4 Make every withheld carry through carriedRun, which checks it as it is made 2026-10-31 01:37:26 +01:00
lilleman 7941972471 Keep BlockText's measures as two named records, read its flags through two functions, and claim a marker through one guard 2026-10-31 01:37:26 +01:00
lilleman d28bb4a13f Keep the one-fallback-per-pass loop in the properties, out of the writers' signatures 2026-10-31 01:37:26 +01:00
lilleman b0a94fb896 Answer stability round 1: 0 🔴, 4 🟡 (0 misread); cap the every mode alone, name the cap's steps, pin links and highlights at the cap 2026-10-30 21:14:32 +01:00
lilleman d0b2e22aa8 Write a line where em shares a delimiter run with strong in time linear in its mark runs 2026-10-30 21:14:32 +01:00
lilleman dee5f8093d Answer stability round 2: 1 🔴, 1 🟡 (0 misread); carry pairs spanning the same nodes together, file item 161 for em sharing a run with strong 2026-10-30 15:45:11 +01:00
lilleman 4834e802d9 Answer prose round 1: 0 🔴, 7 🟡 (0 misread); reword the sweep's comments, the cost entry and item 160 2026-10-30 15:45:11 +01:00
lilleman f151ea5c09 Answer stability round 1: 1 🔴, 2 🟡 (0 misread); hold a pair whose opener may capture a held pair's delimiter, draw repeated units, pin the carry guards 2026-10-30 15:45:11 +01:00
lilleman 47b990feea Emit a line mixing em, strike and strong in time linear in its mark runs 2026-10-30 15:45:11 +01:00
lilleman ee95b3035f Answer prose round 1: 0 🔴, 7 🟡 (0 misread); the bound test's block count is 53, comments name their referents 2026-10-29 17:29:50 +01:00
lilleman dd4ff03909 Answer stability round 1: 1 🔴, 6 🟡 (0 misread); a carry refuses where the walk finds it, tests pin each batching guard, the changelog names the nested emphasis still quadratic, item 158 files it 2026-10-29 17:29:50 +01:00
lilleman 1ff3ad6e9b Answer principles round 1: 0 🔴, 2 🟡 (0 misread); writtenText alone tracks its prefixes, the walk's bound comment says what the check does now, markdown tested at the bound 2026-10-29 17:29:50 +01:00
lilleman 28ae354315 Answer architecture round 1: 0 🔴, 7 🟡 (0 misread); test BlockText's measures and the batching against one run per pass, one withinLongest, marker facts beside their readers 2026-10-29 17:29:50 +01:00
lilleman 10cb24e706 Spell nested lists and quotes in time linear in the markdown 2026-10-29 17:29:50 +01:00
lilleman 1f8619e272 Emit a line in time linear in its mark runs 2026-10-29 17:29:50 +01:00
lilleman 2b5c0571fc Give the 33-million-character line test a timeout past Bun's 5 s default 2026-10-28 19:15:04 +01:00
lilleman ff44b6e195 Answer principles round 3: 0 🔴, 1 🟡 (0 misread); item 154 says what the pairing reads off the built nodes, and the fallback test spells its runs 2026-10-28 19:15:04 +01:00
lilleman 2f9a1b3540 Answer stability round 2: 1 🔴, 0 🟡 (0 misread); a line gives up every highlight run whose own delimiters cannot flank in one pass, as shipped, so a line of them re-emits once, and the reader records no highlight pairs 2026-10-28 19:15:04 +01:00
lilleman 5107c9506b Answer principles round 2: 0 🔴, 0 🟡 (0 misread); record takes the SharedScan it reads 2026-10-28 19:15:04 +01:00
lilleman b388b33d31 Answer stability round 1: 1 🔴, 4 🟡 (1 misread); a line gives up its first misread emphasis run, else its first misread highlight, as shipped, the run list narrows to one run, Scan holds SharedScan, the Piece arms are named, and textOpeners and guardLinkDefinition are pinned 2026-10-28 19:15:04 +01:00
lilleman 6636f01497 Answer principles round 1: 0 🔴, 0 🟡 (0 misread); readAsWritten names the emphasis check, the bracket test names the bare case, noDefinitions sorts after linkInLink 2026-10-28 19:15:04 +01:00
lilleman 5ede92bf91 Answer architecture round 1: 0 🔴, 7 🟡 (0 misread); the read-back loop parts from the verdict, the reader takes the opening-link consult, the reading is absent on the parse path, a refused link escapes no backtick; root imports, highlight pairing and closeBracket filed as items 153 to 155 2026-10-28 19:15:04 +01:00
lilleman b0bf362ef9 Find code-span and link openers and unspellable mark runs by reading the escaped line back 2026-10-28 19:15:04 +01:00
lilleman becd7d8d4e Answer prose round 1: 0 🔴, 3 🟡 (0 misread); the destinationEnds comment names a stop and the stack, the changelog entry says neither escaped nor closed, the test name says where the paren is open 2026-10-28 13:27:06 +01:00