[codex] add request timeouts#43
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
requestTimeoutMson the SDK client/session option surfaces and readLIBRUS_TIMEOUT_MSinLibrusSession.fromEnv()NETWORK_TIMEOUTSDK and CLI behavior, document the new timeout surface in README/CHANGELOG, and tighten timeout-path secret-safety coverageWhy
Hanging network requests could leave portal login or child-scoped API calls pending indefinitely. This change hardens the runtime behavior so those requests fail predictably with a secret-safe, machine-stable error code instead.
Impact
PortalClientOptions,SynergiaApiClientOptions, andLibrusSessionOptionsLibrusSession.fromEnv()now honorsLIBRUS_TIMEOUT_MSNETWORK_TIMEOUTincluding{ endpoint, timeoutMs }Root Cause
The SDK previously delegated directly to
fetchwithout a timeout policy, so a connection that never responded would remain pending until the caller or process intervened.Validation
npm run validate