# Pull requests that moved shipped source and deliberately carry no changelog
# entry. Read by scripts/changelog-completeness.php.
#
# One per line, `<number>: <reason>`. The reason is required: an exemption
# nobody can audit is how this gate would quietly stop meaning anything, so a
# bare number is an error rather than a skip. Every exemption that applies is
# printed on a passing run too, so what was left out stays visible.
#
# Empty on purpose. The released 0.1.9 section passes over all 3 of its
# shipped-source merges without one.

2242: Drops the private $integratedDefinitionPass flag and the six branches on it. Every document has collected its definitions in the structural walk since markup-carve/carve#1895, so the flag selected nothing; output over all 1855 corpus documents and throughput are both unchanged, and no public or protected signature moves.

2267: A performance regression that shipped nowhere. The looseness scan walked an indentation run unbounded from 2264, which landed after 0.1.9 and is in no tag, so no Composer install ever carried it. The list-looseness fix it came in with is a separate merge and is judged on its own.

2404: Comment-only. It corrects what three comments in HtmlRenderer say about where the endnotes section lands when a contained marker refuses. No non-comment line in src moves and no output changes.

2412: Comment-only. It shortens parser and importer comments that had grown into review history and benchmark snapshots. The tabs integration guidance it moves is a docs change.

2471: Internal plumbing plus a resource refresh, with identical observable behavior. It takes resources/prosemirror-schema-map.json from markup-carve/carve-grammars#570 so tag holds its own carveTag entry rather than reaching it through the mention entry's local alias, and moves the carveTag lookup in ProseMirrorToCarve to match. The AST model is unchanged, a tag is still a Mention with class tag, emitted payloads are unchanged, and tags and mentions round-trip byte-identically in both directions.
