- _has_unclosed_code_fence() splits inline fence handling from column-0 handling. Inline fences (text before the delimiters on the same line) now require a clean info-string trailing (no internal whitespace, no leading space) to count. Prose mentions like "Use \`\`\` to start" or "Use \`\`\`python to open a block." no longer falsely flag the response as mid-stream. Column-0 fences keep their permissive info-string parsing. - _INTENT_SIGNAL + _DIRECT_NUMBERED_PLAN_FRAMING + _BARE_INTENT_NUMBERED_PLAN + _STRONG_INTENT_BEFORE_LIST all add "i need to" as a direct first-person intent phrase. - _DIRECT_NUMBERED_PLAN_FRAMING and _BARE_INTENT_NUMBERED_PLAN add visit / access / navigate / gather / collect / identify / update / edit so browser-navigation and data-gathering plans still re-prompt. - _LOCAL_ACTION_VERBS adds gather / collect / identify so numbered lists whose item verbs match these still trigger the intent-+-action-item cross-check. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| _html_to_md.py | ||
| anthropic_compat.py | ||
| audio_codecs.py | ||
| chat_template_helpers.py | ||
| defaults.py | ||
| external_provider.py | ||
| inference.py | ||
| key_exchange.py | ||
| llama_cpp.py | ||
| llama_server_args.py | ||
| mlx_inference.py | ||
| orchestrator.py | ||
| pricing.py | ||
| providers.py | ||
| safetensors_agentic.py | ||
| tool_call_parser.py | ||
| tools.py | ||
| worker.py | ||