Repository navigation
feat: add optional provider health and long-request feedback - #27
Merged
Merged
Conversation
Keep the Opper probe unauthenticated and opt-in on /health only. Preserve the long request deadline while reporting periodic progress and sanitized provider failures. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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
/health,enabled with
TELEGRAM_HEALTH_OPPER_ENABLED=trueand disabled by default.retries, response-body processing, or model inference.
300-second request deadline.
HTTP status in diagnostics, and request references.
are delivered correctly.
Scope and limitations
The check measures bridge-to-Opper API reachability only. It does not validate
OpenCode's network path, credentials, credits, or model inference availability.
DNS resolution remains subject to the system resolver's timeout.
No automatic preflight is added before prompts, no provider key is passed to the
bridge, and no OpenCode server changes or unsafe debug mode are included.
Responses containing both partial text and an error are reported as failures,
rather than presenting the partial text as a successful response. Partial text
and the cost footer are not delivered for these failed exchanges.
Verification
make test: 86 tests passed.python3 -m compileall -q bot/telegram/bloc_bridge: passed.git diff --check: passed.make config: passed in OpenCode-only mode.TELEGRAM_ENABLED=true TELEGRAM_HEALTH_OPPER_ENABLED=true make config: passed.Closes #25