chore(kit): remove worktree-update skill, fix pr-review severity tiers

- Delete worktree-update skill template (replaced by sprint branches)
- Remove worktree-update references from settings, manifests, tests
- Update customization-examples to sprint-branch language
- Remove three-tier severity from pr-review template (every comment
  is actionable, no suggestion tier)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-05 15:21:20 +02:00
co-authored by Claude Opus 4.6
parent 706b4565d4
commit 050aeafc01
6 changed files with 6 additions and 129 deletions
@@ -60,9 +60,9 @@ Instead of one main branch, the project uses worktrees for parallel development:
| visual | `../visual/` | araminta |
| ci | `../ci/` | justine |
Each worktree contains the full repository. Sprint briefings are written per-team (`docs/sprints/sprint-N/server.md`, `client.md`, etc.). Merges happen via the `/worktree-update` skill.
Each sprint branch contains the full repository. Sprint briefings are written per-team (`docs/sprints/sprint-N/server.md`, `client.md`, etc.). Merges happen via PR review on main.
**Key lesson**: Worktrees are powerful for large projects with distinct workstreams. Most projects should start with single-branch and add worktrees when branch contention becomes a problem.
**Key lesson**: Sprint branches (`sprint-N/team`) with ephemeral worktrees via `isolation: "worktree"` give each agent an isolated copy without persistent worktree management.
### Qdrant + Ollama for Semantic Document Search
@@ -60,7 +60,6 @@ Everything in minimal, plus:
| ticket | /ticket — manage project tickets in SQLite DB |
| pr-push | /pr-push — push commits and create/update PRs |
| pr-review | /pr-review — spawn parallel reviewers for branch diffs |
| worktree-update | /worktree-update — sync worktree branches with main |
| sprint-retro | /sprint-retro — run a sprint retrospective |
| release-notes | /release-notes — generate release notes from commits |
@@ -81,7 +80,6 @@ decisions/process.md # Process decisions
.claude/skills/pr-push/SKILL.md # Push PR skill
.claude/skills/pr-review/SKILL.md # Review PR skill
.claude/skills/pr-review/references/ # Review checklist references
.claude/skills/worktree-update/SKILL.md # Worktree sync skill
.claude/skills/sprint-retro/SKILL.md # Retro skill
.claude/skills/release-notes/SKILL.md # Release notes skill
.config/hooks/pre-commit # Pre-commit hook
@@ -42,7 +42,6 @@
"Bash(ls *)",
"Skill(git-commit)",
"Skill(worktree-update)",
"Skill(sprint-start)"
],
"deny": [
@@ -94,9 +94,9 @@ Format the combined review as a table per reviewer:
### <Reviewer Name> (<Focus>): [APPROVE | REQUEST_CHANGES]
[Summary]
| # | File | Severity | Issue |
|---|------|----------|-------|
| 1 | path:line | critical/warning/suggestion | description |
| # | File | Issue |
|---|------|-------|
| 1 | path:line | description |
### <Reviewer Name> (<Focus>): [APPROVE | REQUEST_CHANGES]
...
@@ -130,8 +130,8 @@ Respond with:
2. Summary: 2-3 sentence overall assessment
3. Comments: List of specific issues, each with:
- File path and approximate location
- Severity: critical / warning / suggestion
- Description of the issue
Every comment is actionable — there is no "suggestion" tier. If it's worth mentioning, it's worth fixing.
If no issues found, say APPROVE with a brief positive summary.
```
@@ -1,118 +0,0 @@
---
name: worktree-update
description: >
Sync worktree branches with main. Use when the user says "update worktrees",
"sync branches", "merge main", "worktree update", or invokes /worktree-update.
When on main: shows ahead branches and lets user pick which to merge.
When on a non-main branch: merges main into the current branch.
user-invocable: true
allowed-tools: Bash, Read, AskUserQuestion
---
# Worktree Update Skill
Sync worktree branches safely. Direction depends on the current branch.
## Safety Rules (NON-NEGOTIABLE)
- **Never force-push, reset --hard, rebase, or delete branches.**
- **Never use `--no-verify` or skip hooks.**
- **Always use `--no-edit` on merges** to avoid interactive editor prompts.
- **Stop on merge conflicts** — report them and let the user decide. Never
auto-resolve or abort a conflicted merge without asking.
- **Fetch before comparing** — always `git fetch --all` first so commit
comparisons are accurate.
- **Dry-run first on main** — show the user exactly what will happen before
merging anything into main.
## Workflow
### 1. Detect current branch
```bash
git branch --show-current
```
Branch determines the mode: `main` -> outbound sync, anything else -> inbound sync.
### 2a. On `main` — merge worktree branches into main
#### Fetch and compare
```bash
git fetch --all
```
Discover all worktree branches (excluding `main` itself):
```bash
git worktree list | grep -v '\[main\]' | sed 's/.*\[//;s/\]//'
```
For each worktree branch, check if it has commits ahead of main:
```bash
git rev-list --count main..origin/<branch>
```
Skip branches with 0 commits ahead. For branches that ARE ahead, collect:
- Branch name
- Number of commits ahead
- One-line log of those commits: `git log --oneline main..<branch>`
#### Check for open PRs
Use the git host CLI matching your project (see CLAUDE.md):
```bash
# GitHub: gh pr list --state open
# Gitea: tea pr list --login <login> --repo <owner/repo> --state open --output simple
# GitLab: glab mr list --state opened
```
Cross-reference open PR head branches with the ahead-of-main branches.
#### Present results
Show a summary table of branches ahead of main. For each branch, indicate:
- `[PR]` if it has an open pull request — warn that it should go through
normal review channels (use `/pr-review` instead)
- Commit count and summary
Use `AskUserQuestion` to let the user pick which branches to merge.
Exclude PR-flagged branches from the default options (but allow the user to
override via "Other").
#### Merge selected branches
For each selected branch, one at a time:
```bash
git merge <branch> --no-edit
```
If a merge conflicts, **stop immediately**. Report the conflict and do NOT
continue to the next branch. The user must resolve before proceeding.
After all merges, show the final state with `git log --oneline -N` (where N
covers the new commits).
### 2b. Not on `main` — merge main into current branch
```bash
git fetch --all
git merge origin/main --no-edit
```
If clean, report the result (fast-forward or merge commit, files changed).
If conflicts, report them and stop.
### 3. Push prompt
After a successful merge, ask the user if they want to push:
```bash
git push origin <current-branch>
```
Never push without explicit confirmation.
-2
View File
@@ -111,7 +111,6 @@ STANDARD_FILES=(
".claude/skills/ticket/SKILL.md"
".claude/skills/pr-push/SKILL.md"
".claude/skills/pr-review/SKILL.md"
".claude/skills/worktree-update/SKILL.md"
".claude/skills/sprint-retro/SKILL.md"
".claude/skills/release-notes/SKILL.md"
"decisions/README.md"
@@ -129,7 +128,6 @@ mkdir -p "$TMPDIR_STANDARD/.claude/skills/skill-create"
mkdir -p "$TMPDIR_STANDARD/.claude/skills/ticket"
mkdir -p "$TMPDIR_STANDARD/.claude/skills/pr-push"
mkdir -p "$TMPDIR_STANDARD/.claude/skills/pr-review"
mkdir -p "$TMPDIR_STANDARD/.claude/skills/worktree-update"
mkdir -p "$TMPDIR_STANDARD/.claude/skills/sprint-retro"
mkdir -p "$TMPDIR_STANDARD/.claude/skills/release-notes"
mkdir -p "$TMPDIR_STANDARD/decisions"