Files
ycode/docs/输入框上方成员入口迁移-2026-10-18.md
T

3.1 KiB

输入框上方成员入口迁移

日期:2026-10-18。用户订正:成员任务入口应放在输入框上面。

已实现

  • 移除生成态、完成态回复底部的成员入口,在 ChatPane 输入框之前统一挂载一次;与输入区共用宽度,位于消息滚动容器之外。
  • 保留收起头像组、展开成员列表、状态实时更新、点击打开右侧成员详情和单独停止。任务完成后,最新一轮的成员仍可查看。
  • 活动回合按 assistantId 选取;空闲时只读取最后一条助手回复。新回合尚无成员、活动消息尚未加载、切换到无成员会话或回退移除成员时,不借用旧回合的成员。
  • 按会话及助手消息身份重置展开状态,避免新任务继承旧任务的展开列表。
  • 输入控件和成员入口放入同一个 input-stack,消除宿主 flex gap 叠加;恢复原版输入任务宿主的12px下间距,未修改已恢复的原版成员列表CSS。

位置依据为同一份WorkBuddy 5.8.2 REA保留证据,完整身份、摘要和源码偏移见 上方任务区域核对。未新增原版采集。

本次是现有成员入口的位置与归属修复,继续使用已恢复的成员列表和既有右侧详情。MainContentCore横向团队栏的完整视觉/主区域成员切换、后台终端列表的真实状态源仍需分别对齐;不能将此次迁移称为上方两个组件全部1:1完成。

验证

  • npm run test:subagents:display:19项通过,含活动回合优先、新回合无成员、缺失消息及最新完成回合归属。
  • npm run test:subagents:ui:17项通过,正式renderer与隔离IPC快照验证位置/宽度、回复无重复、展开、实时更新、会话隔离、重新水合、新回合替换、取消及回退;0 renderer错误。报告 .tmp/subagent-display-rFYnKp/report.json。
  • 已实际查看 subagents-expanded.png、subagents-dark.png、subagents-narrow.png;位置在输入框上方,窄屏详情沿用抽屉。
  • npm run test:subagents:app:真实Electron/preload/OMP及localhost模型服务通过,含生成中从输入框上方打开成员、单独停止和主对话继续、落盘、跟进、审批与清理;0 renderer错误。报告 .tmp/subagent-app-ErrF75/report.json。
  • npm run test:conversation、npm run typecheck及完整npm run build通过。构建日志 .tmp/composer-team-build.log。

没有调用用户付费API,没有重启用户当前窗口。重新加载renderer后显示最新位置;包含下述主进程文案修复的构建在主进程重启后加载。

构建阻断修复

构建过程中发现 electron-vite 的 esm-shim 插件用正则定位静态import,会把沙盒Git错误字符串末尾的before import误识别为导入语句,并将CommonJS兼容代码插入后一条字符串,导致生成的index.mjs报Unterminated string。已用本地插件同一个正则复现误匹配。

只将 src/main/sandbox/git-host-source.ts 中该错误文案改为before importing the repository,保持校验分支不变;完整构建恢复成功。未修改打包器或沙盒Git行为。