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

35 Commits

Author SHA1 Message Date
lilleman 88c00d381d Answer architecture round 2: every builder joins its pieces through one bounded join, the readers take the engine guard, every refusal stands at the document's path, and a portable list's refusal names its own place 2026-10-12 17:42:24 +02:00
lilleman 43c8d63860 Answer architecture round 1: every container joining several walks sums their projections before it joins, the portable reduction refuses a list whose spelling is refused, and heldTextLength moves beside textLength 2026-10-12 17:10:56 +02:00
lilleman 25a17e1ed3 Refuse markdown past V8's longest string on every engine, before building it 2026-10-11 23:26:20 +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 e81e0560a5 Answer prose round 1: the refusal list lives in the error row, the slot rule gives its reason, and stale item citations go 2026-10-04 21:09:51 +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 95e1ccc4c1 Record the guards' input boundary and Goal 8's size as JSON, and drop the hardening past it 2026-10-04 19:18:55 +02:00
lilleman 576e1641f9 Answer stability round 3: walk an array's elements as the guards do 2026-10-04 17:18:03 +02:00
lilleman fd620b4975 Answer stability round 2: refuse a node or mark holding a key it does not own 2026-10-04 17:12:46 +02:00
lilleman 3c73a23689 Answer product-owner round 1: name the cycle in its own message and in the error table 2026-10-04 17:03:21 +02:00
lilleman 7d1412307b Answer security round 1: clean 2026-10-04 17:03:21 +02:00
lilleman 7be73254ea Refuse a cyclic input as not-an-adf-document 2026-10-04 16:57:51 +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 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 84a0750397 Keep 'carry' for the opaque carry: holdsOnlyAttributes, spellEdgeWhitespace, bothCommonMark 2026-10-03 15:52:19 +02:00
lilleman af98e9cbdc Trim two comments 2026-10-03 15:12:54 +02:00
lilleman 95bd4a9d01 Keep format knowledge out of mergeAdjacentText's comment 2026-10-03 14:46:29 +02:00
lilleman 6a54757839 Spell 'a text node holding its text and marks alone' once, as isPlainText 2026-10-03 14:44:00 +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 2799c30389 32 - a mark's attribute depth is counted from its value, the marks spelling refusing its own 2026-09-22 21:51:47 +02:00
lilleman 4a8040db19 4c - the label trim, the segment tail, the break run and the guard's spread stop re-walking 2026-09-18 20:03:56 +02:00
lilleman fb4caa6f3d 4.1: the review's test and comment fixes 2026-09-14 20:11:25 +02:00
lilleman 94d5aa1dad 4.1: editor-normal and the node accessors 2026-09-14 20:11:25 +02:00
lilleman 42ff1972c9 5c: match the mark set's nesting on both sides of the round-trip 2026-09-04 08:53:00 +02:00
lilleman ccdc8cb999 5c: report the depth cause from the guards, and make the publish converge 2026-09-03 21:19:01 +02:00
lilleman 98bbb232c1 5c: the build, the freeze audit and the release pipeline 2026-09-03 20:26:25 +02:00
lilleman 16129bf3ac 5b2: make the pipe escape terminate, cap the value a document fault echoes 2026-09-03 18:45:17 +02:00
lilleman bcb6a9bd1e 5b2: name the violation in every error message, and the escape a claimed line takes 2026-09-03 17:52:31 +02:00
lilleman 34fd18e852 Read the carries and the combinations back, and land markdownToAdf 2026-09-03 07:01:27 +02:00
lilleman 70398d1667 Read the node tables backwards, a directive to the node and marks it names 2026-09-01 11:09:21 +02:00
lilleman 430ef908c4 Part the source into adf/ and markdown/ ahead of the parser 2026-08-27 22:16:27 +02:00