Repository navigation
Delete the local PR templates; keep the generic org default #53
Description
Activity
- addeddocumentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or requestneeds-infoWaiting on reporter for more informationWaiting on reporter for more information
on Sep 6, 2026 - added a commit that references this issue
on Sep 6, 2026 - addedready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agentand removedneeds-infoWaiting on reporter for more informationWaiting on reporter for more information
on Sep 6, 2026 - changed the title
[-]Host the PR-body-as-spec template as the org default, and retire the local copies[/-][+]Delete the local PR templates; keep the generic org default[/+]on Sep 6, 2026 Four PRs open, one per repo:
- docs: keep the generic PR template as a deliberate org default #73 — keep the generic default, drop its one pre-convention checklist line, and stop
AGENTS.mdclaiming org-wide reach - docs: drop the local PR template, inheriting the org default modern-di#456
- docs: drop the local PR template, inheriting the org default faststream-outbox#168
- docs: drop the local PR template, inheriting the org default chat-app#14
that-dependsis untouched, as decided.Two items deliberately left out of all four, both noted in #73's non-goals:
- The ADR revisit-trigger phrase still stands in
.github's ownAGENTS.md. This issue decided not to propagate it to the other repos; removing it here would change this repo's own ADR practice and is a separate call. CONTEXT.md:8repeats the org-wide claim that docs: keep the generic PR template as a deliberate org default #73 deletes fromAGENTS.md. It needs the same fix.
- docs: keep the generic PR template as a deliberate org default #73 — keep the generic default, drop its one pre-convention checklist line, and stop
Done. Four PRs merged:
- docs: keep the generic PR template as a deliberate org default #73 — keep the generic default, drop its
Docs updated if behavior or public API changedline, stopAGENTS.mdclaiming org-wide reach - docs: drop the local PR template, inheriting the org default modern-di#456
- docs: drop the local PR template, inheriting the org default faststream-outbox#168
- docs: drop the local PR template, inheriting the org default chat-app#14
that-dependskeeps its template, as decided.Two changes beyond the original scope, both to
AGENTS.mdand both maintainer calls made during the work:- docs: cut the Workflow section to what nothing else supplies #77 cut the
## Workflowsection to what nothing else supplies. The ADR and issue routes were already written indocs/agents/domain.mdanddocs/agents/issue-tracker.md, andNNNN-slug.md, sequentialcomes from the domain-modeling skill's ADR format. The negative clauses ("no change file, no lane to choose, noplanning/tree") described directories that do not exist. - docs: stop asserting the PR-body shape in AGENTS.md #79 dropped the PR-body shape statement from
AGENTS.mdentirely, matching the same removal in the three repos above. The shape is expected to come from the agent-skills convention rather than each repo'sAGENTS.md.
One thing worth watching: the shape statement in
AGENTS.mdis what producedWhy/Design/Non-goals/Verificationbodies in this repo while its own PR template saidSummary/Changes/Checklist. Nothing asserts it now. If PR bodies degrade over the next few PRs, that is the signal the skills convention has not picked it up yet.Still open and unaddressed:
CONTEXT.mdmay still repeat the org-wide-conventions claim that #73 removed fromAGENTS.md, andchat-app/planning/README.mdstill states the PR-body shape (it goes away with #70).- docs: keep the generic PR template as a deliberate org default #73 — keep the generic default, drop its
What changed
This issue was "host the PR-body-as-spec template as the org default, and retire
the local copies". Measuring the templates before sequencing the swap inverted the
conclusion: the PR template does no work in this org, and hosting it centrally
would not change that. The work is now three deletions and four reference fixes.
The measurement
Mechanism.
gh pr createreads.github/PULL_REQUEST_TEMPLATE.mdonly in itsinteractive editor path or when passed
-T/--template.--bodyand--body-fileskip it.
gh2.98.0's own help is explicit: "--bodyto skip this". An agentopening a PR with
--body-filenever touches the template. Only the web compare UIapplies it automatically.
Authorship. 26 of the 28 non-archived org repos have exactly one PR author,
lesnik512, opening PRs throughgh. The two exceptions arefastapi-sqlalchemy-template(4 outside humans across 47 PRs) andthat-depends.Where the convention checklist actually appears, in the four repos carrying it:
### Before mergingpresentmodern-difaststream-outboxchat-app.githubWhere a template does work.
that-dependsis the only repo with realcontributor traffic: 9 distinct PR authors,
lesnik512a minority at 28 of 100,xelanderntat 54. Across its last 25 PRs,xelandernt(web UI) filled thetemplate in 8 of 9, checklist included.
lesnik512(agent,--body) filled itin 0 of 16.
Where a template does not work even on humans.
fastapi-sqlalchemy-templateinherits the generic default, so its 4 outside contributors were all shown it.
Their PR bodies: 1726 characters, 159, 78, and one empty.
What did spread. The
Why/Design/Non-goals/Verificationshape isused consistently, including in this repo (#62, #63, #65) whose own template says
Summary/Changes/Checklist.faststream-outbox#141-#157 carried theconvention template locally and produced bare
## Verificationbodies. The shapetracks
AGENTS.md, which is loaded on every turn. It does not track the template,which is never opened.
The conclusion: what the agent reads persists, and what it does not read decays. The
convention already lives in each repo's
AGENTS.md, which is the only channel thatreaches the party writing the PR.
Why not host it centrally anyway
Two reasons the original plan does not survive the measurement.
It would duplicate
AGENTS.md. The checklist's four routes restate the"Where a fact goes" table and the two-things-outlive-the-PR paragraph that each
adopting repo's
AGENTS.mdalready carries. By the admission check, a factderivable from a file the agent already loads does not get written.
AGENTS.mdis not inheritable, so the central-hosting argument does nottransfer. GitHub's default community health files are
CODE_OF_CONDUCT.md,CONTRIBUTING.md, discussion category forms,FUNDING.yml, issue and pull requesttemplates plus
config.yml,SECURITY.md, andSUPPORT.md.AGENTS.mdis not onthat list, and no repo's
AGENTS.mdreferences this one. The 27 copies areindependent by necessity; that duplication is accepted deliberately rather than
solved with a generator.
The work
.github(this repo).github/PULL_REQUEST_TEMPLATE.md: keep it as the org default, and delete the onechecklist line
Docs updated if behavior or public API changed. That line asks thepre-convention question ("did you update the page?") and is the only part of the
generic form that is untrue for a repo on the convention. Everything else stands:
lint, type check, tests, build, metadata are true under either convention.
AGENTS.md: drop the opening claim that its conventions apply across all repos inthe org. No other repo has ever read this file. Reword the Workflow blockquote so
the generic default reads as a deliberate choice rather than a pending replacement.
modern-di,faststream-outbox,chat-app.github/PULL_REQUEST_TEMPLATE.md. All three fall back to the org default.AGENTS.md: drop the sentence naming the template as the carrier of the shape. TheAGENTS.mdline "the spec for a change is its PR body: why, design, non-goals,verification" stays and is now the whole statement of it.
that-dependsmypy/pyreflychecklist line is a legitimate reason to stay local, and it keeps its own copy.
Deliberately not done
place explaining what belongs under each heading. The four section names carry
enough on their own; moving ten lines of prose into four
AGENTS.mdfiles trades afile nobody reads for weight on a file loaded every turn.
that-depends, there isnothing to silently override, which was the only reason
modern-diandfaststream-outboxheld their copies back.planning/repos. The original blocker was that aconvention template would land on repos whose own
AGENTS.mdforbids it. With thegeneric default staying, nothing collides, so this issue neither needs nor waits on
their migration. That migration is tracked independently in Migrate the remaining repos off the planning/ convention #67.
modern-di's template said an ADR needsone and
faststream-outbox's did not; neither repo'sAGENTS.mdsays it. It isnot being added.
chat-appenforces it mechanically injust check-adrsand isunaffected.
Revisit trigger
A repo other than
that-dependsstarts taking regular outside contributions. At thatpoint a template becomes load-bearing for that repo, and it should get a local one
matching what its contributors need.
Related
AGENTS.mdrename have landed)that-dependshas no agent instructions filechat-appis mid-migration offplanning/