CNA-BUG-231: CHECKLIST.md's per-file port checklist still says 'FNA still wins on semantics', contradicting the rule in CLAUDE.md that XNA wins where the two disagree
Evidence basis: source-verified at the pinned commit. Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.
The checklist every ported file is reviewed against keeps the old tie-break, while CNA's contributor rules record the owner decision of 2026-09-04 that measured XNA behaviour wins over FNA's.
- Identifier
CNA-BUG-231- Category
- Bug
- Subsystem
- Documentation & release tooling
- Status
- Open
- Verified against
- CNA
009d40f5(009d40f5dd085c4e674d3479675fac84b12b3e0a) - Severity
- Low (a triage suggestion, not a project priority)
- Evidence basis
- Source-verified: read at TARGET, not executed
- Tests touching this area
- None
- Affected contract
- CHECKLIST.md (per-file port checklist, XNA 4.0 API compliance section) and the behaviour-authority rule in CLAUDE.md
Expected behaviour
CLAUDE.md, "Where FNA and XNA disagree, XNA wins": decided by the project owner on 2026-09-04; FNA stays the day-to-day reference, but "matching FNA is no longer a defence for a behaviour XNA does not have", and each divergence taken on those grounds is recorded with the XNA IL that settles it.
Actual behaviour at TARGET
CHECKLIST.md, used for "every .cs file ported from FNA to CNA", still has the item "Behavior of each member verified against FNA (FNA still wins on semantics)". A reviewer following the checklist applies the tie-break the owner withdrew.
Source locations
CHECKLIST.md— Per-file checklist, XNA 4.0 API compliance: 'FNA still wins on semantics'CLAUDE.md— 'Where FNA and XNA disagree, XNA wins'
Evidence
Checked by reading at 009d40f5; not executed. The site's conventions page states the dated decision.
Focused reproduction
No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.
Current tests
None; check_renderer_identities.py reads CHECKLIST.md only for renderer counts.
Regression test
None applies; reword the item to verify against FNA and settle disagreements by XNA's IL.
Blast radius
Porting and review decisions; no code is affected by the text itself.
Workaround
Follow CLAUDE.md where the two disagree.
Related pages
The same subject is explained at several altitudes. These are the neighbouring pages at each one.
- Maintainer workflow
- Conventions and the checklist
- Deep dives
- CNA and XNA: which authority decides
- Known issues
- Bug index