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
1 change: 1 addition & 0 deletions emrg/server/evolution_prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,7 @@ When reading rants, follow these rules:
> - Windows release zip asset (#649 宿主 rant 2026-08-10T20:10:41:Windows 发布资产除 exe 安装包外再提供 zip 压缩版——`build-release.yml` Windows job 在 Make installer 后新增 "Zip installer (Windows only)" 步骤(find `EMRG-*-windows-x64.exe` → PowerShell `Compress-Archive -Force` → bash `test -s` 校验非空)+ upload-artifact glob 加 `dist/artifacts/*.zip`(release job `files: artifacts/*` 自动带上);actionlint 1.7.12 全工作流验证通过;**tag-push 构建教训**:tag 触发的工作流读 tag ref 上的 workflow 文件——v0.2.21 tag 早于 #649 合并 → 该版本 release 无 zip(6 资产符合原始 release rant 验收),zip 自 v0.2.22 起随 CI 产出;验证=CI Windows job 全绿 + actionlint clean;workflow-only 改动,测试计数不变) ✅
> - GUI packaged local-module whitelist guard (#651 宿主 rant 2026-08-10T20:37:08:v0.2.21 Windows 打包版启动崩溃 `Cannot find module './conn-manager'`——main.js:15/16 require 的 **conn-manager.js 和 gui-state.js 都不在 electron-builder `files` 白名单**(多会话 P2/P4 新增模块忘更新,与 #612 vendor 同根因类);修复=①package.json build.files 加 `conn-manager.js` + `gui-state.js`;②test/build-config.test.js 新增**通用守卫**:扫描 main.js/preload.js 每个本地 `require("./x")` 断言被 files 白名单覆盖(支持 `x.js` 与 `dir/**` 形态;正反两态验证——删白名单项即红并命名缺失模块)——**#612/#651 整个"新增模块忘加白名单"类闭合**;GUI 178→179(build-config 3→4)三文档同步;验证=GUI 179/179 ✓ pytest 681 ✓ doc guard 3/3 ✓;打包版自 v0.2.22 起修复) ✅
> - Mid-turn queue injection P1 (#655 宿主 rant 2026-08-10T21:55:37:tool loop 进行中发新消息 → **daemon 排队注入**(对齐 codex steer_input)——busy 时新消息入 per-session FIFO 队列(`_session_pending`),当前 round(LLM 请求+全部工具执行)结束后、下一轮 LLM 请求前注入;**不打断工具执行、不丢消息**;busy 分支不再回 "session busy" error → `task_queued`(含 position);注入走 `_inject_pending_messages`(原子 pop 防并发 append 丢失 + `append_message` 持久化保 auto-compact + `steer_committed` 广播);round 预算=注入轮不消耗(stop/Case3/循环用尽均先重查 pending 再 return);wrapper finally:正常结束 → `queued_requeue`(request_ids,客户端自动重发)、cancel/异常/clear/delete → `queued_cancelled`(cancel_event 判定防误重发);Ask mode 注入轮空工具集;clear/delete_session 清队列;协议帧 4 个 daemon→client 广播(P2 GUI / P3 TUI 客户端侧后续 rant);pytest 681→687(+7 e2e)、GUI 179 不变;合并 535efd2) ✅
> - GUI multi-session deviations B1-B3 (#656 宿主 rant 2026-08-10T21:59:11:v0.2.22 实测三偏差——①B1 侧边栏"+ 新对话"按钮 + ⌘N 直接新建不弹项目列表(无法选项目/新建项目)→ 改绑 `Dialogs.showNewSessionDialog()`(既有 P5 slice 2 弹窗:项目活跃排序点选新建 / 新建项目按钮);②B2 侧边栏无"打开会话"入口(仅 /open 命令可达两步弹窗)→ 新增 `#open-chat-btn` ghost 按钮 → `Dialogs.showOpenSessionDialog()`(项目→会话)+ i18n zh/en `sidebar.openChat`/`openChatTitle` + CSS `.open-chat-btn`;③B3 切换会话草稿丢失(容器 per-session 但输入框全局单例)→ `state.drafts: Map<sid,string>` + saveDraft/restoreDraft:switchSession 离开前存旧 sid、切后恢复新 sid;newSession 存旧+新会话空草稿;sendMessage 发送成功 delete 该 sid 草稿;restore 重置 auto-resize 高度;回归安全(打开弹窗内"+ 新建会话…"入口与无 projectPath 兜底路径 deleteSession/closeOpenSession→newSession 不动);GUI 179→183(+4 renderer.smoke:B1 按钮弹窗不直建 / B2 入口弹窗 / B3 草稿保存恢复 / B3 发送清除+新建空草稿)三文档同步;合并 9e907aa) ✅

#### 2.2 Latest GitHub code changes

Expand Down
Loading