CNA-BUG-055: CHANGELOG.md's v0.1.0-alpha.1 section says 49 renderer identities for a release that had 50
Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). Claims on this page were checked by reading the CNA source at commit 3b43bd86; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.
The C API documents, core_ext.h and ModuleProbes.cmake no longer state obsolete whole-registry renderer counts, but the alpha.1 release notes still say 49 renderer identities where that tag's selection list holds 50; no count gate reads the changelog.
- Identifier
CNA-BUG-055- Category
- Bug
- Subsystem
- Documentation & release tooling
- Status
- Narrowed (partially fixed; describes only what survives)
- Verified against
- CNA
3b43bd86(3b43bd8687ed46523d873f9bec4b32bd8481dcb5) - Severity
- Low (a triage suggestion, not a project priority)
- Evidence basis
- Source-verified: read at TARGET, not executed
- Tests touching this area
- Yes: see Current tests
- Affected contract
- The CHANGELOG.md release notes of v0.1.0-alpha.1
Expected behaviour
A released section of the changelog should state the count that release had. The v0.1.0-alpha.1 tag's cmake/RendererSelection.cmake offers 50 names in its CNA_GRAPHICS_RENDERER STRINGS list.
Actual behaviour at TARGET
The [0.1.0-alpha.1] section of CHANGELOG.md lists, under Added, “49 renderer identities selected at compile time through CNA_GRAPHICS_RENDERER”. check_renderer_identities.py checks the registries and its counted documents, not the changelog.
Fixed since first recorded: the C API's classification documents (CORE.md, the coverage mapping rows, LIMITATIONS.md and COMPATIBILITY.md) now say 10 public renderer identities, the Doxygen in core_ext.h and the header of ModuleProbes.cmake name no total, and FEATURE_MATRIX.md was removed.
Source locations
CHANGELOG.md— v0.1.0-alpha.1 section, Added: 49 renderer identitiesscripts/check_renderer_identities.py— COUNTED_DOCUMENTS - the changelog is not among themdocs/c-api/CORE.md— classification section: any of the 10 public renderer identities (the fixed half)tools/c-api/coverage_mappings.json— classification mapping rows: any of the 10 public renderer identities (the fixed half)
Evidence
Checked by reading CHANGELOG.md at 3b43bd86 and the tag's cmake/RendererSelection.cmake (50 names in the STRINGS list); not executed.
Narrowed at c6dec91f: the renderer-retirement documentation passes of 2026-10-14 (de84c0d87, 4eb9449de) and the classification rename of 2026-10-17 (34e86e430) rewrote the C API documents, the C header and the CMake comment this entry listed, and bf0cde63f (2026-10-11) removed FEATURE_MATRIX.md; only the changelog line remains.
Focused reproduction
No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.
Current tests
RendererIdentityRegistry (CTest) and multi-renderer-ci.yml run check_renderer_identities.py over the registries and its counted documents; nothing reads the changelog.
Regression test
Correct the alpha.1 line to 50, or have the identity checker compare released changelog sections with the selection list of their tags.
Blast radius
Documentation only: a reader of the alpha.1 release notes is told one renderer identity fewer than that release had.
Workaround
Treat the tag's cmake/RendererSelection.cmake as the count for that release.
Related pages
The same subject is explained at several altitudes. These are the neighbouring pages at each one.
- User guide
- C API: ABI and identities
- Architecture
- Repository validators
- Internals
- Core module: renderer identities
- Maintainer workflow
- Update the C API: versions and counts
- Known issues
- Bug index