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 |
|