diff --git a/emrg/server/evolution_prompt.md b/emrg/server/evolution_prompt.md index 6820b6b9..5751ddb7 100644 --- a/emrg/server/evolution_prompt.md +++ b/emrg/server/evolution_prompt.md @@ -473,6 +473,7 @@ When reading rants, follow these rules: > - GUI chat visual optimization (#771 宿主 rant 2026-08-13T21:28:49:对齐/滚动/工具耗时/紧凑行/连续工具分组——.msg.user margin-left:auto 对齐修复(flex auto-margin 胜 align-self)、.session-view 去 scroll-behavior:smooth(JS scrollTop=scrollHeight 即时)、.tool-time 成功耗时(row.dataset.elapsed 供组求和)、行间距 24→12/内边距 4→2/字号 13→12/spinner 14→12、Plan-A 连续工具合并组(last-child 吸收已完成 .tool-row 成 .tool-group + ⌄ N 个工具执行 · Ts 摘要 + 点击展开 user-expanded 持久 + 运行行保持展开 + 文本穿插独立行)+ 独立 tool-group.test.js +2(GUI 239→241);评审过程=❌ 检出 7 个孤儿 i18n keys(rants.title/col* + projects.title)+ 12 个未用 CSS 类(.workspace-view-title/.rant-*/.task-badge.badge-*——并行 rant/projects 面板重构误带死代码,renderRantList 用 .task-row 从未引用)→ 作者修 d84de1e 纯删除(−99 行零新增)→ post-fix 3 周期 ✅(14:03:44Z 起重启链)→ 合并 f60eec0(14:10:25Z);post-merge Test CI PASS(31708754550)) ✅ > - TUI status bar authoritative context message count (#772 宿主 rant 2026-08-13T21:52:18:状态栏 `· N msgs ·` 此前客户端本地 `msg_count += 1` 近似,auto-compact 重建消息后计数漂移;修复=daemon.py 两个最终 done 帧(Case 1 loop-exit + Case 3 max-tokens)均携带 `context_messages: len(messages)`(当前 LLM 上下文权威大小:system+history+user+tool results+assistant replies,auto-compact 重建后正确重导出);app.py done handler `int(context_messages)` 优先、缺失时回退 +1(向后兼容旧 daemon);e2e 单轮工具流断言 == 5(system+user+assistant-tool_calls+tool-result+final assistant);合并 66ab9a0;post-merge Test CI PASS(31709343733)) ✅ > - GUI settings panel title + dead settings-btn removal (#773 宿主 rant 2026-08-13T21:49:51:设置面板缺标题(Rant/项目/任务面板样式对齐)+ 侧边栏底部 settings-btn 与导航 ⚙ 重复入口;修复=index.html panel-settings 加 `

`(layout.css 补 .workspace-view-title 定义——此前并行面板标题引用但全库无此 CSS)、sidebar-footer 删 settings-btn(保留 status-dot)、app.js settings-btn 绑定删除(导航 switchView("settings") 路径已含 loadEvolutionSummary+showSettings,功能保留)、i18n.js 删 sidebar.settings 孤儿键(zh+en,settings.title 两语言已存在);+1 renderer.smoke 判别测试(title 存在/footer 无 btn 有 dot/app.js 无绑定/i18n 无孤儿键,GUI 241→242);合并 2d9d7d6;post-merge Test CI PASS(31709827480)) ✅ +> - GUI i18n orphan/missing-key guard (#776 自发现:#771 review ❌ 检出 7 个孤儿 i18n keys——#755 清理类无防回归护栏;修复=i18n.test.js 双向守卫——(A) 无孤儿字典键(字典每个 key 被 JS 代码/index.html data-i18n 引用)、(B) 无缺失引用键(代码引用的 key 在字典中);处理形态=字面 t 调用(_t/I18N.t/EMRG_I18N.t/t)、三元 span(_t(cond ? "A" : "B"))、模板 glob(按 base 段归一 tool.*.doing 匹配)、registry 属性值(hint/title/key/label/placeholder/text/msg)、camelCase 段(projects.autoEvolve);同时删 15 个死键(result.title/settings.groupTasks/settings.githubTokenEmpty/tasks.title/tasks.desc/panel.openFailed/panel.copied/app.helpNoSessions/app.historyLoading/app.globalAll/app.noTasks/sidebar.noOpenSessions/projects.sessions/composer.modeAsk/composer.modeAuto,zh+en 各 15 = i18n.js −30 行);+1 测试 GUI 242→243、Agent.md 同步;合并 c54280e) ✅ #### 2.2 Latest GitHub code changes