werkrevisor 0.29.0: after three rounds of RED, werkrevisor asks a human #62

Merged
ai-reviewer merged 4 commits from red-rounds into main 2026-10-08 21:35:58 +02:00
Collaborator

See the PR document.

🤖 Generated with Claude Code

See [the PR document](docs/prs/2026-10-08-PR%2362-red-rounds.md). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-code added 1 commit 2026-10-08 21:29:40 +02:00
PR#62: PR document for limited rounds of RED
werkator build succeeded after 00:26
werkator/werkrevisor-statistics build succeeded after 00:33
cdc56e28c5
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mi added 1 commit 2026-10-08 21:30:12 +02:00
PR#62: red scenario tests for limited rounds of RED
werkator build failed after 00:20
werkator/werkrevisor-statistics build succeeded after 00:27
5965cdcaf1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code marked the pull request as ready for review 2026-10-08 21:31:28 +02:00
mi added 1 commit 2026-10-08 21:31:29 +02:00
werkrevisor 0.29.0: after three rounds of RED, werkrevisor asks a human
werkator build succeeded after 00:09
werkator/werkrevisor-statistics build succeeded after 00:33
ai-review/assessment AI findings; a developer approval after checking them unlocks the merge; review requested from mi; merge scheduled for when the checks succeed
ai-review/gate build succeeded after 01:51
c65c02c741
[gate] max_red_rounds counts the earlier heads in a row with RED; from the limit on, a new RED
stays RED, gets the reason red_escalated and requests the human reviewers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
🟠 werkrevisor ORANGE for c65c02c, superseded by the result for cc72cee

🟠 werkrevisor: ORANGE / FINDINGS

Change kind: mixed.

Reasons

  • ORANGE 1 finding(s) that Jev rates as probably real and severe: werkrevisor/cli.py:545-548
  • hint 5 changed file(s) that neither weaken the checks nor touch security according to Jev
  • hint 1 build change(s) of low risk according to Jev: statistics/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01)
  • hint 8 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev

Findings

  1. Inconsistent escalation note at werkrevisor/cli.py:545-548, severity unknown, counted as medium, ORANGE, as a line comment

Classifier

8 of 8 units passed all questions (1 PR document(s)).
1 answer ignored because of a confidence below [classifier] min_confidence.

Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 51992, calls 1, tokens in 50298 / out 14641 (reasoning included in out), duration 108.8 s, cost 0.0326 USD (reported), classifier `jev-1.13.0` calls 8, tokens in 6303, cost 0.0003 USD, finding judge `jev-1.13.0` calls 1, tokens in 1622, cost 0.0001 USD, change summary `openrouter/minimax/minimax-m3` via Minimax calls 1, tokens in 3006 / out 1261, cost 0.0024 USD (reported), PR document check `jev-1.13.0` calls 8, tokens in 12146, cost 0.0005 USD, build file judge `jev-1.13.0` calls 6, tokens in 4865, cost 0.0002 USD, phases: path_judge 0.5 s, classifier 0.5 s, change_summary 10.9 s, doc_check 0.6 s, context 0.3 s, model_review 95.5 s, finding_judge 0.2 s, config: defaults + host + repository (.werkrevisor.toml at main f542c11).
Reviewed head `c65c02c741f21a6d8bb841b2730df6246228b365` against base `f542c11c44b3636311bf7b996daef1094282c725`, werkrevisor 0.28.1.
<!-- werkrevisor:c65c02c741f21a6d8bb841b2730df6246228b365 --> <!-- werkrevisor-verdict:ORANGE --> <!-- werkrevisor-folded --> <details><summary>🟠 werkrevisor ORANGE for <code>c65c02c</code>, superseded by <a href="http://git.javagil.de/mi/werkrevisor/pulls/62#issuecomment-2249">the result for <code>cc72cee</code></a></summary> ## 🟠 werkrevisor: ORANGE / FINDINGS Change kind: `mixed`. ### Reasons - **ORANGE** 1 finding(s) that Jev rates as probably real and severe: werkrevisor/cli.py:545-548 - **hint** 5 changed file(s) that neither weaken the checks nor touch security according to Jev - **hint** 1 build change(s) of low risk according to Jev: statistics/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01) - **hint** 8 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev ### Findings 1. **Inconsistent escalation note** at `werkrevisor/cli.py:545-548`, severity unknown, counted as medium, ORANGE, as a line comment ### Classifier 8 of 8 units passed all questions (1 PR document(s)). 1 answer ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 51992, calls 1, tokens in 50298 / out 14641 (reasoning included in out), duration 108.8 s, cost 0.0326 USD (reported), classifier `jev-1.13.0` calls 8, tokens in 6303, cost 0.0003 USD, finding judge `jev-1.13.0` calls 1, tokens in 1622, cost 0.0001 USD, change summary `openrouter/minimax/minimax-m3` via Minimax calls 1, tokens in 3006 / out 1261, cost 0.0024 USD (reported), PR document check `jev-1.13.0` calls 8, tokens in 12146, cost 0.0005 USD, build file judge `jev-1.13.0` calls 6, tokens in 4865, cost 0.0002 USD, phases: path_judge 0.5 s, classifier 0.5 s, change_summary 10.9 s, doc_check 0.6 s, context 0.3 s, model_review 95.5 s, finding_judge 0.2 s, config: defaults + host + repository (.werkrevisor.toml at main f542c11).<br> Reviewed head `c65c02c741f21a6d8bb841b2730df6246228b365` against base `f542c11c44b3636311bf7b996daef1094282c725`, werkrevisor 0.28.1. </sub> </details>
ai-reviewer left a comment
Collaborator

werkrevisor: ORANGE / FINDINGS for c65c02c741f21a6d8bb841b2730df6246228b365.
The result comment of werkrevisor holds the details.

werkrevisor: ORANGE / FINDINGS for `c65c02c741f21a6d8bb841b2730df6246228b365`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:c65c02c741f21a6d8bb841b2730df6246228b365 -->
@@ -525,1 +542,4 @@
def _gate(config, pr, gitea, result, publish, redactor=lambda text: text):
if result.verdict not in HUMAN_UNLOCKABLE:
Collaborator

Inconsistent escalation note, severity unknown, counted as medium (werkrevisor)

ORANGE; Jev: real 0.85, severity 2.7 of 3

In _gate (non-approval mode) the return value of _request_for_escalation is discarded, so the published result comment never mentions the escalation. In _approval_gate the note is concatenated into the GateDecision and ends up in the result comment. With yellow_gate = "block" or "pass_with_review_request" the reviewer who gets the Gitea request still has to open the PR to learn that the bot escalated, while a host on yellow_gate = "approval" sees it inline.

**Inconsistent escalation note**, severity unknown, counted as medium (werkrevisor) ORANGE; Jev: real 0.85, severity 2.7 of 3 In `_gate` (non-approval mode) the return value of `_request_for_escalation` is discarded, so the published result comment never mentions the escalation. In `_approval_gate` the note is concatenated into the `GateDecision` and ends up in the result comment. With `yellow_gate = "block"` or `"pass_with_review_request"` the reviewer who gets the Gitea request still has to open the PR to learn that the bot escalated, while a host on `yellow_gate = "approval"` sees it inline.
Author
Collaborator

Fixed: without the approval gate, the escalation note now becomes the gate note too, so the result comment says "Gate: escalated to …" in every mode; _gate also gets the redactor. test_without_the_approval_gate_the_escalation_is_named_too covers yellow_gate = "block".

Fixed: without the approval gate, the escalation note now becomes the gate note too, so the result comment says "Gate: escalated to …" in every mode; _gate also gets the redactor. test_without_the_approval_gate_the_escalation_is_named_too covers yellow_gate = "block".
claude-code marked this conversation as resolved
ai-reviewer scheduled this pull request to auto merge when all checks succeed 2026-10-08 21:33:21 +02:00
ai-reviewer requested review from mi 2026-10-08 21:33:21 +02:00
mi added 1 commit 2026-10-08 21:34:43 +02:00
PR#62: the escalation note reaches the result comment in every gate mode
werkator build succeeded after 00:08
werkator/werkrevisor-statistics build succeeded after 00:27
ai-review/assessment AI review passed; approved by werkrevisor; merge already scheduled; review request of mi withdrawn
ai-review/gate build succeeded after 01:10
cc72ceee3e
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator

🟢 werkrevisor: GREEN / PASS

Change kind: mixed.

Reasons

  • hint 5 changed file(s) that neither weaken the checks nor touch security according to Jev
  • hint 1 build change(s) of low risk according to Jev: statistics/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01)
  • hint 8 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev

Classifier

8 of 8 units passed all questions (1 PR document(s)).
1 answer ignored because of a confidence below [classifier] min_confidence.

Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 52986, calls 1, tokens in 51255 / out 14656 (reasoning included in out), duration 68.1 s, cost 0.0329 USD (reported), classifier `jev-1.13.0` calls 8, tokens in 6303, cost 0.0003 USD, change summary `openrouter/minimax/minimax-m3` via Minimax calls 1, tokens in 3360 / out 1532, cost 0.0025 USD (reported), PR document check `jev-1.13.0` calls 8, tokens in 11906, cost 0.0005 USD, build file judge `jev-1.13.0` calls 6, tokens in 5234, cost 0.0002 USD, phases: path_judge 0.5 s, classifier 0.5 s, change_summary 12.8 s, doc_check 0.5 s, context 0.3 s, model_review 53.3 s, config: defaults + host + repository (.werkrevisor.toml at main f542c11).
Reviewed head `cc72ceee3e79cc6415bab7f8771a6c7757498bf8` against base `f542c11c44b3636311bf7b996daef1094282c725`, werkrevisor 0.28.1.
<!-- werkrevisor:cc72ceee3e79cc6415bab7f8771a6c7757498bf8 --> <!-- werkrevisor-verdict:GREEN --> ## 🟢 werkrevisor: GREEN / PASS Change kind: `mixed`. ### Reasons - **hint** 5 changed file(s) that neither weaken the checks nor touch security according to Jev - **hint** 1 build change(s) of low risk according to Jev: statistics/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01) - **hint** 8 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev ### Classifier 8 of 8 units passed all questions (1 PR document(s)). 1 answer ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 52986, calls 1, tokens in 51255 / out 14656 (reasoning included in out), duration 68.1 s, cost 0.0329 USD (reported), classifier `jev-1.13.0` calls 8, tokens in 6303, cost 0.0003 USD, change summary `openrouter/minimax/minimax-m3` via Minimax calls 1, tokens in 3360 / out 1532, cost 0.0025 USD (reported), PR document check `jev-1.13.0` calls 8, tokens in 11906, cost 0.0005 USD, build file judge `jev-1.13.0` calls 6, tokens in 5234, cost 0.0002 USD, phases: path_judge 0.5 s, classifier 0.5 s, change_summary 12.8 s, doc_check 0.5 s, context 0.3 s, model_review 53.3 s, config: defaults + host + repository (.werkrevisor.toml at main f542c11).<br> Reviewed head `cc72ceee3e79cc6415bab7f8771a6c7757498bf8` against base `f542c11c44b3636311bf7b996daef1094282c725`, werkrevisor 0.28.1. </sub>
ai-reviewer left a comment
Collaborator

werkrevisor: GREEN / PASS for cc72ceee3e79cc6415bab7f8771a6c7757498bf8.
The result comment of werkrevisor holds the details.

werkrevisor: GREEN / PASS for `cc72ceee3e79cc6415bab7f8771a6c7757498bf8`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:cc72ceee3e79cc6415bab7f8771a6c7757498bf8 -->
ai-reviewer removed review request for mi 2026-10-08 21:35:56 +02:00
ai-reviewer merged commit 6b0a631119 into main 2026-10-08 21:35:58 +02:00
ai-reviewer deleted branch red-rounds 2026-10-08 21:35:58 +02:00
Sign in to join this conversation.
No Reviewers
No labels
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mi/werkrevisor#62