Two files conflicted, both resolved by hand. studio/backend/core/inference/tools.py - Module constants: kept both sides (_RAG_SEARCH_SLOT from this branch, _DISABLE_DNS_PINNING_ENV from main). - _fetch_url_raw redirect loop: took main's version, which is a superset. It keeps this branch's IPv6 bracketing and validated Host header and adds the UNSLOTH_STUDIO_DISABLE_DNS_PINNING escape hatch for proxies that need the hostname in CONNECT. Default path still pins to the validated IP. studio/frontend/src/components/assistant-ui/thread.tsx - Composer: nested this branch's Deep Research controls inside main's dictation wrapper so they hide while dictating. - Kept both this branch's research stop handler and main's useAui hook. studio/backend/tests/test_web_fetch_extraction.py - main's new DNS-pinning opt-out test used a URL with embedded credentials. check_url_access on this branch rejects those outright rather than stripping them, so the fixture now uses a plain URL and a separate test asserts the credential rejection. Verified: test_web_fetch_extraction.py 67 passed, test_sandbox_tools.py 145 passed, tests/studio/test_deep_research_frontend_contract.py 9 passed, tsc --noEmit clean. |
||
|---|---|---|
| .. | ||
| backend | ||
| frontend | ||
| src-tauri | ||
| __init__.py | ||
| install_llama_prebuilt.py | ||
| install_node_prebuilt.py | ||
| install_python_stack.py | ||
| install_whisper_prebuilt.py | ||
| LICENSE.AGPL-3.0 | ||
| MCP.md | ||
| node_prebuilt_pins.json | ||
| package-lock.json | ||
| package.json | ||
| prebuilt_core.py | ||
| setup.bat | ||
| setup.ps1 | ||
| setup.sh | ||
| Unsloth_Studio_Colab.ipynb | ||