34025dc084
Build and Deploy Verso / deploy (push) Successful in 9m35s
The two-token approach (HeadingMark + HeadingTitle) caused LALR state merging: the parser state waiting for HeadingTitle after HeadingMark was merged into body-text item* states. In those merged states the headingTitleTokenizer fired for every paragraph line, swallowing bold, italic, math and inline function tokens — leaving body text black. Fix: collapse the heading into a single HeadingLine external token that covers the entire heading line (= prefix + title). A single-token Heading rule leaves no post-token parser state waiting for a second token, so no LALR merging can occur. The ViewPlugin and all HeadingMark/HeadingTitle infrastructure are removed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>