聊天设置与网页搜索

会话局部控件、持久消息设置和有界搜索聚合的工程合同。范围为已确认的聊天/搜索缺陷及两个验证失败。不改变 Agent 权限、批准规则或网络策略。

状态与请求归属

Composer 作用域
会话设置与回调

持久草稿
配置档、工具与搜索意图

已接受消息
SessionRunConfig 与权限

执行
可用工具与服务商结果

边界要求行为验收
会话控件Tools 和 Search 只修改当前作用域。工具配置档使用现有持久设置映射。切换 A → B → A;重新挂载和分屏作用域保留各自独立值。
沙箱按请求 ID 关联读写;忽略已被替代的响应,作用域变化时终止监听,并报告写入失败,避免乐观状态偏移。两次相反写入、过期读取、断连和临时会话读取均不能覆盖当前选择。
搜索意图明确关闭时移除 web_search。开启时在现有 Agent 策略内添加;mode none 仍具最高约束。未提供意图时保持兼容。验证开启、关闭、未提供意图及 Agent none 配置的工具解析。
服务商配置确认保存后才显示默认项;必须有 Jina 密钥。已保存默认项不可用时使用其他可用服务商。稳定 schema 接受新配置的服务商,无需重启。HTTP 失败保留旧默认;验证无密钥和动态新增密钥。
聚合Race 返回首个非空成功结果。RRF 保留及时返回的部分结果。全部失败或截止时间内无成功响应均视为错误。运行中的同步请求按传输层期限结束,排队任务取消。事件控制的服务商测试验证提前返回、部分超时、空成功、全部失败和清理。
连接测试同步服务商工作在服务端事件循环之外运行。服务商探测阻塞时,异步响应仍可推进。

证据与替代方案

React 回调依赖 要求包含响应式 setter 依赖。复用现有会话存储;不通过重新挂载整个 composer 掩盖过期回调。

Python executor 生命周期 解释上下文管理器关闭为何等待。显式非等待关闭允许提前返回,但不能取消已运行的同步请求。保留传输期限,不增加新的异步服务商 API。

Jina 搜索 在已测试端点要求认证访问。可用性必须反映凭据,而不是无条件成功。注册使用稳定服务商名称;每次调用检查运行时可用性。

回归检查使用生产 hook、socket 请求 helper、工具执行器和 resolver。产品文档说明显式关闭搜索和会话独立配置档持久化。现有验证失败通过 URL 安全的文件系统转换和重新生成包 README 解决。

服务商 schema 可见性

显式 Web Search 意图把 schema 加入服务商请求,也包括仅搜索的聊天。提升操作复制所选工具,保留共享延迟 registry 与 Agent 排除项。冷会话及冻结轮次回归检查覆盖服务商分离。

实现状态

已实现并经过独立审查。回归测试覆盖会话切换、配置档恢复、关联的沙箱响应、服务商保存失败、显式搜索策略、服务商可用性、聚合提前返回和部分失败。Python、Web、浏览器、桌面和文档验证通过。显式启用的搜索 schema 包含在服务商请求中。独立规格与质量审查通过;冷会话和冻结轮次检查验证 schema 可见性。自动化及默认 App 验收证据维护在任务台账中。