review-fetch-phase
$
npx mdskill add prisma/prisma-next/review-fetch-phaseFetches and prepares PR review state for analysis
- Acquires canonical PR review state for analysis
- Uses GitHub API and custom validation scripts
- Generates structured JSON and markdown artifacts
- Outputs results to a specified or derived directory
SKILL.md
.github/skills/review-fetch-phaseView on GitHub ↗
--- name: review-fetch-phase description: Fetches canonical PR review state and renders derived state artifacts. Use when the user wants the state acquisition phase only (fetch, render, summarize) for a review-framework PR. argument-hint: "[pr-url] [output-dir]" --- # Review Fetch Phase Run only the state acquisition phase of the review-framework loop: fetch canonical review state JSON (v2), validate it, and render all derived artifacts via scripts. Run commands from this skill directory. All script paths below are relative to it. ## Inputs - Required: - PR URL (for example: `https://github.com/OWNER/REPO/pull/123`) - Optional: - output directory If output directory is omitted, derive: `wip/reviews/<owner>_<repo>_pr-<number>/` ## Behavior 1. Validate and parse PR URL, then compute deterministic paths: - `<output-dir>/review-state.json` - `<output-dir>/review-state.md` - `<output-dir>/summary.txt` - `<output-dir>/review-targets.json` 2. Ensure `<output-dir>` exists. 3. Enforce artifact safety before generation (must be ignored by git): ```bash node ./scripts/guard-review-artifacts-ignored.mjs --dir <output-dir> ``` 4. Run fetch script to produce canonical JSON: ```bash node ./scripts/fetch-review-state.mjs --pr <PR_URL> --out-json <output-dir>/review-state.json ``` 5. Validate canonical JSON before deriving additional files: ```bash node ./scripts/validate-review-state.mjs --in <output-dir>/review-state.json ``` 6. Render markdown from canonical JSON: ```bash node ./scripts/render-review-state.mjs --in <output-dir>/review-state.json --out <output-dir>/review-state.md ``` 7. Generate text summary from canonical JSON: ```bash node ./scripts/summarize-review-state.mjs --in <output-dir>/review-state.json --format text --out <output-dir>/summary.txt ``` 8. Extract deterministic triage targets for downstream bootstrap: ```bash node ./scripts/extract-review-targets.mjs --in <output-dir>/review-state.json --out <output-dir>/review-targets.json ``` Target extraction includes: - unresolved review threads - pull-request reviews with body text - issue comments with body text ## Schema contract - `review-state.json` is canonical and must be schema version `2`. - No backward compatibility is provided for v1 artifacts. - Derived artifacts (`review-state.md`, `summary.txt`, `review-targets.json`) are regenerable from canonical JSON. - Review artifacts are generated files and must remain untracked in git. ## Error handling - Treat fetch failures as operational errors. - If `gh api` fails with TLS/cert errors in sandbox (`x509` / `OSStatus -26276`), fail fast and instruct rerun outside sandbox. - Never disable TLS verification. ## Output to user Return artifact paths: - `review-state.json` - `review-state.md` - `summary.txt` - `review-targets.json` Suggest next step: - `/review-triage-phase <PR_URL> [output-dir]`
More from prisma/prisma-next
- adr-review>-
- ast-visitor-pattern>-
- bumping-biomeBumps `biome` package versions (e.g. `@biomejs/biome`) using `pnpm`, aligns `biome.jsonc` files with the new version/s across the repository and runs biome-related checks. Use when required to update `biome` to a newer version - explicitly or implicitly (e.g. after running `pnpm up`, `pnpm update`, `pnpm upgrade` without specific package names).
- contrib-prOpen a high-quality external contributor PR against prisma-next. Use when the user is an outside contributor (not a Prisma maintainer) and wants to submit a change as a pull request from a fork. Encodes the contribution flow from CONTRIBUTING.md so the resulting PR passes review on the first round.
- drive-agent-personasLibrary of agent personas — named bias-frames that other skills load to shift execution-time defaults. Skills name a persona by ID (e.g. "Adopt the architect persona"), and this skill resolves that ID to the persona doc that frames the executor for the rest of the task. Use when authoring a new skill that needs a particular reviewer/implementer/orchestrator stance, or when an existing skill instructs you to adopt a named persona.
- drive-create-plan>
- drive-create-project>
- drive-create-spec>
- drive-discussionDrops the agent into a structured Q&A mode that iterates with the user toward a complete understanding of a topic, then documents the outcome (project spec, plan, decision record, or whatever shape fits). The agent adopts one or more personas from the `drive-agent-personas` library — named explicitly by the user, or inferred from conversation context and announced. Typical use is design work at the start of a task, or mid-implementation when a load-bearing assumption has been falsified. Use ONLY when the user explicitly invokes this skill (e.g. "discussion mode", "pressure-test this", "let's design this", "design mode", "tech design mode", "product mode", "pm mode", "challenge my idea"). Never auto-invoke.
- drive-orchestrate-plan>