Repository navigation
ci: add bounded transient live-smoke retry - #64
Merged
Merged
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.
Summary
The daily trusted live smoke treated one transient API connection timeout as a deterministic failure, even though the same commit passed on the previous run. This change adds one global retry budget for monitoring only: transport/timeout/connection interruptions and HTTP 408/429/5xx may consume at most one extra physical request across the three logical requests. Protocol, authentication, other 4xx, empty or incomplete responses, and schema assertions remain hard failures. The release-tag smoke explicitly keeps a zero retry budget and its original three-request limit.
The workflow and release validators now enforce the retry/request budgets, and the mocked contract covers connection timeout, stream interruption, retry exhaustion, hard authentication failure, exact request limits, and secret redaction. The reviewed CI and release documentation records the bounded behavior.
Verification
npm cinpm run test:live-contractnpm run verifynpm run actionlintAll passed locally.
npmemitted only the expected local Node 26 engine warning; the supported CI matrix remains Node 22 and 24.