Skip to content

spec: pin resolved gap2 divergences + grammar escape note - #48

Merged
dereuromark merged 1 commit into
mainfrom
corpus-gap2-pins
May 23, 2026
Merged

spec: pin resolved gap2 divergences + grammar escape note#48
dereuromark merged 1 commit into
mainfrom
corpus-gap2-pins

Conversation

@dereuromark

Copy link
Copy Markdown
Contributor

Pins the carve-js ↔ carve-php divergences that are now resolved (see carve-js #40, carve-php #31) into the conformance corpus, and updates MAINTAINING.md.

New corpus pairs

  • Escaped quote in a quoted attribute value[x]{title="a\"b"} and # H {title="a\"b"} → value a"b (title="a"b"). A backslash escapes ASCII punctuation in a quoted value.
  • Attribute-less heading brace block# H {???}<h1>H {???}</h1> (grammar attribute_list needs ≥ 1 attribute, so it's heading text, not dropped).
  • Unreferenced footnote definitiontext\n[^f]: note<p>text</p> (no endnotes section).

Grammar

quoted_value now documents the backslash escape, reusing the existing escaped_char rule.

MAINTAINING.md

The four resolved divergences (the three above + mention URL encoding/placeholder) move to a Resolved section. The attribute-less inline span ([x]{}<span>) is recorded as an intentional carve-php divergence (its DefaultAttributesExtension decorates spans post-parse).

carve-lib re-vendored. Conformance: 153/153.

Both impls now agree on these; pin them in the corpus:
- escaped quote in a quoted attribute value (`{title="a\"b"}` -> value a"b),
  on a span and on a heading;
- an attribute-less heading brace block stays heading text (`# H {???}`);
- a footnote defined but never referenced emits no endnotes section.

Document the backslash escape in the grammar `quoted_value` production
(reusing the existing `escaped_char` rule). Re-vendor carve-lib so the
generated HTML reflects the matching carve-js changes.

Update MAINTAINING.md: move these four to a Resolved section and record the
attribute-less inline span (`[x]{}`) as an intentional divergence carve-php
keeps for DefaultAttributesExtension.
Copilot AI review requested due to automatic review settings May 23, 2026 22:54
@dereuromark
dereuromark merged commit e340740 into main May 23, 2026
2 of 3 checks passed
@dereuromark
dereuromark deleted the corpus-gap2-pins branch May 23, 2026 22:55
@dereuromark
dereuromark removed the request for review from Copilot May 23, 2026 23:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant