fix(review): a code-review finding against a brief Non-Goal may drop to MINOR, never a BLOCKER
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
3009c5eddb
commit
ce7700b71b
5 changed files with 533 additions and 4 deletions
55
tests/fixtures/review-brief-conflict-illegal.md
vendored
Normal file
55
tests/fixtures/review-brief-conflict-illegal.md
vendored
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
type: trekreview
|
||||
review_version: "1.1"
|
||||
task: "t"
|
||||
slug: s
|
||||
project_dir: .claude/projects/2026-10-06-s/
|
||||
brief_path: .claude/projects/2026-10-06-s/brief.md
|
||||
scope_sha_end: abc
|
||||
reviewed_files_count: 1
|
||||
verdict: ALLOW
|
||||
findings:
|
||||
- 8530de651325215c87cc8ba418c42ba3e8a66ed2
|
||||
---
|
||||
|
||||
# Review: t
|
||||
|
||||
## Executive Summary
|
||||
|
||||
One reviewer-agent finding (no engine) carries a brief-conflict mark at MINOR: only an engine finding is ever marked, so the gate refuses it.
|
||||
|
||||
## Coverage
|
||||
|
||||
| File | Treatment | Reason |
|
||||
|------|-----------|--------|
|
||||
| lib/b.mjs | summary-only | default |
|
||||
|
||||
## Remediation Summary
|
||||
|
||||
x
|
||||
|
||||
```json
|
||||
{
|
||||
"verdict": "ALLOW",
|
||||
"counts": {
|
||||
"BLOCKER": 0,
|
||||
"MAJOR": 0,
|
||||
"MINOR": 1,
|
||||
"SUGGESTION": 0
|
||||
},
|
||||
"allow_blocked_by": [],
|
||||
"findings": [
|
||||
{
|
||||
"id": "8530de651325215c87cc8ba418c42ba3e8a66ed2",
|
||||
"severity": "MINOR",
|
||||
"rule_key": "MISSING_TEST",
|
||||
"file": "lib/b.mjs",
|
||||
"line": 7,
|
||||
"title": "No test for the retry path",
|
||||
"detail": "The retry branch has no test.",
|
||||
"recommended_action": "Add a test for the retry branch.",
|
||||
"contradicts_brief": "No retry layer around the HTTP client (Non-Goal 2)"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
57
tests/fixtures/review-brief-conflict-legal.md
vendored
Normal file
57
tests/fixtures/review-brief-conflict-legal.md
vendored
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
---
|
||||
type: trekreview
|
||||
review_version: "1.1"
|
||||
task: "t"
|
||||
slug: s
|
||||
project_dir: .claude/projects/2026-10-06-s/
|
||||
brief_path: .claude/projects/2026-10-06-s/brief.md
|
||||
scope_sha_end: abc
|
||||
reviewed_files_count: 1
|
||||
verdict: ALLOW
|
||||
findings:
|
||||
- d3c22f4b1309d6001a0f3948e377a8e80a4b9c55
|
||||
---
|
||||
|
||||
# Review: t
|
||||
|
||||
## Executive Summary
|
||||
|
||||
One /code-review finding contradicts a brief Non-Goal; it is kept, marked and lowered from MAJOR to MINOR (the one legal shape).
|
||||
|
||||
## Coverage
|
||||
|
||||
| File | Treatment | Reason |
|
||||
|------|-----------|--------|
|
||||
| lib/a.mjs | summary-only | default |
|
||||
|
||||
## Remediation Summary
|
||||
|
||||
x
|
||||
|
||||
```json
|
||||
{
|
||||
"verdict": "ALLOW",
|
||||
"counts": {
|
||||
"BLOCKER": 0,
|
||||
"MAJOR": 0,
|
||||
"MINOR": 1,
|
||||
"SUGGESTION": 0
|
||||
},
|
||||
"allow_blocked_by": [],
|
||||
"findings": [
|
||||
{
|
||||
"id": "d3c22f4b1309d6001a0f3948e377a8e80a4b9c55",
|
||||
"severity": "MINOR",
|
||||
"rule_key": "CODE_REVIEW_DEFECT",
|
||||
"file": "lib/a.mjs",
|
||||
"line": 12,
|
||||
"title": "No retry on transient failure",
|
||||
"detail": "A 503 fails the call.",
|
||||
"recommended_action": "Wrap the call in a retry with backoff.",
|
||||
"engine": "code-review",
|
||||
"contradicts_brief": "No retry layer around the HTTP client (Non-Goal 2)",
|
||||
"brief_lowered_from": "MAJOR"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue