- PR template: move "Closes #" to top as required field with explicit warning that PRs without a linked issue are closed without review - CONTRIBUTING.md: add mandatory issue-first policy with clear rationale - Add require-issue-link.yml workflow: checks PR body for a closing keyword (Closes/Fixes/Resolves #NNN) on open/edit/reopen/sync events; posts a comment and fails CI if no reference is found PR body is bound to an env var before shell use (injection-safe). The github-script step uses the API SDK, not shell interpolation. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
Linked Issue
Required. PRs without a linked issue are closed without review. Open an issue first if one doesn't exist: https://github.com/gsd-build/get-shit-done/issues/new/choose
Closes #
What
Why
How
Testing
Platforms tested
- macOS
- Windows (including backslash path handling)
- Linux
Runtimes tested
- Claude Code
- Gemini CLI
- OpenCode
- Codex
- Copilot
- N/A (not runtime-specific)
Test details
Checklist
- Issue linked above (
Closes #NNN) — PR will be auto-closed if missing - Follows GSD style (no enterprise patterns, no filler)
- Updates CHANGELOG.md for user-facing changes
- No unnecessary dependencies added
- Works on Windows (backslash paths tested)
- Templates/references updated if behavior changed
- Existing tests pass (
npm test)
Breaking Changes
None