werkrevisor 0.27.0: the operator chooses the OpenRouter providers of the model #56

Merged
ai-reviewer merged 5 commits from provider-order into main 2026-10-08 18:41:49 +02:00
Collaborator

See the PR document.

🤖 Generated with Claude Code

See [the PR document](docs/prs/2026-10-08-PR%2356-provider-order.md). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-code added 1 commit 2026-10-08 18:00:45 +02:00
PR#56: PR document for the OpenRouter provider order
werkator build succeeded after 01:50
werkator/werkrevisor-statistics build succeeded after 00:39
e8d37b85a8
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mi added 1 commit 2026-10-08 18:01:34 +02:00
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code marked the pull request as ready for review 2026-10-08 18:03:19 +02:00
mi added 1 commit 2026-10-08 18:03:22 +02:00
werkrevisor 0.27.0: the operator chooses the OpenRouter providers of the model
werkator/werkrevisor-statistics build succeeded after 00:33
ai-review/assessment human review required; a human approval unlocks the merge; review requested from mi; merge scheduled for when the checks succeed
ai-review/gate build succeeded after 02:26
werkator build succeeded after 00:10
80b54136f9
[model] provider_order and [doc_check] provider_order pass an order of OpenRouter providers,
with fallbacks; the usage record names the provider of the change summary. The MiniMax configs
ask the maker of the model first, since some providers hang.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
🟡 werkrevisor YELLOW for 80b5413, superseded by the result for 67db176

🟡 werkrevisor: YELLOW / HUMAN_REVIEW

Change kind: mixed.

Reasons

  • YELLOW tests lost or disabled: tests/test_provider_order.py:41 disables a test
  • hint 9 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 7 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev

Classifier

7 of 7 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 49221, calls 1, tokens in 47356 / out 16446 (reasoning included in out), duration 144.5 s, cost 0.0339 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5580, cost 0.0002 USD, change summary `openrouter/minimax/minimax-m3` calls 1, tokens in 3992 / out 764, cost 0.0017 USD (reported), PR document check `jev-1.13.0` calls 7, tokens in 11435, cost 0.0005 USD, build file judge `jev-1.13.0` calls 10, tokens in 6981, cost 0.0003 USD, phases: path_judge 0.8 s, classifier 0.8 s, change_summary 30.9 s, doc_check 0.5 s, context 0.4 s, model_review 110.8 s, config: defaults + host + repository (.werkrevisor.toml at main 73bb6f6).
Reviewed head `80b54136f9a5efc2fad086f685637e595d274d35` against base `73bb6f6c209c8be3b21db42e76abeccdbbb3453d`, werkrevisor 0.26.0.
<!-- werkrevisor:80b54136f9a5efc2fad086f685637e595d274d35 --> <!-- werkrevisor-verdict:YELLOW --> <!-- werkrevisor-folded --> <details><summary>🟡 werkrevisor YELLOW for <code>80b5413</code>, superseded by <a href="http://git.javagil.de/mi/werkrevisor/pulls/56#issuecomment-2122">the result for <code>67db176</code></a></summary> ## 🟡 werkrevisor: YELLOW / HUMAN_REVIEW Change kind: `mixed`. ### Reasons - **YELLOW** tests lost or disabled: tests/test_provider_order.py:41 disables a test - **hint** 9 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** 7 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev ### Classifier 7 of 7 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 49221, calls 1, tokens in 47356 / out 16446 (reasoning included in out), duration 144.5 s, cost 0.0339 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5580, cost 0.0002 USD, change summary `openrouter/minimax/minimax-m3` calls 1, tokens in 3992 / out 764, cost 0.0017 USD (reported), PR document check `jev-1.13.0` calls 7, tokens in 11435, cost 0.0005 USD, build file judge `jev-1.13.0` calls 10, tokens in 6981, cost 0.0003 USD, phases: path_judge 0.8 s, classifier 0.8 s, change_summary 30.9 s, doc_check 0.5 s, context 0.4 s, model_review 110.8 s, config: defaults + host + repository (.werkrevisor.toml at main 73bb6f6).<br> Reviewed head `80b54136f9a5efc2fad086f685637e595d274d35` against base `73bb6f6c209c8be3b21db42e76abeccdbbb3453d`, werkrevisor 0.26.0. </sub> </details>
ai-reviewer scheduled this pull request to auto merge when all checks succeed 2026-10-08 18:05:48 +02:00
ai-reviewer requested review from mi 2026-10-08 18:05:48 +02:00
mi added 1 commit 2026-10-08 18:06:33 +02:00
PR#56: the integration test always runs, since the tests run in the PR-Agent image
werkator build succeeded after 00:10
werkator/werkrevisor-statistics build succeeded after 00:27
ai-review/assessment AI review passed; approved by werkrevisor; merge waits for 1 open hint(s): reply to each line comment and resolve it, then restart the review or push a commit
ai-review/gate build succeeded after 11:54
67db1767bf
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
🟢 werkrevisor GREEN for 67db176, superseded by the result for 6243a8d

🟢 werkrevisor: GREEN / PASS

Gate: approved by werkrevisor; merge waits for 1 open hint(s): reply to each line comment and resolve it, then restart the review or push a commit.

Change kind: mixed.

Reasons

  • hint 9 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 7 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev
  • hint 1 finding(s) of low severity or rated minor by Jev: docs/prs/2026-10-08-PR#56-provider-order.md:18

Findings

  1. Unclear Non-Goal at docs/prs/2026-10-08-PR#56-provider-order.md:18, severity unknown, counted as medium, hint, as a line comment

Classifier

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

Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 49207, calls 1, tokens in 47331 / out 13825 (reasoning included in out), duration 712.4 s, cost 0.0284 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5580, cost 0.0002 USD, finding judge `jev-1.13.0` calls 1, tokens in 1297, cost 0.0001 USD, change summary `openrouter/minimax/minimax-m3` calls 1, tokens in 3954 / out 1561, cost 0.0030 USD (reported), PR document check `jev-1.13.0` calls 7, tokens in 12065, cost 0.0005 USD, build file judge `jev-1.13.0` calls 10, tokens in 6935, cost 0.0003 USD, phases: path_judge 0.7 s, classifier 0.5 s, change_summary 8.6 s, doc_check 0.5 s, context 0.5 s, model_review 700.8 s, finding_judge 0.4 s, config: defaults + host + repository (.werkrevisor.toml at main 73bb6f6).
Reviewed head `67db1767bfe66950e2a51e537f49bdacd7ef447a` against base `73bb6f6c209c8be3b21db42e76abeccdbbb3453d`, werkrevisor 0.26.0.
<!-- werkrevisor:67db1767bfe66950e2a51e537f49bdacd7ef447a --> <!-- werkrevisor-verdict:GREEN --> <!-- werkrevisor-folded --> <details><summary>🟢 werkrevisor GREEN for <code>67db176</code>, superseded by <a href="http://git.javagil.de/mi/werkrevisor/pulls/56#issuecomment-2129">the result for <code>6243a8d</code></a></summary> ## 🟢 werkrevisor: GREEN / PASS Gate: approved by werkrevisor; merge waits for 1 open hint(s): reply to each line comment and resolve it, then restart the review or push a commit. Change kind: `mixed`. ### Reasons - **hint** 9 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** 7 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev - **hint** 1 finding(s) of low severity or rated minor by Jev: docs/prs/2026-10-08-PR#56-provider-order.md:18 ### Findings 1. **Unclear Non-Goal** at `docs/prs/2026-10-08-PR#56-provider-order.md:18`, severity unknown, counted as medium, hint, as a line comment ### Classifier 7 of 7 units passed all questions (1 PR document(s)). 3 answers ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 49207, calls 1, tokens in 47331 / out 13825 (reasoning included in out), duration 712.4 s, cost 0.0284 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5580, cost 0.0002 USD, finding judge `jev-1.13.0` calls 1, tokens in 1297, cost 0.0001 USD, change summary `openrouter/minimax/minimax-m3` calls 1, tokens in 3954 / out 1561, cost 0.0030 USD (reported), PR document check `jev-1.13.0` calls 7, tokens in 12065, cost 0.0005 USD, build file judge `jev-1.13.0` calls 10, tokens in 6935, cost 0.0003 USD, phases: path_judge 0.7 s, classifier 0.5 s, change_summary 8.6 s, doc_check 0.5 s, context 0.5 s, model_review 700.8 s, finding_judge 0.4 s, config: defaults + host + repository (.werkrevisor.toml at main 73bb6f6).<br> Reviewed head `67db1767bfe66950e2a51e537f49bdacd7ef447a` against base `73bb6f6c209c8be3b21db42e76abeccdbbb3453d`, werkrevisor 0.26.0. </sub> </details>
ai-reviewer approved these changes 2026-10-08 18:18:36 +02:00
Dismissed
ai-reviewer left a comment
Collaborator

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

werkrevisor: GREEN / PASS for `67db1767bfe66950e2a51e537f49bdacd7ef447a`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:67db1767bfe66950e2a51e537f49bdacd7ef447a -->
@@ -0,0 +15,4 @@
## Non-Goals
- No provider for the excerpt selection: its model is another one.
Collaborator

Unclear Non-Goal, severity unknown, counted as medium (werkrevisor)

hint; Jev: real 0.75, severity 1.2 of 3

The Non-Goal "No provider for the excerpt selection: its model is another one" is ambiguous. The excerpt selection uses the same OpenRouterSelector class that supports provider_order via _routing, but ExcerptConfig does not have a provider_order field. The actual reason for not adding provider_order to excerpt is that ExcerptConfig lacks the field (and the PR only measured provider issues for MiniMax M3), not because "its model is another one". A reader might wonder why a different model would preclude provider_order.

**Unclear Non-Goal**, severity unknown, counted as medium (werkrevisor) hint; Jev: real 0.75, severity 1.2 of 3 The Non-Goal "No provider for the excerpt selection: its model is another one" is ambiguous. The excerpt selection uses the same `OpenRouterSelector` class that supports `provider_order` via `_routing`, but `ExcerptConfig` does not have a `provider_order` field. The actual reason for not adding `provider_order` to excerpt is that `ExcerptConfig` lacks the field (and the PR only measured provider issues for MiniMax M3), not because "its model is another one". A reader might wonder why a different model would preclude `provider_order`.
Author
Collaborator

Fixed: the Non-Goal now names the reason: the excerpt selection uses GPT-6 Luna, whose calls did not hang in the measurement.

Fixed: the Non-Goal now names the reason: the excerpt selection uses GPT-6 Luna, whose calls did not hang in the measurement.
claude-code marked this conversation as resolved
ai-reviewer canceled auto merging this pull request when all checks succeed 2026-10-08 18:18:36 +02:00
mi added 1 commit 2026-10-08 18:29:28 +02:00
PR#56: the Non-Goal names why the excerpt selection gets no provider order
ai-review/assessment AI review passed; approved by werkrevisor; merge scheduled for when the checks succeed; review request of mi withdrawn
ai-review/gate build succeeded after 12:18
werkator build succeeded after 00:09
werkator/werkrevisor-statistics build succeeded after 00:26
6243a8dc66
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mi dismissed ai-reviewer's review 2026-10-08 18:29:29 +02:00
Reason:

New commits pushed, approval review dismissed automatically according to repository settings

Collaborator

🟢 werkrevisor: GREEN / PASS

Change kind: mixed.

Reasons

  • hint 9 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 7 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev
  • hint the model review failed: TimeoutError: review exceeded 720 seconds (advisory: Jev judged every changed file)

Classifier

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

Usage: model `openrouter/minimax/minimax-m3`, LLM failed (TimeoutError), tokens counted before the call 49221, duration 735.9 s, cost unknown, classifier `jev-1.13.0` calls 7, tokens in 5593, cost 0.0002 USD, change summary `openrouter/minimax/minimax-m3` calls 1, tokens in 3954 / out 1931, cost 0.0035 USD (reported), PR document check `jev-1.13.0` calls 7, tokens in 13317, cost 0.0006 USD, build file judge `jev-1.13.0` calls 10, tokens in 6935, cost 0.0003 USD, phases: path_judge 0.8 s, classifier 0.5 s, change_summary 10.5 s, doc_check 0.5 s, context 0.4 s, model_review 722.7 s, config: defaults + host + repository (.werkrevisor.toml at main 73bb6f6).
Reviewed head `6243a8dc6625822cdf68d347b666a1dfc8dffb61` against base `73bb6f6c209c8be3b21db42e76abeccdbbb3453d`, werkrevisor 0.26.0.
<!-- werkrevisor:6243a8dc6625822cdf68d347b666a1dfc8dffb61 --> <!-- werkrevisor-verdict:GREEN --> ## 🟢 werkrevisor: GREEN / PASS Change kind: `mixed`. ### Reasons - **hint** 9 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** 7 section(s) of the PR document agree with the change summary of openrouter/minimax/minimax-m3 according to Jev - **hint** the model review failed: TimeoutError: review exceeded 720 seconds (advisory: Jev judged every changed file) ### Classifier 7 of 7 units passed all questions (1 PR document(s)). 3 answers ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM failed (TimeoutError), tokens counted before the call 49221, duration 735.9 s, cost unknown, classifier `jev-1.13.0` calls 7, tokens in 5593, cost 0.0002 USD, change summary `openrouter/minimax/minimax-m3` calls 1, tokens in 3954 / out 1931, cost 0.0035 USD (reported), PR document check `jev-1.13.0` calls 7, tokens in 13317, cost 0.0006 USD, build file judge `jev-1.13.0` calls 10, tokens in 6935, cost 0.0003 USD, phases: path_judge 0.8 s, classifier 0.5 s, change_summary 10.5 s, doc_check 0.5 s, context 0.4 s, model_review 722.7 s, config: defaults + host + repository (.werkrevisor.toml at main 73bb6f6).<br> Reviewed head `6243a8dc6625822cdf68d347b666a1dfc8dffb61` against base `73bb6f6c209c8be3b21db42e76abeccdbbb3453d`, werkrevisor 0.26.0. </sub>
ai-reviewer left a comment
Collaborator

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

werkrevisor: GREEN / PASS for `6243a8dc6625822cdf68d347b666a1dfc8dffb61`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:6243a8dc6625822cdf68d347b666a1dfc8dffb61 -->
ai-reviewer scheduled this pull request to auto merge when all checks succeed 2026-10-08 18:41:47 +02:00
ai-reviewer removed review request for mi 2026-10-08 18:41:47 +02:00
ai-reviewer merged commit 6410fa5f18 into main 2026-10-08 18:41:49 +02:00
ai-reviewer deleted branch provider-order 2026-10-08 18:41:49 +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#56