Found while re-syncing a derived repo (ptr727/NxWitness, see ptr727/NxWitness#439) against the template.
.github/copilot-instructions.md is a whole-file verbatim carry, but it links to AGENTS.md sections that the verbatim-carry contract does not require derived repos to carry:
../AGENTS.md#release-model
../AGENTS.md#files-and-sections-derived-repos-must-carry-verbatim
../AGENTS.md#staying-in-sync-and-reporting-drift-upstream
The contract ("Files and Sections Derived Repos Must Carry Verbatim") mandates only the AGENTS.md "PR Review Etiquette" section (plus the copilot-instructions file itself, .markdownlint-cli2.jsonc, .editorconfig, .gitattributes). A derived repo whose AGENTS.md legitimately omits "Release Model" / the carry-contract section / "Staying in Sync" (or names them differently — e.g. NxWitness uses a "Versioning" section) ends up with dangling anchors after carrying copilot-instructions.md verbatim.
So the verbatim-carry file has cross-references that only resolve in the template itself, not in conforming derived repos.
Possible fixes (maintainer's call):
- Add "Release Model", "Files…Must Carry Verbatim", and "Staying in Sync and Reporting Drift Upstream" to the AGENTS.md verbatim-carry contract (so every derived repo has those exact sections/anchors), or
- Make copilot-instructions.md not depend on non-mandated AGENTS.md anchors — link to
../AGENTS.md generally, or point those specific references at the template repo's AGENTS.md.
In NxWitness#439 I adapted locally per option 2 (retargeted #release-model → the repo's #versioning, and pointed the carry-contract / staying-in-sync links upstream), but the template should define the canonical fix so the next derived repo doesn't hit this.
Found while re-syncing a derived repo (
ptr727/NxWitness, see ptr727/NxWitness#439) against the template..github/copilot-instructions.mdis a whole-file verbatim carry, but it links to AGENTS.md sections that the verbatim-carry contract does not require derived repos to carry:../AGENTS.md#release-model../AGENTS.md#files-and-sections-derived-repos-must-carry-verbatim../AGENTS.md#staying-in-sync-and-reporting-drift-upstreamThe contract ("Files and Sections Derived Repos Must Carry Verbatim") mandates only the AGENTS.md "PR Review Etiquette" section (plus the copilot-instructions file itself,
.markdownlint-cli2.jsonc,.editorconfig,.gitattributes). A derived repo whose AGENTS.md legitimately omits "Release Model" / the carry-contract section / "Staying in Sync" (or names them differently — e.g. NxWitness uses a "Versioning" section) ends up with dangling anchors after carrying copilot-instructions.md verbatim.So the verbatim-carry file has cross-references that only resolve in the template itself, not in conforming derived repos.
Possible fixes (maintainer's call):
../AGENTS.mdgenerally, or point those specific references at the template repo's AGENTS.md.In NxWitness#439 I adapted locally per option 2 (retargeted
#release-model→ the repo's#versioning, and pointed the carry-contract / staying-in-sync links upstream), but the template should define the canonical fix so the next derived repo doesn't hit this.