Record teacher component removal integration

This commit is contained in:
2026-09-28 17:55:03 +08:00
parent 317def7912
commit d37bc137ca
8 changed files with 58 additions and 5 deletions

View File

@@ -6,6 +6,8 @@
当前项目中顶栏选择下发智能体 → Main 通过 /api/coding/projects/:projectId/agent-conversations/:agentId 读取账号/项目/智能体唯一聊天与最近50轮,打开本身不调用模型 → 学生发送时幂等获取该项目聊天,冻结项目/Pi 来源/当前发布版本 → 获取WS专用凭据 → Yuxi原生Request/Run。同项目/Pi/版本沿用内部线程;同项目来源或版本改变时新建执行段并仅携带该项目有预算的公开交流,不创建第二个可见聊天。切换项目恢复独立聊天,不复用前一项目历史或云端checkpoint。名称、人设和资料来自发布定义。读取中断 → Main校验本轮绑定、取消与额度 → 列目录/读取文件/读取会话原文 → 主动回传配对结果 → 原问题关联Run续接。协议2为12批/64KiB累计成功结果/8KiB单页,旧协议六批;最后一批消费后要求最终回答。保留原问题时限与学生付款人;文件使用读取时内容,会话使用本轮快照。云端只保存消息和收到的片段,完整工程与Pi原始日志保留本机。
Renderer 新提问/引导求助省略组件格式与讨论上下文 → Main 既有普通回答路径;“帮我看看”仍使用问题建议协议。历史组件状态不再进入可见卡片或焦点控件;不确定的旧请求重试沿用原 ID 与完整输入。存储及旧请求协议不迁移。
云端事件 → Main 先推进游标,再仅转发云端主线程文本 → Host SSE/本机历史 → 右侧面板。子智能体文本不混入正文或带回草稿;断线按游标与持久状态恢复。关闭面板不取消已接受问题,停止/退出请求取消原问题;重启后下次提问先停止旧问题。带回回答只追加草稿,不自动发送,旧本地老师话题保留原执行路径。见[老师决定](../10-decisions/ADR-2026-09-22-coding-teacher.md)。
编译完整请求 → 本地路径按近似Token预算、云端路径按实际JSON query字节预算裁剪来源节选 → 提交前按同一计量复核。问题、明确引用及固定讨论指令保持完整;真正的固定配置超限单独提示。明确引用绑定旧项目/Pi时须移除引用或恢复原来源。聊天轮文件原子写入后更新轻量索引;恢复与旧记录导入按原始身份去重,不重发模型。旧全局聊天依据每轮可证明的项目分入对应存储,映射已读、复制相应讨论并开启新云端执行段;原文件不修改,无项目归属的轮保留原档案。历史页和SSE按请求ID合并且排除跨项目迟到响应,已读归Main,文字草稿和阅读缓存按账号/项目/智能体保存。旧全局草稿只导入其记录的项目,保留原值。现代聊天停止旧定时跟进,独立主动观察后续接入相应项目的同一聊天。

View File

@@ -13,7 +13,7 @@ TeacherConversationStore 在 userData/agent-conversations/<account>/<agent>/proj
## Current Architecture
咨询正文由 TeacherReply 渲染 Markdown、GFM 与公式,Main 只按明确的 discussion-v1 字段解析讨论组件;普通 JSON/代码仍是正文。失败原文默认折叠持久保存且不重新注入上下文。云端主线程与本地读取活动投影为独立的工具名称/状态,参数、结果和推理不进入回答。Yuxi 在消息投影处筛选 AI 角色;详见[咨询决定](../10-decisions/ADR-2026-09-22-coding-teacher.md)。
咨询正文由 TeacherReply 渲染 Markdown、GFM 与公式;TeacherDiscussionPanel、焦点与操作逻辑及专用样式已移除。新提问与引导求助省略 presentation/discussion,使用既有普通回答路径;“帮我看看”及快捷追问保留。Main 保留历史 discussion-v1 解析与存储,旧未确认请求仍以原身份和完整输入重试,Renderer 不再显示其组件。普通 JSON/代码仍是正文。失败原文默认折叠持久保存且不重新注入上下文。云端主线程与本地读取活动投影为独立的工具名称/状态,参数、结果和推理不进入回答。Yuxi 在消息投影处筛选 AI 角色;详见[咨询决定](../10-decisions/ADR-2026-09-22-coding-teacher.md)。
知识文档上传、附件导入与替换后由客户端自动衔接既有解析索引接口,Main 保留处理 Task、可用性与替换关系。Renderer 每 5 秒串行刷新已加载页面,以服务端持久 Task 与实际分块显示阶段、失败原因及可用于回答的文档;请求未确认时保留同一操作意图,观察到新 Task 后才解除本地不确定状态。替换失败及清理重试保留旧可用内容,零分块不显示可用。见[知识处理交互规则](../10-decisions/ADR-2026-09-11-personal-cloud-agents.md#知识文档处理与可用状态)。