d1d2bc2505
Extract the project's operating rules into a reusable, project-agnostic skill so any repo can adopt the same safe LLM workflow. - skills/llm-project-workflow/SKILL.md: issue-first; isolated branch worktrees (main checkout = orchestration only); distinct author/reviewer identities and profile safety (secrets by reference only; stop if authenticated user == PR author); branch naming; start/review/merge/cleanup workflows; fail-closed cases; recovery patterns; and an "Adapting to a project" table for the forge-specific names. - templates/: copy/paste prompts for start-issue, review-pr, merge-pr, recover-bad-state, worktree-cleanup. - Link the skill from README.md and docs/llm-workflow-runbooks.md (the runbook is framed as the Gitea-specific application of the portable skill). Docs-only; no code, no secrets, safe placeholder examples only. No change to MCP runtime, Gitea API, credential storage, or worktree helpers. Checks: full suite 287 passed / 0 failures; git diff --check clean; secret scan of skills/ clean. Closes #46. Refs #38, #39. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
29 lines
1.1 KiB
Markdown
29 lines
1.1 KiB
Markdown
# Template: merge a PR (eligible reviewer only)
|
|
|
|
Copy, fill the `<...>` fields, and paste as the task prompt.
|
|
|
|
```text
|
|
Task: merge PR #<pr> for issue #<n> if it is eligible and checks pass.
|
|
|
|
Rules (llm-project-workflow):
|
|
- Only an eligible, NON-author reviewer merges. If authenticated user == PR
|
|
author → STOP.
|
|
- Do not merge unless the PR is open, mergeable, and its checks/review pass.
|
|
- No force-merge, no bypassing branch protections.
|
|
|
|
Steps:
|
|
1. Verify authenticated identity + active profile.
|
|
2. Confirm PR #<pr>: author (not you), state open, mergeable, review approved.
|
|
3. If any gate fails → STOP and report.
|
|
4. Merge with explicit confirmation (e.g. confirmation="MERGE PR <pr>"),
|
|
optionally pinning the reviewed head SHA / changed-file set.
|
|
5. Confirm remote master now contains the merge commit.
|
|
|
|
Then run the cleanup template (worktree-cleanup.md):
|
|
- close/release issue #<n>, remove status:in-progress
|
|
- delete remote branch, remove local branch + worktree folder
|
|
- fetch/prune; confirm main checkout is clean and current (0 0).
|
|
|
|
Handoff: reviewer identity, merge result + commit, cleanup done, issue closed.
|
|
```
|