LITE-032: lite md2mkd — GitHub Markdown normalized to StrictMark

Now
OPEN
Sev
MED
Ask
gritzko
Rep
///lite
On1
LITE-030
See
LITE-031

The payoff ticket: a verb that takes any GitHub-flavored .md and writes the same document as StrictMark — 4-char quads, ATX headers, - bullets, one-symbol ref-def labels, single-char emphasis. Parsing is LITE-030's vendored commonmark.js plus LITE-031's GFM extensions; this ticket is the EMITTER that walks the AST and the CLI verb around it. Source bytes are never rewritten by regex: everything is emitted from the tree.

Input

Context

The two CLI forms are gritzko's, verbatim (2026-08-14): lite md2mkd abc.md abc.mkd and lite md2mkd abc. StrictMark's own StrictMark page is the spec for the output; its CommonMark compatibility section is the list of deliberate divergences and therefore the exception list for the verifier.

Goals

lite md2mkd converts a real-world README to StrictMark that a StrictMark parser reads as the same document, and that cmark-gfm renders to the same HTML as the input, bar the declared exceptions.

Constraints

WIP

Design decisions

TODOs

Blockers and bummers

Outcome

Staged in work/LITE-032, 7 files, nothing posted. Orchestrator verification, run independently of the worker's harness: