Run the specialized-fallback research tests inside a named effect scope - #29
Closed
Parad0x-Labs wants to merge 1 commit into
Closed
Parad0x-Labs wants to merge 1 commit into
Parad0x-Labs wants to merge 1 commit into
Conversation
The three direct-call cases (market-quote fallback through urlopen, the nested wttr.in payload, the empty RSS feed) mock urllib one level BELOW the canonical fetch door, so open_remote runs for real and the R2b law denies the fetch before any socket -- the fallbacks silently stood down (provider 'none') or surfaced the refusal. Their siblings that mock http_fetch_text above the door never see this. The tests open the same sanctioned named_background_effect_scope the web-search backend tests adopted (PR #15/#23 pattern); every assertion is unchanged. 3 CI failures (main run 35570948370) -> 21 passed; the 5 web-search backend failures beside them are the cluster owned by open PR #15/#23.
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.
What failed
tests/test_web_research_runtime.py— 3 cases red in the main CI census (run 35570948370)and every PR run since; deterministic locally:
test_market_quote_query_uses_specialized_live_fallback_when_search_providers_fail—provider 'none' != 'yahoo_finance'test_weather_fallback_accepts_nested_data_payload—provider 'none' != 'wttr_in'test_news_rss_fallback_returns_none_on_empty_feed—RemoteFetchRefusedError: no active turn or background effect ledger … a fetch outside any turn scope is denied before any socketRoot cause
The R2b effect-gateway law (same owner as the web-search backend scoping in open PRs
#15/#23): these three direct-call tests mock
urllib.request.urlopen— one level BELOW thecanonical fetch door — so
open_remoteruns for real and denies the fetch outside any turnscope before any socket. The two fallback cases swallow the refusal and report
provider 'none'; the RSS case surfaces it. Their sibling tests in the same file mockhttp_fetch_textABOVE the door and never hit this.Repair (test-only, one file, +6/−3)
The three cases open the sanctioned
named_background_effect_scopeat their entry point —the identical pattern the web-search backend tests adopted in #15/#23 (attribution only,
grants nothing else). Every assertion is unchanged.
Validation
test_web_search_backends_2026_07_31,test_browser_backed_web_search): 66 passed, 5 failed — exactly the web-search backendcluster owned by open PR Discard late tool progress on terminal checkpoints; scope the web-search fetch tests #15/Run the web-search backend fetch tests inside a named effect scope #23 (unchanged on main; not this PR's scope).
ruff check .clean (pinned 0.16.7).Base: main
8153a96. One file changed.