[SDK Sentinel] Disable time skipping in Nexus retry test - #3085
Open
sdk-sentinel-bot wants to merge 1 commit into
Open
sdk-sentinel-bot wants to merge 1 commit into
sdk-sentinel-bot wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Caution
This PR contains untrusted AI-generated code. Do not approve or run CI until a maintainer has reviewed the diff. SDK Sentinel verified that GitHub Actions remained approval-gated with zero executable jobs when this PR was opened.
Summary
A main-branch Java 23 edge run intermittently observed a workflow timeout instead of the expected Nexus timeout in
retryableApplicationFailureIsRetried. The [preceding edge run](https://github.com/temporalio/sdk-java/actions/runs/35144081452) passed, the [first captured failure](https://github.com/temporalio/sdk-java/actions/runs/35147697059) failed, and the identical SHA passed on rerun.Root cause
The test combined virtual server deadlines with real worker delivery. After the Nexus schedule-to-close timeout, virtual time advanced through a workflow-task timeout and the 200-second workflow deadline before the worker completion was accepted.
Fix
Disable time skipping for this test class so retries, worker delivery, and deadlines share wall-clock time. Existing behavioral assertions remain unchanged.
Validation
The unchanged baseline passed. All six focused tests passed after the edit on Java 23. The exact edge dependency set was unavailable offline, and the canonical candidate validator could not start because its Gradle cache was not chmod-able. The Java 23 edge job and trusted validator remain required; wall-clock execution may modestly increase test duration.
Validation status:
validation-incompletehighhighmediumstandard— 1 changed file; 1.1 KiBnot-reproduced— The pre-change focused Java 23 class passed once; the same-SHA CI rerun and failed workflow history provide the flake evidence.pass-after-only— The existing six-test class passed after the wall-clock harness change; no new assertion was needed.Gradle formatting and test-source compilation) — passedGradle formatting and test-source compilation) — did not pass (failure)Investigator-run checks
GRADLE_USER_HOME=.ci-flake-runtime/tmp/gradle-home ./gradlew --offline --no-daemon :temporal-sdk:test --tests 'io.temporal.workflow.nexus.OperationInputDeserializationErrorPropagationTest' -x :temporal-serviceclient:initSubmodules -x :temporal-serviceclient:updateSubmodules -x :temporal-sdk:compileJava17Java— passed; 1 attempt(s). Pre-change natural reproduction attempt passed on Java 23.GRADLE_USER_HOME=.ci-flake-runtime/tmp/gradle-home ./gradlew --offline --no-daemon :temporal-sdk:test --tests 'io.temporal.workflow.nexus.OperationInputDeserializationErrorPropagationTest' -x :temporal-serviceclient:initSubmodules -x :temporal-serviceclient:updateSubmodules -x :temporal-sdk:compileJava17Java— passed; 1 attempt(s). After the candidate change, all six focused tests passed on Java 23 in 40 seconds.GRADLE_USER_HOME=.ci-flake-runtime/tmp/gradle-home ./gradlew --offline --no-daemon :temporal-sdk:test --tests 'io.temporal.workflow.nexus.OperationInputDeserializationErrorPropagationTest' -PedgeDepsTest -PtestJavaVersion=23— not run; 1 attempt(s). The exact edge-dependency test did not reach execution because slf4j-api 2.0.16 was unavailable in the offline cache..ci-flake-runtime/input/validate.sh— failed; 1 attempt(s). The trusted unchanged baseline succeeded, but candidate validation could not start Gradle because the preloaded daemon cache directory could not be chmodded by the investigation user.git diff --check— passed; 1 attempt(s). The candidate diff has no whitespace errors.Required target CI
Residual risks
Automation provenance
3513f7586db47b975bf4d1e4ccba9f88bed11f39If this finding should not be fixed, apply the
sdk-sentinel:false-positivelabel and close the PR. Sentinel will suppress the finding until its affected source changes.SDK Sentinel recurrence history
2026-09-16 20:46 UTC2026-09-18 18:42 UTC