Files
pnpm/.coderabbit.yaml
Zoltan Kochan c18cbd4cad fix: enable CodeRabbit approvals via request_changes_workflow (#12476)
CodeRabbit's effective config (from the `@coderabbitai configuration`
command) showed request_changes_workflow: false, which is why it only
ever commented and never approved — CodeRabbit submits approving reviews
only when this is true. The dashboard toggle wasn't taking effect, so
declare it in-repo.

Also explicitly disable pre_merge_checks: they're enabled by default and
in the dashboard (removing the block from the config did not turn them
off), and they add a status block without review value here. Title
enforcement stays covered by the commit-msg hook and squash-title
convention.
2026-06-17 14:51:08 +02:00

80 lines
4.0 KiB
YAML

# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
reviews:
# Skip generated, vendored, and snapshot files so reviews focus on hand-written code.
path_filters:
- "!pnpm-lock.yaml"
- "!Cargo.lock"
- "!**/dist/**"
- "!**/__fixtures__/**"
- "!**/*.snap"
- "!**/CHANGELOG.md"
path_instructions:
- path: "**/*"
instructions: |
Apply the "AI Review Guidance" section in AGENTS.md. Security vulnerabilities are the first review priority; performance regressions in pnpm, pacquet, and pnpr are the second priority. Surface only issues tied to changed code, and explain the exploit path, impact, or hot path affected.
# Walkthrough poem adds no review value.
poem: false
# Required for CodeRabbit to submit approving reviews at all. With this off
# (the default — and what the dashboard toggle resolves to for this repo)
# CodeRabbit only comments and never approves. Declared in-repo so approvals
# don't depend on dashboard state.
request_changes_workflow: true
# Pre-merge checks are on by default (and in the dashboard), so they're disabled
# explicitly here: they add a status block without review value for this repo, and
# title enforcement is already covered by the commit-msg hook and the squash-title
# convention. "off" is quoted so YAML doesn't read it as the boolean false.
pre_merge_checks:
docstrings:
mode: "off"
title:
mode: "off"
description:
mode: "off"
issue_assessment:
mode: "off"
# Actually attach the chosen labels to the PR, not just suggest them in the walkthrough.
auto_apply_labels: true
# Custom labels assigned based on which product the diff touches. More than one may apply to a single PR.
labeling_instructions:
- label: "product: pnpm"
instructions: "Apply when changes affect the TypeScript pnpm CLI (any code outside pacquet/ and pnpr/)."
- label: "product: pacquet"
instructions: "Apply when changes affect pacquet, the Rust port of the pnpm CLI (the pacquet/ directory)."
- label: "product: pnpr"
instructions: "Apply when changes affect pnpr, the pnpm registry server (the pnpr/ directory and pacquet/crates/pnpr-* crates)."
knowledge_base:
learnings:
# Only apply learnings from this repository, not shared across other orgs/repos.
scope: local
# Auto-label issues, where a durable area/type taxonomy actually pays off (issues are long-lived and searched).
issue_enrichment:
labeling:
auto_apply_labels: true
labeling_instructions:
- label: "type: bug"
instructions: "Apply when the issue reports incorrect or unexpected behavior."
- label: "type: feature"
instructions: "Apply when the issue requests new functionality or an enhancement."
- label: "type: question"
instructions: "Apply when the issue is a usage question rather than a bug or feature request."
- label: "area: lockfile"
instructions: "Apply when the issue concerns pnpm-lock.yaml parsing, format, or handling."
- label: "area: monorepo"
instructions: "Apply when the issue concerns the pnpm workspace feature."
- label: "area: lifecycle-scripts"
instructions: "Apply when the issue concerns running package lifecycle/build scripts."
- label: "area: peers"
instructions: "Apply when the issue concerns peer dependency resolution."
- label: "area: catalogs"
instructions: "Apply when the issue concerns the catalogs feature."
- label: "area: patching"
instructions: "Apply when the issue concerns patching packages (pnpm patch / patchedDependencies)."
- label: "area: resolution"
instructions: "Apply when the issue concerns dependency resolution."
- label: "area: supply chain security"
instructions: "Apply when the issue concerns minimumReleaseAge, blockExoticSubdeps, build-script safety, or trust policies."
- label: "area: config dependencies"
instructions: "Apply when the issue concerns configDependencies."