Pre-PR review
This repository expects an approved review BEFORE any pull request is created. The reviewer is
the repo-reviewer subagent, which carries the repository's architecture map and hard rules.
Nothing in CI enforces this: the check that used to fail a PR whose description carried no
approved report is gone, so the review is a convention the author keeps, not a gate that keeps
them.
Workflow
Sync and scope the diff
git fetch origin main git diff --stat origin/main...HEADIf the branch has no commits ahead of
origin/main, stop: there is nothing to review.Run the local gates first (cheap failures should never reach the reviewer):
./gradlew detekt spotlessCheckIf
app/src/main/res/values*/strings.xmlchanged, also run the key-parity check from.github/workflows/i18n-check.yml(every source key must exist in every locale file). A full Gradle build may be impossible on-device (x86_64 aapt2 on an arm64 device); that is expected — CI compiles. Fix everything that can run locally.Invoke the reviewer with the task tool, subagent type
repo-reviewer. Prompt it with:このブランチ(<branch name>、base: origin/main)のPR前レビューをお願いします。 変更概要: <one or two sentences describing the change and why>The subagent reviews
git diff origin/main...HEADitself; do not paste the whole diff into the prompt.Handle the verdict
REQUEST_CHANGES: fix every ブロッカー, then re-run from step 3. Repeat untilAPPROVE. Never open the PR while a ブロッカー is outstanding.APPROVE: proceed. Consider 提案(非ブロッキング) items; apply the cheap, safe ones.
Record the verdict in the PR description. The PR body should carry the reviewer's report verbatim inside the marker block below, so a reader can see the review actually happened:
<!-- pre-pr-review: approved --> ## Pre-PR review <paste the reviewer's final report here>If a later push changes the branch materially, re-run this skill and update the block (
pre-pr-review: approvedmust stay truthful for the HEAD commit).
Rules
- Do not skip, summarize away, or forge the reviewer report; the block must be the subagent's actual output for the current HEAD. Nothing checks this now, which is exactly why it matters.
- If the
repo-reviewersubagent is unavailable, say so in the PR — do not open it silently. - Trivial bot PRs (e.g. Weblate translation sync) are exempt.