Two restarts on every build row: same commit and newest commit (v1.41.0) #150

Merged
ai-reviewer merged 5 commits from claude-code/two-restarts into main 2026-10-10 23:59:52 +02:00
Collaborator

See docs/prs/2026-10-10-PR#150-two-restarts.md

🤖 Generated with Claude Code

See docs/prs/2026-10-10-PR#150-two-restarts.md 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-code added 1 commit 2026-10-10 23:02:45 +02:00
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mi added 1 commit 2026-10-10 23:23:28 +02:00
Two restarts on every build row and the artifact page: same commit, newest commit
werkator build succeeded after 02:40
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 03:18
ad61b874f1
POST /api/builds/<artifactKey>/restart builds a run again; atOriginHead=true builds the newest commit.
BuildRestarts names why one cannot run; the rows show it as the disabled button's title, the API answers 409.
Follow-ups, pull-request targets and gone branches never start at the newest commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code marked the pull request as ready for review 2026-10-10 23:27:03 +02:00
Collaborator
🟡 werkrevisor YELLOW for ad61b87, superseded by the result for 4923513

🟡 werkrevisor: YELLOW / HUMAN_REVIEW

Change kind: mixed.

Reasons

  • YELLOW spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.02 hard_to_read (0.54 > yellow_above = 0.5)
  • YELLOW spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.06 hard_to_read (0.55 > yellow_above = 0.5)
  • YELLOW spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.07 more_than_one_aspect (0.62 > yellow_above = 0.6)
  • hint REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.95)
  • hint 21 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev
  • hint 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01)
  • hint 2 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js, src/main/resources/templates/releases.html (advisory: Jev judged every changed file)
  • hint 2 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/static/werkator.css, src/main/resources/templates/artifact.html
  • hint 10 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/templates/builds.html, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt and 7 more (advisory: Jev judged every changed file)
  • hint excerpt selection by openrouter/openai/gpt-6-luna failed, the fixed window was used: src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt (a range lies outside the file)

Classifier

Unit Question Problem Confidence Verdict
docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.02 hard_to_read 0.54 0.55 YELLOW
docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.06 hard_to_read 0.55 0.52 YELLOW
docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.07 more_than_one_aspect 0.62 – YELLOW

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

Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 80493, calls 1, tokens in 77402 / out 25266 (reasoning included in out), duration 192.1 s, cost 0.0535 USD (reported), classifier `jev-1.13.0` calls 11, tokens in 9387, cost 0.0004 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 14, tokens in 126778 / out 3148, cost 0.0174 USD (reported), build file judge `jev-1.13.0` calls 22, tokens in 33802, cost 0.0014 USD, phases: path_judge 1.4 s, classifier 0.7 s, context 73.1 s, model_review 116.3 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).
Reviewed head `ad61b874f1aa1a37fea9ee93967af3c7b6e6a0ed` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2.
<!-- werkrevisor:ad61b874f1aa1a37fea9ee93967af3c7b6e6a0ed --> <!-- werkrevisor-verdict:YELLOW --> <!-- werkrevisor-blocks:82386717a348307a5fb7475b31a8766b,4d73b2ce38129a7939680739887d7e31,dbb52771b6b40f3529363603a2269a0d,101e1fc7c9f74257f3d0e773f4c14f43,71ada6c14635c9481e5a6ab7491477b1,89e687499cf3e45c6a39c35bddde0f9f,57a729ce543d1cb90f93a57f20e1d145,615ea38473d2eb2a47c8bfffa2edf050,0f148811039fc6c5eb0e595c584b0cb2,00eed7efc952f84f6cacb92df4e633bd,09ef78957e693a97a679ecf1440420c0,ac49bd3178eecca4adc360569bad53ee,e4b2f6ae44b236d5d7f6f4164ecf479a,d51bd61958967421064e049d08d79700,7021398f424089a5aa587a4f72367464,3e804be479f53b02e49e96d74e829d1c,c23bcfc46f0c7e84ba1556b955feeb5a,9aa43d5dfa7aef3bdf6b146a6ef10def,20c5541d56030b6779b0eaea9e60cadd,1ae0b552f3029bf5afc9b5d8fae991ee,20c5541d56030b6779b0eaea9e60cadd,1ae0b552f3029bf5afc9b5d8fae991ee,e48848e7978208226117b7fb22a35e3b,f4ec1854b2299861994702fc96e886bb,fda2ffd8b20645079efa634b5bcbc454,10fc04a367d36ed314d86106012ebd1d,30f6aaa1e9d85ae39d7ec7352f044aec,641ffca33206d3a655b4ae950b506e81,de9876868c6dde494c6ff0876de26bcb,2d767f1d286924e1d431527cfd76d306,590ab6b6bd86134a4c2819fcc6fe2846,19d89d0f20b012ee84fd4b172230030d,f31c57ebeadd638b5c1b4a1b36477c4c,f7cc076d41df89ff66d293ba838f11b9,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,009bda02b0bcc211e2f16e1a7d8b32fa,1141ff1c389c60a1cf61f2f7f4c2e80b,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,55aaea86272822990db13ae5c2a0b892,7c36fc769c396d2677ba4fc6bc08e4d6,fd4f3922bcddb79b39c4e18e194b1229,17eff09a7e748d9128362cc2123d7c09,43ed7a98a3655b51f2134a32a2da36ff,1fb66b24a27bb104ba898245a5345340,b5c259c1e8398be96c77e55547b23412,4a4c9613f1f78fb10375c971f26949a8,4bd08c159cca33304406dec9a592a15d,e20b7db9a38667939bf28a711680331d,66eb724c565edd03d64dacb2bb8b7eac,4d536f7549ad9e58976adc3085e0a5b1,d1bc4b74b15a3d4afabbe2d635e595fc,b7e971b25d6421e05974fd3d1584bb6b,67c5b3ca41915f7d626a088686922560,425c4783b30a3f741f085738a566dc81,867d21cad73951988c1ebd4fe0d763f8,be7c9d66c56f46ce057207462399b86e,0a431ad51b251f95ea87d3aa23ed97a9,0785462fb9a12eb39f6f2a76dfc9a634,fe955ffdff7f90947769b0f1482b89b9,527f7bd3b28cf787abf66a6007a32e90,bce2a4489c55ea20e633acc87fd76474,c99533981ba772c0df79b042c0d1c62a,57f9ee23356da4ea33945d159477a175,bcc1fd9b3f624c73c4b8c70914165d9c,48b355127bc4bf9d8c4e7a74830aa1df,3d18d119d4ab55bc4d211074c70f7965,e7d78994e3c948433b1be20237ebe453,7dfdf367cd3d687fc7f0ee4b55f93264,92e5e684d0662934c030e64e01de4d28,925c9b77317819aa0887d9ce067e3f10,c911f41be2a67dab3185a9cad28337ea,1dfe636ed7fe05018b5eac96f0ed27c1,38c3dac6ddabd244e4963caf34a8ea90,b23c9e92e4a5f903ee1c65bac3d97a4f,1223ed5947a1b842a2938447443bbf1e,3cbe93ef9388dc9b4f13ef31b1967756,d0b7e7f3a06c37465604023766e1e087,ab0c7cd1f9c2516c20647e8d6c261bde,6f7723328806813624f08618ddf4931d,8f5ecb0a0034ef6f82cb3353e54cf783,c9e9885f914d8b5d59521572a58150c3,622daac3ddc8f3b07204438c9cec3b04,8f6023d4ff2a8d624aeaa787d29224a8,abfa6bf254a838c06c563378a5c11f67 --> <!-- werkrevisor-folded --> <details><summary>🟡 werkrevisor YELLOW for <code>ad61b87</code>, superseded by <a href="http://git.javagil.de/mi/werkator/pulls/150#issuecomment-3462">the result for <code>4923513</code></a></summary> ## 🟡 werkrevisor: YELLOW / HUMAN_REVIEW Change kind: `mixed`. ### Reasons - **YELLOW** spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.02 hard_to_read (0.54 > yellow_above = 0.5) - **YELLOW** spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.06 hard_to_read (0.55 > yellow_above = 0.5) - **YELLOW** spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.07 more_than_one_aspect (0.62 > yellow_above = 0.6) - **hint** REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.95) - **hint** 21 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev - **hint** 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01) - **hint** 2 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js, src/main/resources/templates/releases.html (advisory: Jev judged every changed file) - **hint** 2 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/static/werkator.css, src/main/resources/templates/artifact.html - **hint** 10 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/templates/builds.html, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt and 7 more (advisory: Jev judged every changed file) - **hint** excerpt selection by openrouter/openai/gpt-6-luna failed, the fixed window was used: src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt (a range lies outside the file) ### Classifier | Unit | Question | Problem | Confidence | Verdict | |---|---|---|---|---| | docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.02 | hard_to_read | 0.54 | 0.55 | YELLOW | | docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.06 | hard_to_read | 0.55 | 0.52 | YELLOW | | docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.07 | more_than_one_aspect | 0.62 | – | YELLOW | 8 of 11 units passed all questions (1 PR document(s)). 2 answers ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 80493, calls 1, tokens in 77402 / out 25266 (reasoning included in out), duration 192.1 s, cost 0.0535 USD (reported), classifier `jev-1.13.0` calls 11, tokens in 9387, cost 0.0004 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 14, tokens in 126778 / out 3148, cost 0.0174 USD (reported), build file judge `jev-1.13.0` calls 22, tokens in 33802, cost 0.0014 USD, phases: path_judge 1.4 s, classifier 0.7 s, context 73.1 s, model_review 116.3 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).<br> Reviewed head `ad61b874f1aa1a37fea9ee93967af3c7b6e6a0ed` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2. </sub> </details>
ai-reviewer scheduled this pull request to auto merge when all checks succeed 2026-10-10 23:30:22 +02:00
ai-reviewer requested review from mi 2026-10-10 23:30:22 +02:00
claude-code marked the pull request as work in progress 2026-10-10 23:30:44 +02:00
mi added 1 commit 2026-10-10 23:31:07 +02:00
Scenarios of PR#150 with one aspect each, easier to read
werkator build succeeded after 02:27
ai-review/assessment AI findings; a developer approval after checking them unlocks the merge; a human review request is pending; merge already scheduled
ai-review/gate build succeeded after 02:50
4923513e76
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code marked the pull request as ready for review 2026-10-10 23:34:31 +02:00
Collaborator
🟠 werkrevisor ORANGE for 4923513, superseded by the result for c8e1842

🟠 werkrevisor: ORANGE / FINDINGS

Change kind: mixed.

Reasons

  • ORANGE 1 finding(s) that Jev rates as probably real and severe: src/main/kotlin/de/hoennig/werkator/server/BuildRestarts.kt:56-62
  • hint REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.95)
  • hint 21 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev
  • hint 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01)
  • hint 2 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js, src/main/resources/templates/releases.html (advisory: Jev judged every changed file)
  • hint 2 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/static/werkator.css, src/main/resources/templates/artifact.html
  • hint 10 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/templates/builds.html, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt and 7 more (advisory: Jev judged every changed file)
  • hint model recommends merge with caution

Findings

  1. Branch-defined follow-up not refused at src/main/kotlin/de/hoennig/werkator/server/BuildRestarts.kt:56-62, severity unknown, counted as medium, ORANGE, as a line comment

Classifier

12 of 12 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 80505, calls 1, tokens in 77417 / out 21785 (reasoning included in out), duration 164.6 s, cost 0.0493 USD (reported), classifier `jev-1.13.0` calls 12, tokens in 10214, cost 0.0004 USD, finding judge `jev-1.13.0` calls 1, tokens in 2023, cost 0.0001 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 14, tokens in 126778 / out 2680, cost 0.0041 USD (reported), build file judge `jev-1.13.0` calls 22, tokens in 33802, cost 0.0014 USD, phases: path_judge 1.3 s, classifier 0.8 s, context 59.2 s, model_review 102.6 s, finding_judge 0.2 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).
Reviewed head `4923513e7601f8d26b75e0f1106cc00ee746751b` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2.
<!-- werkrevisor:4923513e7601f8d26b75e0f1106cc00ee746751b --> <!-- werkrevisor-verdict:ORANGE --> <!-- werkrevisor-blocks:82386717a348307a5fb7475b31a8766b,4d73b2ce38129a7939680739887d7e31,dbb52771b6b40f3529363603a2269a0d,3c23de67084611907552a9e4fff60e95,71ada6c14635c9481e5a6ab7491477b1,89e687499cf3e45c6a39c35bddde0f9f,57a729ce543d1cb90f93a57f20e1d145,615ea38473d2eb2a47c8bfffa2edf050,0f148811039fc6c5eb0e595c584b0cb2,00eed7efc952f84f6cacb92df4e633bd,09ef78957e693a97a679ecf1440420c0,ac49bd3178eecca4adc360569bad53ee,e4b2f6ae44b236d5d7f6f4164ecf479a,d51bd61958967421064e049d08d79700,7021398f424089a5aa587a4f72367464,3e804be479f53b02e49e96d74e829d1c,c23bcfc46f0c7e84ba1556b955feeb5a,9aa43d5dfa7aef3bdf6b146a6ef10def,20c5541d56030b6779b0eaea9e60cadd,1ae0b552f3029bf5afc9b5d8fae991ee,20c5541d56030b6779b0eaea9e60cadd,1ae0b552f3029bf5afc9b5d8fae991ee,e48848e7978208226117b7fb22a35e3b,f4ec1854b2299861994702fc96e886bb,fda2ffd8b20645079efa634b5bcbc454,10fc04a367d36ed314d86106012ebd1d,30f6aaa1e9d85ae39d7ec7352f044aec,641ffca33206d3a655b4ae950b506e81,de9876868c6dde494c6ff0876de26bcb,2d767f1d286924e1d431527cfd76d306,590ab6b6bd86134a4c2819fcc6fe2846,19d89d0f20b012ee84fd4b172230030d,f31c57ebeadd638b5c1b4a1b36477c4c,f7cc076d41df89ff66d293ba838f11b9,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,009bda02b0bcc211e2f16e1a7d8b32fa,1141ff1c389c60a1cf61f2f7f4c2e80b,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,55aaea86272822990db13ae5c2a0b892,7c36fc769c396d2677ba4fc6bc08e4d6,fd4f3922bcddb79b39c4e18e194b1229,17eff09a7e748d9128362cc2123d7c09,43ed7a98a3655b51f2134a32a2da36ff,1fb66b24a27bb104ba898245a5345340,b5c259c1e8398be96c77e55547b23412,4a4c9613f1f78fb10375c971f26949a8,4bd08c159cca33304406dec9a592a15d,e20b7db9a38667939bf28a711680331d,66eb724c565edd03d64dacb2bb8b7eac,4d536f7549ad9e58976adc3085e0a5b1,d1bc4b74b15a3d4afabbe2d635e595fc,b7e971b25d6421e05974fd3d1584bb6b,67c5b3ca41915f7d626a088686922560,425c4783b30a3f741f085738a566dc81,867d21cad73951988c1ebd4fe0d763f8,be7c9d66c56f46ce057207462399b86e,0a431ad51b251f95ea87d3aa23ed97a9,0785462fb9a12eb39f6f2a76dfc9a634,fe955ffdff7f90947769b0f1482b89b9,527f7bd3b28cf787abf66a6007a32e90,bce2a4489c55ea20e633acc87fd76474,c99533981ba772c0df79b042c0d1c62a,57f9ee23356da4ea33945d159477a175,93a6b20bd602d4ac32e2f070b9646c60,48b355127bc4bf9d8c4e7a74830aa1df,3d18d119d4ab55bc4d211074c70f7965,e7d78994e3c948433b1be20237ebe453,7dfdf367cd3d687fc7f0ee4b55f93264,92e5e684d0662934c030e64e01de4d28,925c9b77317819aa0887d9ce067e3f10,c911f41be2a67dab3185a9cad28337ea,1dfe636ed7fe05018b5eac96f0ed27c1,38c3dac6ddabd244e4963caf34a8ea90,b23c9e92e4a5f903ee1c65bac3d97a4f,1223ed5947a1b842a2938447443bbf1e,3cbe93ef9388dc9b4f13ef31b1967756,d0b7e7f3a06c37465604023766e1e087,ab0c7cd1f9c2516c20647e8d6c261bde,6f7723328806813624f08618ddf4931d,8f5ecb0a0034ef6f82cb3353e54cf783,c9e9885f914d8b5d59521572a58150c3,622daac3ddc8f3b07204438c9cec3b04,8f6023d4ff2a8d624aeaa787d29224a8,abfa6bf254a838c06c563378a5c11f67 --> <!-- werkrevisor-folded --> <details><summary>🟠 werkrevisor ORANGE for <code>4923513</code>, superseded by <a href="http://git.javagil.de/mi/werkator/pulls/150#issuecomment-3469">the result for <code>c8e1842</code></a></summary> ## 🟠 werkrevisor: ORANGE / FINDINGS Change kind: `mixed`. ### Reasons - **ORANGE** 1 finding(s) that Jev rates as probably real and severe: src/main/kotlin/de/hoennig/werkator/server/BuildRestarts.kt:56-62 - **hint** REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.95) - **hint** 21 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev - **hint** 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01) - **hint** 2 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js, src/main/resources/templates/releases.html (advisory: Jev judged every changed file) - **hint** 2 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/static/werkator.css, src/main/resources/templates/artifact.html - **hint** 10 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/templates/builds.html, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt and 7 more (advisory: Jev judged every changed file) - **hint** model recommends merge with caution ### Findings 1. **Branch-defined follow-up not refused** at `src/main/kotlin/de/hoennig/werkator/server/BuildRestarts.kt:56-62`, severity unknown, counted as medium, ORANGE, as a line comment ### Classifier 12 of 12 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 80505, calls 1, tokens in 77417 / out 21785 (reasoning included in out), duration 164.6 s, cost 0.0493 USD (reported), classifier `jev-1.13.0` calls 12, tokens in 10214, cost 0.0004 USD, finding judge `jev-1.13.0` calls 1, tokens in 2023, cost 0.0001 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 14, tokens in 126778 / out 2680, cost 0.0041 USD (reported), build file judge `jev-1.13.0` calls 22, tokens in 33802, cost 0.0014 USD, phases: path_judge 1.3 s, classifier 0.8 s, context 59.2 s, model_review 102.6 s, finding_judge 0.2 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).<br> Reviewed head `4923513e7601f8d26b75e0f1106cc00ee746751b` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2. </sub> </details>
ai-reviewer left a comment
Collaborator

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

werkrevisor: ORANGE / FINDINGS for `4923513e7601f8d26b75e0f1106cc00ee746751b`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:4923513e7601f8d26b75e0f1106cc00ee746751b -->
@@ -0,0 +53,4 @@
* The follow-ups of a repository as its primary configuration defines them. A follow-up a branch
* defines in its own layer runs sandboxed; the privileged ones are host-pinned and stand here.
*/
@Component
Collaborator

Branch-defined follow-up not refused, severity unknown, counted as medium (werkrevisor)

ORANGE; Jev: real 0.85, severity 3.0 of 3

RestartPolicy.predecessors() reads only the primary configuration via
configLoader.load(repo.workingDir), without loading the branch layer. A branch that defines
a sandboxed trigger.afterSuccessOf (explicitly allowed by AGENTS.md: "ordinary sandboxed
trigger.afterSuccessOf definitions remain branch-configurable") is therefore not in the
predecessors map, so BuildRestarts.newestCommitRefusal() returns null for it. The "Build
the newest commit of ..." button stays enabled, and POST /api/builds/restart with
atOriginHead=true starts the follow-up at the head commit without its predecessor having
turned green — the very thing the PR's own Non-Goals ("A follow-up build never starts at the
newest commit: without its predecessor's green run it would, e.g., deploy untested code")
says the refusal exists to prevent. The code comment documents the choice ("the privileged
ones are host-pinned and stand here"), but the rationale does not distinguish between
sandboxed and privileged follow-ups. No test exercises a branch-defined follow-up against the
real RestartPolicy: BuildsApiControllerRestTest injects the predecessors map directly.

**Branch-defined follow-up not refused**, severity unknown, counted as medium (werkrevisor) ORANGE; Jev: real 0.85, severity 3.0 of 3 RestartPolicy.predecessors() reads only the primary configuration via configLoader.load(repo.workingDir), without loading the branch layer. A branch that defines a sandboxed trigger.afterSuccessOf (explicitly allowed by AGENTS.md: "ordinary sandboxed trigger.afterSuccessOf definitions remain branch-configurable") is therefore not in the predecessors map, so BuildRestarts.newestCommitRefusal() returns null for it. The "Build the newest commit of ..." button stays enabled, and POST /api/builds/restart with atOriginHead=true starts the follow-up at the head commit without its predecessor having turned green — the very thing the PR's own Non-Goals ("A follow-up build never starts at the newest commit: without its predecessor's green run it would, e.g., deploy untested code") says the refusal exists to prevent. The code comment documents the choice ("the privileged ones are host-pinned and stand here"), but the rationale does not distinguish between sandboxed and privileged follow-ups. No test exercises a branch-defined follow-up against the real RestartPolicy: BuildsApiControllerRestTest injects the predecessors map directly.
Author
Collaborator

Fixed in c8e1842: RestartPolicy now reads each branch's definitions with its own layer at its origin head, like the watcher, cached per head commit. A branch-defined follow-up refuses the newest commit too. Scenario#150.09, RestartPolicyUnitTest.

Fixed in `c8e1842`: `RestartPolicy` now reads each branch's definitions with its own layer at its origin head, like the watcher, cached per head commit. A branch-defined follow-up refuses the newest commit too. Scenario#150.09, `RestartPolicyUnitTest`.
claude-code marked this conversation as resolved
claude-code marked the pull request as work in progress 2026-10-10 23:46:00 +02:00
mi added 1 commit 2026-10-10 23:46:04 +02:00
RestartPolicy reads each branch's own follow-ups at its origin head
werkator build succeeded after 02:34
ai-review/assessment human review required; a human approval unlocks the merge; a human review request is pending; merge already scheduled
ai-review/gate build succeeded after 02:24
c8e1842dc7
A follow-up a branch defines for itself refuses the newest commit too.
The definitions are read once per branch and head commit; a gone or unreadable branch falls back to the primary configuration.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code marked the pull request as ready for review 2026-10-10 23:49:30 +02:00
Collaborator
🟡 werkrevisor YELLOW for c8e1842, superseded by the result for d6c574f

🟡 werkrevisor: YELLOW / HUMAN_REVIEW

Change kind: mixed.

Reasons

  • YELLOW spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.09 hard_to_read (0.51 > yellow_above = 0.5)
  • hint REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.95)
  • hint 22 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev
  • hint 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01)
  • hint 1 changed file was given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (each larger than [review] max_full_file_chars = 80000): src/main/resources/templates/releases.html
  • hint 1 changed file was given to the AI only as diff, not in full, so it could not check it against the rest of its file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js (advisory: Jev judged every changed file)
  • hint 3 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/templates/artifact.html, src/main/resources/templates/builds.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt
  • hint 10 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/static/werkator.css, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BuildRestartsUnitTest.kt and 7 more (advisory: Jev judged every changed file)

Classifier

Unit Question Problem Confidence Verdict
docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.09 hard_to_read 0.51 0.43 YELLOW

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

Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 82085, calls 1, tokens in 78950 / out 20055 (reasoning included in out), duration 141.4 s, cost 0.0477 USD (reported), classifier `jev-1.13.0` calls 13, tokens in 11143, cost 0.0005 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 15, tokens in 129304 / out 3178, cost 0.0062 USD (reported), build file judge `jev-1.13.0` calls 23, tokens in 36152, cost 0.0015 USD, phases: path_judge 1.3 s, classifier 0.8 s, context 55.4 s, model_review 83.3 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).
Reviewed head `c8e1842dc71cff3d9d2ef3b51ed3fc7090ab5276` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2.
<!-- werkrevisor:c8e1842dc71cff3d9d2ef3b51ed3fc7090ab5276 --> <!-- werkrevisor-verdict:YELLOW --> <!-- werkrevisor-blocks:82386717a348307a5fb7475b31a8766b,4d73b2ce38129a7939680739887d7e31,dbb52771b6b40f3529363603a2269a0d,ebd1b4616622a389527030e39804339f,71ada6c14635c9481e5a6ab7491477b1,89e687499cf3e45c6a39c35bddde0f9f,57a729ce543d1cb90f93a57f20e1d145,615ea38473d2eb2a47c8bfffa2edf050,0f148811039fc6c5eb0e595c584b0cb2,00eed7efc952f84f6cacb92df4e633bd,09ef78957e693a97a679ecf1440420c0,ac49bd3178eecca4adc360569bad53ee,e4b2f6ae44b236d5d7f6f4164ecf479a,ca761bf424d5736d8dfce47037d0954d,67cca113d219ca347480d95aaacb00a1,3d348c4b2f21ec6cb257c1780bf36700,c23bcfc46f0c7e84ba1556b955feeb5a,9aa43d5dfa7aef3bdf6b146a6ef10def,20c5541d56030b6779b0eaea9e60cadd,123737321ae8323392540f2561fcc57b,20c5541d56030b6779b0eaea9e60cadd,123737321ae8323392540f2561fcc57b,e48848e7978208226117b7fb22a35e3b,f4ec1854b2299861994702fc96e886bb,c9d4fd41beb373f77f88ab672fd21b34,10fc04a367d36ed314d86106012ebd1d,30f6aaa1e9d85ae39d7ec7352f044aec,641ffca33206d3a655b4ae950b506e81,de9876868c6dde494c6ff0876de26bcb,2d767f1d286924e1d431527cfd76d306,590ab6b6bd86134a4c2819fcc6fe2846,19d89d0f20b012ee84fd4b172230030d,f31c57ebeadd638b5c1b4a1b36477c4c,f7cc076d41df89ff66d293ba838f11b9,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,009bda02b0bcc211e2f16e1a7d8b32fa,1141ff1c389c60a1cf61f2f7f4c2e80b,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,55aaea86272822990db13ae5c2a0b892,eb02567d638af959d23d8dc4169c5cdd,b3de9eea627dca94ce71dc5aeb343079,a89fe7867ea389ad5a035f2b3bba2e24,43ed7a98a3655b51f2134a32a2da36ff,1fb66b24a27bb104ba898245a5345340,b5c259c1e8398be96c77e55547b23412,4a4c9613f1f78fb10375c971f26949a8,4bd08c159cca33304406dec9a592a15d,e20b7db9a38667939bf28a711680331d,66eb724c565edd03d64dacb2bb8b7eac,4d536f7549ad9e58976adc3085e0a5b1,d1bc4b74b15a3d4afabbe2d635e595fc,b7e971b25d6421e05974fd3d1584bb6b,67c5b3ca41915f7d626a088686922560,425c4783b30a3f741f085738a566dc81,867d21cad73951988c1ebd4fe0d763f8,be7c9d66c56f46ce057207462399b86e,0a431ad51b251f95ea87d3aa23ed97a9,0785462fb9a12eb39f6f2a76dfc9a634,fe955ffdff7f90947769b0f1482b89b9,20bdb4f049b5ccbc121599d99c87d9b7,bce2a4489c55ea20e633acc87fd76474,c99533981ba772c0df79b042c0d1c62a,53eac1e91151af7e040dc7e468e8e5a0,93a6b20bd602d4ac32e2f070b9646c60,48b355127bc4bf9d8c4e7a74830aa1df,3d18d119d4ab55bc4d211074c70f7965,e7d78994e3c948433b1be20237ebe453,7dfdf367cd3d687fc7f0ee4b55f93264,e5ec30a75d0634c1335e38435cdb3aa6,925c9b77317819aa0887d9ce067e3f10,a873541efbab27fd0b7b0211744ceec5,1dfe636ed7fe05018b5eac96f0ed27c1,beba0f4acbdf03694509e7fa9b349e7a,38c3dac6ddabd244e4963caf34a8ea90,b23c9e92e4a5f903ee1c65bac3d97a4f,1223ed5947a1b842a2938447443bbf1e,3cbe93ef9388dc9b4f13ef31b1967756,35a20ec97459d41f941c3526d9d2b80a,ab0c7cd1f9c2516c20647e8d6c261bde,6f7723328806813624f08618ddf4931d,8f5ecb0a0034ef6f82cb3353e54cf783,c9e9885f914d8b5d59521572a58150c3,622daac3ddc8f3b07204438c9cec3b04,8f6023d4ff2a8d624aeaa787d29224a8,30b0b02849f36b55fd4d570d854e4637 --> <!-- werkrevisor-folded --> <details><summary>🟡 werkrevisor YELLOW for <code>c8e1842</code>, superseded by <a href="http://git.javagil.de/mi/werkator/pulls/150#issuecomment-3473">the result for <code>d6c574f</code></a></summary> ## 🟡 werkrevisor: YELLOW / HUMAN_REVIEW Change kind: `mixed`. ### Reasons - **YELLOW** spec: docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.09 hard_to_read (0.51 > yellow_above = 0.5) - **hint** REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.95) - **hint** 22 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev - **hint** 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01) - **hint** 1 changed file was given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (each larger than [review] max_full_file_chars = 80000): src/main/resources/templates/releases.html - **hint** 1 changed file was given to the AI only as diff, not in full, so it could not check it against the rest of its file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js (advisory: Jev judged every changed file) - **hint** 3 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/templates/artifact.html, src/main/resources/templates/builds.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt - **hint** 10 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/static/werkator.css, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BuildRestartsUnitTest.kt and 7 more (advisory: Jev judged every changed file) ### Classifier | Unit | Question | Problem | Confidence | Verdict | |---|---|---|---|---| | docs/prs/2026-10-10-PR#150-two-restarts.md Scenario#150.09 | hard_to_read | 0.51 | 0.43 | YELLOW | 12 of 13 units passed all questions (1 PR document(s)). 4 answers ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 82085, calls 1, tokens in 78950 / out 20055 (reasoning included in out), duration 141.4 s, cost 0.0477 USD (reported), classifier `jev-1.13.0` calls 13, tokens in 11143, cost 0.0005 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 15, tokens in 129304 / out 3178, cost 0.0062 USD (reported), build file judge `jev-1.13.0` calls 23, tokens in 36152, cost 0.0015 USD, phases: path_judge 1.3 s, classifier 0.8 s, context 55.4 s, model_review 83.3 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).<br> Reviewed head `c8e1842dc71cff3d9d2ef3b51ed3fc7090ab5276` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2. </sub> </details>
claude-code marked the pull request as work in progress 2026-10-10 23:53:01 +02:00
mi added 1 commit 2026-10-10 23:53:05 +02:00
Scenario#150.09 easier to read
werkator build succeeded after 02:27
ai-review/assessment AI review passed; approved by werkrevisor; merge already scheduled; review request of mi withdrawn
ai-review/gate build succeeded after 03:58
d6c574f0ec
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code marked the pull request as ready for review 2026-10-10 23:55:41 +02:00
Collaborator

🟢 werkrevisor: GREEN / PASS

Change kind: mixed.

Reasons

  • hint REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.96)
  • hint 22 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev
  • hint 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01)
  • hint 1 changed file was given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (each larger than [review] max_full_file_chars = 80000): src/main/resources/templates/releases.html
  • hint 1 changed file was given to the AI only as diff, not in full, so it could not check it against the rest of its file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js (advisory: Jev judged every changed file)
  • hint 2 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/templates/artifact.html, src/main/resources/templates/builds.html
  • hint 11 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/static/werkator.css, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt and 8 more (advisory: Jev judged every changed file)

Classifier

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

Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 81967, calls 1, tokens in 78834 / out 20127 (reasoning included in out), duration 234.6 s, cost 0.0478 USD (reported), classifier `jev-1.13.0` calls 13, tokens in 11135, cost 0.0005 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 15, tokens in 129304 / out 2711, cost 0.0027 USD (reported), build file judge `jev-1.13.0` calls 23, tokens in 36152, cost 0.0015 USD, phases: path_judge 1.5 s, classifier 0.9 s, context 50.6 s, model_review 181.1 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).
Reviewed head `d6c574f0ec066558aa01912f22f3a6fa2d722ef5` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2.
<!-- werkrevisor:d6c574f0ec066558aa01912f22f3a6fa2d722ef5 --> <!-- werkrevisor-verdict:GREEN --> <!-- werkrevisor-blocks:82386717a348307a5fb7475b31a8766b,4d73b2ce38129a7939680739887d7e31,dbb52771b6b40f3529363603a2269a0d,2477ea411cf37a8a4e04efa8e1615453,71ada6c14635c9481e5a6ab7491477b1,89e687499cf3e45c6a39c35bddde0f9f,57a729ce543d1cb90f93a57f20e1d145,615ea38473d2eb2a47c8bfffa2edf050,0f148811039fc6c5eb0e595c584b0cb2,00eed7efc952f84f6cacb92df4e633bd,09ef78957e693a97a679ecf1440420c0,ac49bd3178eecca4adc360569bad53ee,e4b2f6ae44b236d5d7f6f4164ecf479a,ca761bf424d5736d8dfce47037d0954d,67cca113d219ca347480d95aaacb00a1,3d348c4b2f21ec6cb257c1780bf36700,c23bcfc46f0c7e84ba1556b955feeb5a,9aa43d5dfa7aef3bdf6b146a6ef10def,20c5541d56030b6779b0eaea9e60cadd,123737321ae8323392540f2561fcc57b,20c5541d56030b6779b0eaea9e60cadd,123737321ae8323392540f2561fcc57b,e48848e7978208226117b7fb22a35e3b,f4ec1854b2299861994702fc96e886bb,c9d4fd41beb373f77f88ab672fd21b34,10fc04a367d36ed314d86106012ebd1d,30f6aaa1e9d85ae39d7ec7352f044aec,641ffca33206d3a655b4ae950b506e81,de9876868c6dde494c6ff0876de26bcb,2d767f1d286924e1d431527cfd76d306,590ab6b6bd86134a4c2819fcc6fe2846,19d89d0f20b012ee84fd4b172230030d,f31c57ebeadd638b5c1b4a1b36477c4c,f7cc076d41df89ff66d293ba838f11b9,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,009bda02b0bcc211e2f16e1a7d8b32fa,1141ff1c389c60a1cf61f2f7f4c2e80b,9fe23b7a9dba59977008eccf74a778a0,c7b46dfb7eccb005ce24e8e69efe546b,55aaea86272822990db13ae5c2a0b892,eb02567d638af959d23d8dc4169c5cdd,b3de9eea627dca94ce71dc5aeb343079,a89fe7867ea389ad5a035f2b3bba2e24,43ed7a98a3655b51f2134a32a2da36ff,1fb66b24a27bb104ba898245a5345340,b5c259c1e8398be96c77e55547b23412,4a4c9613f1f78fb10375c971f26949a8,4bd08c159cca33304406dec9a592a15d,e20b7db9a38667939bf28a711680331d,66eb724c565edd03d64dacb2bb8b7eac,4d536f7549ad9e58976adc3085e0a5b1,d1bc4b74b15a3d4afabbe2d635e595fc,b7e971b25d6421e05974fd3d1584bb6b,67c5b3ca41915f7d626a088686922560,425c4783b30a3f741f085738a566dc81,867d21cad73951988c1ebd4fe0d763f8,be7c9d66c56f46ce057207462399b86e,0a431ad51b251f95ea87d3aa23ed97a9,0785462fb9a12eb39f6f2a76dfc9a634,fe955ffdff7f90947769b0f1482b89b9,20bdb4f049b5ccbc121599d99c87d9b7,bce2a4489c55ea20e633acc87fd76474,c99533981ba772c0df79b042c0d1c62a,53eac1e91151af7e040dc7e468e8e5a0,93a6b20bd602d4ac32e2f070b9646c60,48b355127bc4bf9d8c4e7a74830aa1df,3d18d119d4ab55bc4d211074c70f7965,e7d78994e3c948433b1be20237ebe453,7dfdf367cd3d687fc7f0ee4b55f93264,e5ec30a75d0634c1335e38435cdb3aa6,925c9b77317819aa0887d9ce067e3f10,a873541efbab27fd0b7b0211744ceec5,1dfe636ed7fe05018b5eac96f0ed27c1,beba0f4acbdf03694509e7fa9b349e7a,38c3dac6ddabd244e4963caf34a8ea90,b23c9e92e4a5f903ee1c65bac3d97a4f,1223ed5947a1b842a2938447443bbf1e,3cbe93ef9388dc9b4f13ef31b1967756,35a20ec97459d41f941c3526d9d2b80a,ab0c7cd1f9c2516c20647e8d6c261bde,6f7723328806813624f08618ddf4931d,8f5ecb0a0034ef6f82cb3353e54cf783,c9e9885f914d8b5d59521572a58150c3,622daac3ddc8f3b07204438c9cec3b04,8f6023d4ff2a8d624aeaa787d29224a8,30b0b02849f36b55fd4d570d854e4637 --> ## 🟢 werkrevisor: GREEN / PASS Change kind: `mixed`. ### Reasons - **hint** REST API compatibility according to Jev, a hint: src/main/kotlin/de/hoennig/werkator/server/BuildsApiController.kt (0.96) - **hint** 22 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev - **hint** 1 build change(s) of low risk according to Jev: build.gradle.kts (weakens checks 0.03, risk 0.00, security 0.01) - **hint** 1 changed file was given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (each larger than [review] max_full_file_chars = 80000): src/main/resources/templates/releases.html - **hint** 1 changed file was given to the AI only as diff, not in full, so it could not check it against the rest of its file (each larger than [review] max_full_file_chars = 80000, and no excerpt fits the limits either): src/main/resources/static/werkator.js (advisory: Jev judged every changed file) - **hint** 2 changed files were given to the AI as excerpt of the selected lines and 5 lines around each changed line, not in full (all full files together would exceed [review] max_full_files_chars = 160000): src/main/resources/templates/artifact.html, src/main/resources/templates/builds.html - **hint** 11 changed files were given to the AI only as diff, not in full, so it could not check them against the rest of their file (all full files together would exceed [review] max_full_files_chars = 160000, and no excerpt fits the limits either): src/main/resources/static/werkator.css, src/main/resources/templates/fragments.html, src/test/kotlin/de/hoennig/werkator/server/BranchListingUnitTest.kt and 8 more (advisory: Jev judged every changed file) ### Classifier 13 of 13 units passed all questions (1 PR document(s)). 4 answers ignored because of a confidence below [classifier] min_confidence. <sub> Usage: model `openrouter/minimax/minimax-m3`, LLM done, tokens counted before the call 81967, calls 1, tokens in 78834 / out 20127 (reasoning included in out), duration 234.6 s, cost 0.0478 USD (reported), classifier `jev-1.13.0` calls 13, tokens in 11135, cost 0.0005 USD, excerpt selection `openrouter/openai/gpt-6-luna` calls 15, tokens in 129304 / out 2711, cost 0.0027 USD (reported), build file judge `jev-1.13.0` calls 23, tokens in 36152, cost 0.0015 USD, phases: path_judge 1.5 s, classifier 0.9 s, context 50.6 s, model_review 181.1 s, config: defaults + host + repository (.werkrevisor.toml at main ace6024).<br> Reviewed head `d6c574f0ec066558aa01912f22f3a6fa2d722ef5` against base `ace602454b9484c226808c5ad328d122318cefac`, werkrevisor 0.32.2. </sub>
ai-reviewer left a comment
Collaborator

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

werkrevisor: GREEN / PASS for `d6c574f0ec066558aa01912f22f3a6fa2d722ef5`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:d6c574f0ec066558aa01912f22f3a6fa2d722ef5 -->
ai-reviewer removed review request for mi 2026-10-10 23:59:50 +02:00
ai-reviewer merged commit d95b7e6b20 into main 2026-10-10 23:59:52 +02:00
ai-reviewer deleted branch claude-code/two-restarts 2026-10-10 23:59:52 +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/werkator#150