chore: release v0.20.42
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
---
|
||||
name: pr-review
|
||||
description: Review a PR against the Oikos Hard Constraints and decide close/request-changes/merge
|
||||
disable-model-invocation: true
|
||||
user-invocable: true
|
||||
argument-hint: "<pr-number>"
|
||||
allowed-tools:
|
||||
- Bash(gh pr *)
|
||||
- Bash(gh api *)
|
||||
- Bash(git *)
|
||||
- Bash(npm test *)
|
||||
- Bash(npm run test:*)
|
||||
- Read
|
||||
- Grep
|
||||
- Glob
|
||||
---
|
||||
|
||||
Run from inside `oikos/`. `$1` is the PR number.
|
||||
|
||||
1. **Fetch** — `gh pr view $1 --repo ulsklyc/oikos`, `gh pr diff $1 --repo ulsklyc/oikos`, `gh pr checks $1 --repo ulsklyc/oikos`. Note failing checks. Delegate the deep read to the `pr-reviewer` subagent (`Agent({ subagent_type: "pr-reviewer", ... })`) so main-thread context stays free.
|
||||
2. **Constraint check** — walk the diff against CLAUDE.md Hard Constraints:
|
||||
- No frontend frameworks / bundlers / CSS libraries added
|
||||
- No `require`, only `import`/`export`
|
||||
- No `eval`, no `innerHTML`
|
||||
- All UI text via `t('key')`; `de` locale updated
|
||||
- Migrations append-only (`server/db.js`)
|
||||
- Design values from `public/styles/tokens.css`
|
||||
- Route handlers wrapped in try/catch
|
||||
- API shape `{ data }` / `{ error, code }`
|
||||
Also check: PR has tests touching the relevant `test-<module>.js`, CHANGELOG entry under `## [Unreleased]`, commit subjects are Conventional Commits.
|
||||
3. **Decide**
|
||||
- **Blocking issue found** → `gh pr review $1 --request-changes --body "<english, grouped by file:line>"` and stop.
|
||||
- **Not a fit** → explain politely and `gh pr close $1 --comment "..."`.
|
||||
- **Clean** → `gh pr review $1 --approve --body "LGTM"` then `gh pr merge $1 --squash --delete-branch`. After merge, fetch `main` locally and consider running `/release-prep`.
|
||||
|
||||
## Guardrails
|
||||
|
||||
- Comments and review bodies: always English.
|
||||
- Never merge with failing required checks. Never force-merge.
|
||||
- Never close a PR without a reason comment — silent closes burn contributor trust.
|
||||
- Never push directly to the PR branch. If a small fix is warranted, ask the contributor.
|
||||
Reference in New Issue
Block a user