Run artifact

workspace/targets/commonmark/blueprint/FEATURE-Block-Leafs.md

FEATURE: Block Leafs

FieldValue
Version20260815 V1
DescriptionParses CommonMark leaf blocks and collects link reference definitions.
Depends OnARCHITECTURE.md
Providesleaf block parsing, link reference definitions
Consumesexecutable commonmark

Purpose

Implement the leaf-block portion of CommonMark block parsing before inline rendering.

Scope

The parser handles:

Leaf blocks must preserve raw inline content for later parsing. Code and raw HTML content must remain literal where required by the specification.

Programmatic Acceptance

=== AC block-leafs-conformance ===
Intent: The implementation passes every supplied conformance example owned by leaf-block parsing.

import subprocess import sys

pattern = ( r"^(Thematic breaks|ATX headings|Setext headings|Indented code blocks|" r"Fenced code blocks|HTML blocks|Link reference definitions|Paragraphs|Blank lines)$" ) result = subprocess.run( [ sys.executable, "sources/spec_tests.py", "--program", "./commonmark", "--spec", "sources/spec.txt", "--pattern", pattern, ], capture_output=True, text=True, ) print(result.stdout) print(result.stderr, file=sys.stderr) assert result.returncode == 0 === END AC block-leafs-conformance ===

=== AC block-leafs-interface ===
Intent: Leaf parsing remains reachable through the required executable interface.

import subprocess

source = "# heading\n\n code\n" result = subprocess.run( ["./commonmark"], input=source, capture_output=True, text=True, ) print(result.stdout) print(result.stderr) assert result.returncode == 0 === END AC block-leafs-interface ===

=== AC block-leafs-reference-input ===
Intent: Link-reference-definition input is accepted through the executable interface.

import subprocess

source = "[label]: /destination\n\n[label]\n" result = subprocess.run( ["./commonmark"], input=source, capture_output=True, text=True, ) print(result.stdout) print(result.stderr) assert result.returncode == 0 === END AC block-leafs-reference-input ===

User Acceptance

Guardrails