Files
t3mp3st/.aiwg/addons/t3mp3st-maintainer/skills/t3mp3st-merge-train/SKILL.md
T

90 lines
2.5 KiB
Markdown

---
namespace: t3mp3st-maintainer
name: t3mp3st-merge-train
platforms: [all]
description: Run a conservative T3MP3ST maintainer merge train, merging validated PRs one at a time and reconciling issues after each merge.
triggers:
- t3mp3st merge train
- merge T3MP3ST PRs
- start T3MP3ST merge session
- maintainer merge queue
requires:
- merge-candidates: one or more PR numbers, or a queue-audit ready list
- github-maintainer-access: permission to merge elder-plinius/T3MP3ST PRs
ensures:
- one-at-a-time: only one PR is merged before rechecking queue state
- ci-green: each merged PR has green required checks or explicit maintainer override
- issue-reconciliation: linked issues are checked after merge
- post-merge-reaudit: queue state is refreshed after every merge
commandHint:
argumentHint: "<pr...> [--method squash|merge|rebase] [--dry-run] [--stop-on-conflict]"
allowedTools: Bash, Read
model: sonnet
category: release-management
---
# T3MP3ST Merge Train
Use this after `t3mp3st-queue-audit` identifies ready PRs.
## Merge Policy
Default merge method: squash, unless the PR contains a meaningful multi-commit
history that should be preserved.
Never merge:
- `CHANGES_REQUESTED`
- `DIRTY` or conflicted
- failing required checks
- head SHA changed since audit
- security-sensitive code without current verification
## Batch Ordering
1. Documentation and process PRs.
2. Small bug fixes with issue closures.
3. Provider/local-model fixes.
4. UI/backend contract fixes.
5. Larger features after main is stable.
## Per-PR Steps
1. Re-read current PR state:
- `gh pr view <N> --json headRefOid,mergeStateStatus,reviewDecision,statusCheckRollup`
2. Compare head SHA to the audited SHA.
3. Confirm checks are green.
4. Confirm no unresolved requested changes.
5. Merge exactly one PR.
6. Wait for main/CI state if checks run after merge.
7. Re-check linked issues:
- if auto-closed, record it;
- if still open, comment or close only with clear evidence.
8. Refresh open PR queue before the next merge.
## Output
Use `templates/merge-train-report.md` as the standard merge-session report and
`templates/maintainer-action-items.md` when follow-up work remains.
```markdown
## Merge Train
Merged:
- #N `<sha>` — method: squash — checks: pass — issues: #M closed
Stopped before:
- #X — reason
Next recommended PR:
- #Y — reason
```
## Stop Conditions
- Merge conflict appears.
- CI fails.
- A previously clean PR becomes stale after a merge.
- Any linked issue shows new human feedback.
- Local checkout or GitHub state is ambiguous.