mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-10-06 22:17:51 +00:00
fix(agent): honor explicit no-web requests
This commit is contained in:
parent
18996588ff
commit
80adeda937
2 changed files with 6 additions and 8 deletions
|
|
@ -8647,6 +8647,11 @@ def _web_search_unavailable_for_turn(
|
|||
"""
|
||||
if "web" not in set(intent_domains or ()):
|
||||
return False
|
||||
# Mentioning web only to forbid its use is not affirmative web demand.
|
||||
# Keep the web tools disabled, but let the normal model-only path answer
|
||||
# instead of claiming the request cannot proceed without web access.
|
||||
if _explicitly_avoids_web_lookup(text):
|
||||
return False
|
||||
# A turn is unavailable only when every public-web route is disabled.
|
||||
# Exact-URL turns intentionally expose web_fetch while keeping broad
|
||||
# web_search disabled; the former intersection check incorrectly
|
||||
|
|
|
|||
|
|
@ -146,15 +146,8 @@ def test_negative_web_wording_withholds_the_web_tools(monkeypatch, phrasing):
|
|||
_assert_negative_web_turn(monkeypatch, phrasing)
|
||||
|
||||
|
||||
@pytest.mark.xfail(
|
||||
strict=True,
|
||||
raises=_MemoryOnlyTurnBlocked,
|
||||
reason="negative web wording is recognized but the memory-only turn is "
|
||||
"misclassified as web-dependent and blocked before the model call; "
|
||||
"production intent/short-circuit correction is outside test isolation",
|
||||
)
|
||||
@pytest.mark.parametrize("phrasing", BLOCKED_MEMORY_ONLY)
|
||||
def test_negative_web_wording_withholds_the_web_tools_unhandled(monkeypatch, phrasing):
|
||||
def test_negative_web_wording_withholds_the_web_tools_memory_only(monkeypatch, phrasing):
|
||||
_assert_negative_web_turn(monkeypatch, phrasing)
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue