Lane: work (issue-execution loop, orchestrator dispatching per-issue subagents)
Category: operational
Triggering example
During a /work-items:work loop, subagents created PRs #457 and #458 (and #460) via gh pr create with hand-written bodies containing a Closes #N keyword. All three FAILED the required pr-issue-linkage check with:
##[error]Missing a "## Related" section. List related PRs, ADRs, or decision-log entries this PR does not close.
The pr-issue-linkage reusable workflow (melodic-software/ci-workflows) requires BOTH a native closing keyword AND a non-empty ## Related section. There is no .github/pull_request_template.md in the repo, so nothing scaffolds ## Related. Every author — human or agent — discovers the requirement only after a red CI run, then edits the body and burns a second CI cycle.
Observed vs expected
- Observed: No PR template. PR bodies start non-compliant; the
## Related contract is enforced only reactively by CI. Both ad-hoc gh pr create and the /source-control:pull-request path omitted it.
- Expected: A repo
pull_request_template.md (and/or the /source-control:pull-request skill's reference/create.md) scaffolds the ## Related section + closing-keyword line so PRs are linkage-compliant on first push.
Suggested fix
Add .github/pull_request_template.md with a ## Related section + a closing-keyword placeholder mirroring the pr-issue-linkage contract, and have /source-control:pull-request emit that skeleton. The single source of truth stays the ci-workflows validator; the template/skill just scaffold to match it.
Lane: work (issue-execution loop, orchestrator dispatching per-issue subagents)
Category: operational
Triggering example
During a
/work-items:workloop, subagents created PRs #457 and #458 (and #460) viagh pr createwith hand-written bodies containing aCloses #Nkeyword. All three FAILED the requiredpr-issue-linkagecheck with:##[error]Missing a "## Related" section. List related PRs, ADRs, or decision-log entries this PR does not close.The
pr-issue-linkagereusable workflow (melodic-software/ci-workflows) requires BOTH a native closing keyword AND a non-empty## Relatedsection. There is no.github/pull_request_template.mdin the repo, so nothing scaffolds## Related. Every author — human or agent — discovers the requirement only after a red CI run, then edits the body and burns a second CI cycle.Observed vs expected
## Relatedcontract is enforced only reactively by CI. Both ad-hocgh pr createand the/source-control:pull-requestpath omitted it.pull_request_template.md(and/or the/source-control:pull-requestskill'sreference/create.md) scaffolds the## Relatedsection + closing-keyword line so PRs are linkage-compliant on first push.Suggested fix
Add
.github/pull_request_template.mdwith a## Relatedsection + a closing-keyword placeholder mirroring thepr-issue-linkagecontract, and have/source-control:pull-requestemit that skeleton. The single source of truth stays the ci-workflows validator; the template/skill just scaffold to match it.