2026-06-19
BREAKING CHANGES
PromptRegistryrewritten on Jinja2:PromptLanguage/ModelNameenums and old register/value/instruction/tag API removed; no longer a singleton.- Local embedding routing prefix changed from
local/tolocal:inEMBEDDING_ENGINE_MODEL. gemini-3.1-flash-lite-previewreplaced by GAgemini-3.1-flash-lite(preview shut down).
Added
- Local embedding engine backed by SentenceTransformer, with L2 normalization and dimension truncation.
- Jinja2
PromptRegistry:load_from_folder,manifest.toml,render,register_template,has_template. normalize_embeddingsoption onVectorDB(default off).gemini-3.5-flashadded to supported reasoning models.- Parallel Search v1 params:
location,fetch_policy,client_model,session_id,after_date,mcp_servers,previous_interaction_id. client_timeout/client_max_retriesonDynamicEngineand the OpenAI search engine.- Prompt Registry guide in docs.
Changed
- Parallel Search migrated from beta to v1 API (
client.search/client.extract,advanced_settings). - Default Parallel search mode changed from
one-shottoadvanced. parallel-webrequirement raised to>=1.0.1forscrapeandsearchextras.VectorDBselects local vs cloud embeddings by model name instead of API key.
Fixed
- Hung
web_searchcalls now fail fast via configurable socket timeout. DynamicEngineforwardsclient_timeout/client_max_retriesto neurosymbolic engines.- Hard
sys.exit(1)on unconfigured neurosymbolic engine replaced with warnings. - Removed erroneous
TEXT_TO_SPEECHAPI-key auto-migration. - Local embedding bugs:
id()routing, model priority, and scalar-vector shape handling. - Optional engine constructors skip SDK init when inactive, eliminating noisy registration warnings.
- Duplicate
SentenceTransformerimports removed.
Security
- Dropped
trust_remote_code=Truefrom local embeddings, removing arbitrary code execution risk.
Maintenance
- Tests added for local embedding, Parallel Search citations/geo-targeting, and DynamicEngine timeout forwarding.