fix: preserve provider tool-stop failures - #811
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Maintainer exact-head audit for PR 811 Remote exact head: f0b0dd5 The current diff is bounded to the provider tool-stop transport boundary and its regression tests. No unresolved review comments are present on this exact head. Local focused verification on the exact head passed 115 tests: Hosted checks currently have 8 skipped/completed runs and 9 queued runs, including the required workflow bootstrap, Strix, Scorecard, dependency review, OSV, Semgrep, Trivy FS, scheduler sweep, and close-empty. Queued runs are not success evidence. The PR is a dependent stack item over PR 771, so mergeability and base identity must be rechecked after the parent changes. Decision: WAIT_AND_REMEDIATE. No merge, bypass, or approval was performed. |
d7b4f68
into
ContextualWisdomLab:fix/issue-567-tool-failure
|
Exact-head stacked reconciliation completed.
The PR remains dependent on #771. Hosted required Checks and an independent formal approval remain authoritative; no merge or approval claim is made while they are pending. |
| except urllib.error.HTTPError as exc: | ||
| if _is_tool_execution_stopped(exc): | ||
| raise _provider_tool_execution_stopped(agent) from None | ||
| raise |
There was a problem hiding this comment.
* fix: add safe tool execution fallback policy * fix: harden HTTP tool failure classification * fix: address tool fallback review findings * docs: specify fail-closed HTTP and SSE contract * fix: address follow-up tool fallback review * fix: bound tool fallback retries * docs: remove plan whitespace * fix(tools): honor suppressed exception contexts * fix(security): require object policy for external admin reads * fix(security): pass principal token to resource policy * test(tool): preserve structured metadata through wrappers * fix(tools): preserve structured failures through wrappers * docs: record external admin resource policy * refactor: keep tool failure PR focused * test: repair fallback regression checks * fix: contain raw provider failures * fix: sever fail closed tool error causes * fix: harden tool failure retry boundaries * fix: stop malformed provider failover * fix: preserve terminal provider tool failures * fix: preserve provider tool-stop failures (#811) * fix: count safe retries in circuit health * refactor: remove unreachable provider error branch * fix: remove stale fallback error state --------- Co-authored-by: contextual-orchestrator-maintainer[bot] <contextual-orchestrator-maintainer[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Summary
409 tool_execution_stoppedthrough chat and raw passthrough retriesToolFallbackStoppedErrorfail-closed contractValidation
uv run --frozen --with pytest --with ruff python -m pytest -q tests/test_provider_reliability.py tests/test_tool_execution_fallback.py(115 passed)uv run --frozen --with pytest --with ruff python -m compileall -q contextual_orchestrator testsgit diff --checkThis PR is intentionally stacked on upstream PR #771 and must not be merged independently of that parent.