Skip to content

Commit c6a747f

Browse files
committed
chore: simplify CodeRabbit spec prompt
1 parent 452d1d7 commit c6a747f

1 file changed

Lines changed: 16 additions & 37 deletions

File tree

.coderabbit.yaml

Lines changed: 16 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ reviews:
2424
abort_on_close: true
2525

2626
auto_review:
27-
enabled: true
27+
enabled: false
2828
auto_incremental_review: true
2929
auto_pause_after_reviewed_commits: 0
3030
drafts: true
@@ -41,54 +41,33 @@ reviews:
4141
path_instructions:
4242
- path: "**/*"
4343
instructions: |
44-
Review every PR against its source of truth, not only against the diff.
45-
46-
Requirement sources, in priority order:
47-
1. Linked GitHub issues in the PR body (`Fixes #123`, `Closes #123`, full issue URLs).
48-
2. Explicit issue/TZ references in the PR title, PR description, branch name (`issue-123`), and PR discussion.
49-
3. Changed-code markers such as `QUOTE(ТЗ): ...`, `REF: issue-...`, and nearby tests.
50-
4. If final decisions only exist in issue comments and are not available in review context, ask the author to copy the final TZ/acceptance criteria into the issue body or PR description.
44+
Ты строгий ревьюер SPEC DRIVEN DEVELOPMENT.
5145
52-
Always include a "Соответствие ТЗ" section when the PR has an issue/TZ reference:
53-
- list the concrete issue/TZ requirements that the diff implements;
54-
- flag any requirement from the issue, PR body, or PR discussion that is missing or contradicted by the code;
55-
- flag scope creep when the diff changes behavior not requested by the issue/TZ;
56-
- verify that tests cover the observable behavior promised by the issue/TZ.
46+
Перед выводами изучи README.md, другие *.md файлы, linked issues,
47+
PR description, PR comments/discussion и релевантную кодовую базу.
5748
58-
Security review priorities:
59-
- command injection, shell argument escaping, unsafe `docker`, `git`, `ssh`, `gh`, `sudo`, or process spawning;
60-
- path traversal, unsafe filesystem access, and accidental writes outside `.docker-git` or the project workspace;
61-
- SSRF/open redirects/network access introduced by user-controlled input;
62-
- leaked secrets, tokens, private keys, and sensitive data in logs;
63-
- GitHub Actions permission escalation, unpinned risky actions, unsafe `pull_request_target`, and supply-chain risks;
64-
- Docker socket exposure, privileged containers, host mounts, GPU/resource flags, and cross-container isolation breaks.
49+
Сверь изменения с исходным ТЗ/спекой и обсуждением. Флагай любой уход
50+
от спеки, недокументированное изменение поведения, отсутствие тестов
51+
для заявленного поведения и security-риск. Если спека не видна,
52+
попроси автора добавить ее в issue или PR description.
6553
6654
pre_merge_checks:
6755
issue_assessment:
6856
mode: "warning"
6957
custom_checks:
70-
- name: "Requirements alignment"
58+
- name: "Spec alignment"
7159
mode: "warning"
7260
instructions: |
73-
Fail if any of these are true:
74-
- The PR has no discoverable source requirement: no linked issue, no issue/TZ reference in the PR title/body/branch/discussion, and no changed-code `QUOTE(ТЗ)` or `REF` marker.
75-
- The changed code contradicts a linked issue title/body, PR description, PR discussion decision, or changed-code `QUOTE(ТЗ)`/`REF` marker.
76-
- A concrete acceptance criterion from the linked issue or PR description is not implemented and not explicitly marked out of scope in the PR description.
77-
- Observable behavior promised by the issue/TZ is changed without matching tests or a clear explanation in the PR description.
78-
79-
Pass when the source requirement is traceable and every explicit requirement is implemented, tested, or explicitly documented as out of scope.
80-
Return Inconclusive only when the relevant issue/TZ discussion is referenced but not available in the review context; ask the author to copy the final TZ into the issue body or PR description.
61+
Fail if the diff contradicts the visible spec/TZ, linked issue, PR
62+
discussion, README/docs, or changes behavior without documenting it.
63+
Fail if promised behavior has no relevant tests. Return Inconclusive
64+
when the spec is missing and ask the author to add it.
8165
- name: "Security regression"
8266
mode: "warning"
8367
instructions: |
84-
Fail if changed files introduce a high-confidence security regression, including:
85-
- command injection or unsafe shell/process execution with user-controlled input;
86-
- path traversal or writes outside intended project/container state directories;
87-
- credential, token, private-key, or PII exposure in source, generated config, logs, or CI output;
88-
- unsafe Docker/GitHub Actions configuration such as privileged containers, broad host mounts, unbounded Docker socket access, unsafe `pull_request_target`, or unnecessary write permissions;
89-
- dependency or package-manager changes that materially increase supply-chain risk without justification.
90-
91-
Pass when no high-confidence regression is found. Return Inconclusive when the diff is too large or lacks enough context to determine risk.
68+
Fail only for high-confidence security regressions: injection,
69+
path traversal, secret leaks, unsafe Docker/GitHub Actions settings,
70+
or unjustified supply-chain risk.
9271
9372
tools:
9473
github-checks:

0 commit comments

Comments
 (0)