The deploy test runs the bundle's own launcher #70

Merged
ai-reviewer merged 4 commits from claude-code/deploy-launcher-check into main 2026-10-14 14:55:57 +02:00
Collaborator

Fixes werkrevisor's ORANGE finding of PR#69, which merged with it open: the receiver's launcher check is now tested with the real launcher and bounded by 60 s.

See the PR document in doc/prs/.

🤖 Generated with Claude Code

Fixes werkrevisor's ORANGE finding of PR#69, which merged with it open: the receiver's launcher check is now tested with the real launcher and bounded by 60 s. See the PR document in `doc/prs/`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-code marked the pull request as ready for review 2026-10-14 14:23:13 +02:00
Collaborator
🟢 werkrevisor GREEN for 09c0e87, superseded by the result for 5deb289

🟢 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 1 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev
  • hint 2 build change(s) of low risk according to Jev: dashboard/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01), dashboard/packaging/werkregie-deploy-receive (weakens checks 0.07, risk 1.24, security 0.02)
  • hint 1 finding(s) of low severity or rated minor by Jev: dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/DeployReceiveTest.kt:126-135
  • hint model recommends merge with caution

Findings

  1. Test Coverage Gap at dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/DeployReceiveTest.kt:126-135, severity unknown, counted as medium, hint, as a line comment

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 17509, calls 1, tokens in 16968 / out 25514 (reasoning included in out), duration 205.9 s, cost 0.0357 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5226, cost 0.0002 USD, finding judge `jev-1.13.0` calls 1, tokens in 1936, cost 0.0001 USD, build file judge `jev-1.13.0` calls 3, tokens in 2943, cost 0.0001 USD, phases: path_judge 0.3 s, classifier 0.6 s, context 0.2 s, model_review 204.0 s, finding_judge 0.3 s, config: defaults + host + repository (.werkrevisor.toml at main 1ee7a87).
Reviewed head `09c0e87fa825c68562136a21c35f198d9619d714` against base `1ee7a87150de2b0324cc60ffdb9b9addf003fe74`, werkrevisor 0.41.2.
<!-- werkrevisor:09c0e87fa825c68562136a21c35f198d9619d714 --> <!-- werkrevisor-verdict:GREEN --> <!-- werkrevisor-blocks:0370be8ce1405f5019a931737bbf69cd,b512cd8e02a67d4e1dfc718a83fe38ea,fda4ec2441b7e092dacf0e05305a2271,702f0d1652cfc9eeae50b07067c5a60f,b7d79eefb5f3e458e0b9bea9fda60633,ebed1837a7fd591f80157ac0fee65579,9010bedada0a9e90da6d9a2c25eadd16,c2d79b46a6704c11bdfc2298b690b081,46e2dba410cf6f5f8d041c62c61af66e,b72ef151ee4542bc1ecf88607c450238,07e29fa4adbfc69c6c8c3cc8daf55de5,c6abe340cba8336f3c3c905a2221deed,894d2a3c383ac699be6591c7a2ef2da3,d29bbbb424540be03e74dd1f009ba888,328de3c50d3a107df7082694f0642a95 --> <!-- werkrevisor-folded --> <details><summary>🟢 werkrevisor GREEN for <code>09c0e87</code>, superseded by <a href="http://git.javagil.de/mi/werkregie/pulls/70#issuecomment-5532">the result for <code>5deb289</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** 1 changed file(s) that neither weaken the checks, touch security nor show a risk category of jvm-spring-backend according to Jev - **hint** 2 build change(s) of low risk according to Jev: dashboard/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01), dashboard/packaging/werkregie-deploy-receive (weakens checks 0.07, risk 1.24, security 0.02) - **hint** 1 finding(s) of low severity or rated minor by Jev: dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/DeployReceiveTest.kt:126-135 - **hint** model recommends merge with caution ### Findings 1. **Test Coverage Gap** at `dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/DeployReceiveTest.kt:126-135`, severity unknown, counted as medium, hint, as a line comment ### 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 17509, calls 1, tokens in 16968 / out 25514 (reasoning included in out), duration 205.9 s, cost 0.0357 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5226, cost 0.0002 USD, finding judge `jev-1.13.0` calls 1, tokens in 1936, cost 0.0001 USD, build file judge `jev-1.13.0` calls 3, tokens in 2943, cost 0.0001 USD, phases: path_judge 0.3 s, classifier 0.6 s, context 0.2 s, model_review 204.0 s, finding_judge 0.3 s, config: defaults + host + repository (.werkrevisor.toml at main 1ee7a87).<br> Reviewed head `09c0e87fa825c68562136a21c35f198d9619d714` against base `1ee7a87150de2b0324cc60ffdb9b9addf003fe74`, werkrevisor 0.41.2. </sub> </details>
ai-reviewer approved these changes 2026-10-14 14:26:50 +02:00
Dismissed
ai-reviewer left a comment
Collaborator

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

werkrevisor: GREEN / PASS for `09c0e87fa825c68562136a21c35f198d9619d714`. The result comment of werkrevisor holds the details. <!-- werkrevisor-review:09c0e87fa825c68562136a21c35f198d9619d714 -->
@@ -103,2 +123,4 @@
host.systemctl() shouldBe ""
}
test("a bundle whose launcher prints no version leaves the service untouched") {
Collaborator

Test Coverage Gap, severity unknown, counted as medium (werkrevisor)

hint; Jev: real 0.76, severity 2.0 of 3

The PR document's scenario #70.02 states "Given a bundle whose launcher prints no version, or does not end within 60 s", claiming coverage of two launcher failure modes. The new test "a bundle whose launcher prints no version leaves the service untouched" exercises only the first case (echo Fehler → version regex fails). The second case (a launcher that hangs and is killed by timeout 60) is not tested. A regression in the timeout 60 wrapper around the launcher check in werkregie-deploy-receive (e.g., the timeout value being changed or removed) would not be caught by the current tests. The timeout is provided by the standard timeout command so a regression is unlikely, but the PR document's scenario #70.02 overstates what the test verifies.

**Test Coverage Gap**, severity unknown, counted as medium (werkrevisor) hint; Jev: real 0.76, severity 2.0 of 3 The PR document's scenario #70.02 states "Given a bundle whose launcher prints no version, or does not end within 60 s", claiming coverage of two launcher failure modes. The new test "a bundle whose launcher prints no version leaves the service untouched" exercises only the first case (echo Fehler → version regex fails). The second case (a launcher that hangs and is killed by `timeout 60`) is not tested. A regression in the `timeout 60` wrapper around the launcher check in `werkregie-deploy-receive` (e.g., the timeout value being changed or removed) would not be caught by the current tests. The timeout is provided by the standard `timeout` command so a regression is unlikely, but the PR document's scenario #70.02 overstates what the test verifies.
claude-code marked this conversation as resolved
claude-code dismissed ai-reviewer's review 2026-10-14 14:28:48 +02:00
Reason:

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

@@ -102,4 +123,26 @@ class DeployReceiveTest : FunSpec({
host.opt.resolve("werkregie-dashboard.new").exists() shouldBe false
host.systemctl() shouldBe ""
}
Author
Collaborator

Fixed in 5deb289: the receiver takes the launcher time from WERKREGIE_LAUNCHER_SECONDS (default 60), and the new test "a bundle whose launcher does not end leaves the service untouched" runs sleep 30 with 2 s; it ends after 2 s with the service untouched.

Fixed in `5deb289`: the receiver takes the launcher time from `WERKREGIE_LAUNCHER_SECONDS` (default 60), and the new test "a bundle whose launcher does not end leaves the service untouched" runs `sleep 30` with 2 s; it ends after 2 s with the service untouched.
claude-code marked this conversation as resolved
Collaborator
🟡 werkrevisor YELLOW for 5deb289, superseded by the result for 4d9bb87

🟡 werkrevisor: YELLOW / HUMAN_REVIEW

Change kind: mixed.

Reasons

  • YELLOW risky build changes according to Jev: dashboard/packaging/werkregie-deploy-receive (weakens checks 0.06, risk 1.78, security 0.02)
  • hint approval of werkrevisor for 09c0e87 not carried over: 4 approved block(s) are missing
  • hint 1 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: dashboard/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01)

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 18772, calls 1, tokens in 18192 / out 20034 (reasoning included in out), duration 169.3 s, cost 0.0295 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5256, cost 0.0002 USD, build file judge `jev-1.13.0` calls 3, tokens in 3328, cost 0.0001 USD, phases: path_judge 0.2 s, classifier 0.5 s, context 0.2 s, model_review 167.9 s, config: defaults + host + repository (.werkrevisor.toml at main 1ee7a87).
Reviewed head `5deb2891a6ec56cc1c3e59c766b2ab330fbd3dd5` against base `1ee7a87150de2b0324cc60ffdb9b9addf003fe74`, werkrevisor 0.41.2.
<!-- werkrevisor:5deb2891a6ec56cc1c3e59c766b2ab330fbd3dd5 --> <!-- werkrevisor-verdict:YELLOW --> <!-- werkrevisor-blocks:0370be8ce1405f5019a931737bbf69cd,b512cd8e02a67d4e1dfc718a83fe38ea,fda4ec2441b7e092dacf0e05305a2271,5d9f78a79261ae485a478564bc23cae3,41ef9091fd6214d7b10b297d4ae839ab,fb771f58585e846271f8bbaeb43a724b,147b848e93f5dd3e13f0606891045908,ebed1837a7fd591f80157ac0fee65579,9010bedada0a9e90da6d9a2c25eadd16,c2d79b46a6704c11bdfc2298b690b081,46e2dba410cf6f5f8d041c62c61af66e,c484e621d48f87c9f0a2433a6c7b191d,b72ef151ee4542bc1ecf88607c450238,07e29fa4adbfc69c6c8c3cc8daf55de5,c6abe340cba8336f3c3c905a2221deed,a84d6127dec22f4550b6ae322eac3e5c,c9e366529acb0732660b8520cdc9d14b,328de3c50d3a107df7082694f0642a95 --> <!-- werkrevisor-folded --> <details><summary>🟡 werkrevisor YELLOW for <code>5deb289</code>, superseded by <a href="http://git.javagil.de/mi/werkregie/pulls/70#issuecomment-5547">the result for <code>4d9bb87</code></a></summary> ## 🟡 werkrevisor: YELLOW / HUMAN_REVIEW Change kind: `mixed`. ### Reasons - **YELLOW** risky build changes according to Jev: dashboard/packaging/werkregie-deploy-receive (weakens checks 0.06, risk 1.78, security 0.02) - **hint** approval of werkrevisor for `09c0e87` not carried over: 4 approved block(s) are missing - **hint** 1 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: dashboard/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01) ### 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 18772, calls 1, tokens in 18192 / out 20034 (reasoning included in out), duration 169.3 s, cost 0.0295 USD (reported), classifier `jev-1.13.0` calls 7, tokens in 5256, cost 0.0002 USD, build file judge `jev-1.13.0` calls 3, tokens in 3328, cost 0.0001 USD, phases: path_judge 0.2 s, classifier 0.5 s, context 0.2 s, model_review 167.9 s, config: defaults + host + repository (.werkrevisor.toml at main 1ee7a87).<br> Reviewed head `5deb2891a6ec56cc1c3e59c766b2ab330fbd3dd5` against base `1ee7a87150de2b0324cc60ffdb9b9addf003fe74`, werkrevisor 0.41.2. </sub> </details>
ai-reviewer scheduled this pull request to auto merge when all checks succeed 2026-10-14 14:33:10 +02:00
ai-reviewer requested review from mi 2026-10-14 14:33:10 +02:00
claude-code added 4 commits 2026-10-14 14:51:39 +02:00
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Version 0.43.2: PR#71 took 0.43.1; ssh -T for the deploy, which runs since 0.43.1
werkator/dependencies build succeeded after 00:13
werkator build succeeded after 01:09
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:33
4d9bb87172
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude-code force-pushed claude-code/deploy-launcher-check from 5deb2891a6 to 4d9bb87172 2026-10-14 14:51:39 +02:00 Compare
Collaborator

🟡 werkrevisor: YELLOW / HUMAN_REVIEW

Change kind: mixed.

Reasons

  • YELLOW risky build changes according to Jev: dashboard/packaging/werkregie-deploy (weakens checks 0.06, risk 1.97, security 0.37), dashboard/packaging/werkregie-deploy-receive (weakens checks 0.06, risk 1.74, security 0.02)
  • hint 1 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: dashboard/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01)

Classifier

8 of 8 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 20297, calls 1, tokens in 19628 / out 30044 (reasoning included in out), duration 150.6 s, cost 0.0419 USD (reported), classifier `jev-1.13.0` calls 8, tokens in 5961, cost 0.0003 USD, build file judge `jev-1.13.0` calls 4, tokens in 4021, cost 0.0002 USD, phases: path_judge 0.3 s, classifier 0.5 s, context 0.3 s, model_review 149.1 s, config: defaults + host + repository (.werkrevisor.toml at main a57e953).
Reviewed head `4d9bb8717274012f2850bd432f33e55e4ed69d3d` against base `a57e9531f4daee8ed7c217f99ce918f4ec13e454`, werkrevisor 0.41.2.
<!-- werkrevisor:4d9bb8717274012f2850bd432f33e55e4ed69d3d --> <!-- werkrevisor-verdict:YELLOW --> <!-- werkrevisor-blocks:0370be8ce1405f5019a931737bbf69cd,b512cd8e02a67d4e1dfc718a83fe38ea,4343be3895c1e7616ae45e37fcbbfabe,be444f99f33a2ce32308a97d8a00217a,5d9f78a79261ae485a478564bc23cae3,41ef9091fd6214d7b10b297d4ae839ab,fb771f58585e846271f8bbaeb43a724b,147b848e93f5dd3e13f0606891045908,ebed1837a7fd591f80157ac0fee65579,9010bedada0a9e90da6d9a2c25eadd16,c2d79b46a6704c11bdfc2298b690b081,46e2dba410cf6f5f8d041c62c61af66e,c484e621d48f87c9f0a2433a6c7b191d,b72ef151ee4542bc1ecf88607c450238,07e29fa4adbfc69c6c8c3cc8daf55de5,c6abe340cba8336f3c3c905a2221deed,a84d6127dec22f4550b6ae322eac3e5c,c7889c6b78b4b6c0136fc628e2a873bd,c4e27666f387fdf8b188ed35e9f3bf54,20be9c49a11578983a47bdc456ed2bf5 --> ## 🟡 werkrevisor: YELLOW / HUMAN_REVIEW Change kind: `mixed`. ### Reasons - **YELLOW** risky build changes according to Jev: dashboard/packaging/werkregie-deploy (weakens checks 0.06, risk 1.97, security 0.37), dashboard/packaging/werkregie-deploy-receive (weakens checks 0.06, risk 1.74, security 0.02) - **hint** 1 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: dashboard/build.gradle.kts (weakens checks 0.02, risk 0.00, security 0.01) ### Classifier 8 of 8 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 20297, calls 1, tokens in 19628 / out 30044 (reasoning included in out), duration 150.6 s, cost 0.0419 USD (reported), classifier `jev-1.13.0` calls 8, tokens in 5961, cost 0.0003 USD, build file judge `jev-1.13.0` calls 4, tokens in 4021, cost 0.0002 USD, phases: path_judge 0.3 s, classifier 0.5 s, context 0.3 s, model_review 149.1 s, config: defaults + host + repository (.werkrevisor.toml at main a57e953).<br> Reviewed head `4d9bb8717274012f2850bd432f33e55e4ed69d3d` against base `a57e9531f4daee8ed7c217f99ce918f4ec13e454`, werkrevisor 0.41.2. </sub>
mi approved these changes 2026-10-14 14:55:56 +02:00
ai-reviewer merged commit 9fb408f68a into main 2026-10-14 14:55:57 +02:00
ai-reviewer deleted branch claude-code/deploy-launcher-check 2026-10-14 14:55:57 +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/werkregie#70