You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .coderabbit.yaml
+16-37Lines changed: 16 additions & 37 deletions
Original file line number
Diff line number
Diff line change
@@ -24,7 +24,7 @@ reviews:
24
24
abort_on_close: true
25
25
26
26
auto_review:
27
-
enabled: true
27
+
enabled: false
28
28
auto_incremental_review: true
29
29
auto_pause_after_reviewed_commits: 0
30
30
drafts: true
@@ -41,54 +41,33 @@ reviews:
41
41
path_instructions:
42
42
- path: "**/*"
43
43
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.
51
45
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 и релевантную кодовую базу.
57
48
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;
Сверь изменения с исходным ТЗ/спекой и обсуждением. Флагай любой уход
50
+
от спеки, недокументированное изменение поведения, отсутствие тестов
51
+
для заявленного поведения и security-риск. Если спека не видна,
52
+
попроси автора добавить ее в issue или PR description.
65
53
66
54
pre_merge_checks:
67
55
issue_assessment:
68
56
mode: "warning"
69
57
custom_checks:
70
-
- name: "Requirements alignment"
58
+
- name: "Spec alignment"
71
59
mode: "warning"
72
60
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.
81
65
- name: "Security regression"
82
66
mode: "warning"
83
67
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,
0 commit comments