- _TOOL_ACTION_VERBS gates the lookup verbs (search / look up / browse / google / fetch / research / investigate / find / check / verify) on a freshness or web/internet/online target. Plain answer prose like \"binary search: 1. Search the left half\" or \"1. Find the bug\" stays a valid answer, while \"1. Search the web for X\" / \"1. Google the current chart\" / \"1. Research the latest docs\" still re-prompts. Strong unambiguous patterns (web search, query the web, call a tool, run python) remain bare. - _HAS_ANSWER_ARTIFACT anchors the fence opener and closer with (?<!\\`) / (?!\\`) lookarounds so a 4-backtick opener cannot backtrack to a 3-backtick fence and treat the surplus delimiter as info-string text. Same rule for tildes. - _has_answer_artifact now consults a small _has_unclosed_code_fence helper before the numbered-list fallback. A numbered list embedded INSIDE an open fence no longer masquerades as a final answer. - Existing plan-framing tests updated to use freshness-gated lookup phrasing so they continue to assert the intended invariants. |
||
|---|---|---|
| .. | ||
| data_recipe | ||
| export | ||
| inference | ||
| training | ||
| __init__.py | ||
| tool_healing.py | ||