Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions emrg/server/evolution_prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -346,6 +346,8 @@ When reading rants, follow these rules:
> - GUI interleaved text/tool message order (#554 rant 21:57:10 完整回合(LLM 文本+工具交替)显示顺序错乱:文本段全拼在顶部、工具行全堆下面(TUI 是顺序交错);根因=handleDelta 每 request_id 复用同一 assistant 节点而 handleToolStart 独立 append 工具行→后续文本段全落回第一个节点;修复=groupNodes 值改 {node,nodes,hasText,sealed}:handleToolStart 在组已有文本时封存当前段,handleDelta 遇 sealed 新建文本段节点(旧节点保留 DOM 原位),handleDone/clearTyping 遍历全段逐个渲染/清 typing;G104 工具先行(无文本)不封存→文本落既有节点防空泡;+1 smoke 测试(text,tool,text,tool,text 交错=5 节点独立成块,判别力实证=去 seal 逻辑即红/恢复即绿);doc GUI 91→93;npm test 93) ✅
> - Rant UX + locale-safety (#556 外部贡献 pm25coder fork,宿主 UTC+8 Windows zh-CN 实测三缺陷:①rant 时间戳 daemon 权威化——daemon.py 改 datetime.now().astimezone().isoformat()(tz-aware 本地时间,忽略客户端 timestamp),GUI 此前发 new Date().toISOString()(UTC Z,UTC+8 宿主慢 8h)vs TUI 发 naive 本地时间 → 排序错乱;测试断言 stale UTC 被忽略+tz-aware+60s 内(三回归模式:client 泄漏/naive/UTC)②emrgd.log RotatingFileHandler encoding='utf-8'——zh-CN Windows 默认 GBK 代码页乱码 CJK 日志行 ③rant 对话框 textarea CSS(.dialog-card label > textarea min-height 120px resize 继承字体)——默认 box 太小;+测试 read_text(encoding='utf-8') locale-safe(GBK 默认 locale 会挂);package-lock 0.2.0→0.2.11 版本同步;外部贡献通道实证=宿主痛点以 fork PR 回流) ✅

> - Evolution count aggregation (#558 外部贡献 pm25coder fork:`/version` pong 与 evolution_summary 的 evolution count 生产恒 0——daemon.py:161 `self.evolutions=[]` 是 pre-scheduler BackgroundThread #95 遗留,从未 append;真实 per-cycle 日志归 scheduler handler(scheduler.py:131 初始化 :708 append);修复=`_evolution_count()` 聚合 `scheduler.total_evolutions()`(sum over handlers 的 evolutions),scheduler 不可用(测试 harness)时回退 legacy `len(self.evolutions)`(isinstance int 守卫 + try/except 双保险);`total_evolutions()` 挂 TaskScheduler(`_handlers` 类型 list[EvolutionHandler],全部任务类型都解析到 EvolutionHandler → 不会 AttributeError);count/recent 一致性(evolution_summary recent 读磁盘 evolution-*.json、count 读 scheduler——两源皆活无错配);+1 测试 572→573;与 #559 配套=aborted cycle 排除后 count 才真正干净) ✅

#### 2.2 Latest GitHub code changes

```bash
Expand Down
Loading