k88936
|
a50cbfb6c8
|
过滤图片编辑响应中的空图像数据
忽略上游返回的空 b64_json 条目,避免把空字符串转发为图像结果。
新增空条目与有效条目混合响应的回归测试。
|
2026-09-10 19:04:40 +08:00 |
|
k88936
|
1eb4bd5ec0
|
明确拒绝无效的处理图数据地址
处理图缺少 data URL 分隔符时直接返回格式错误。
避免先写入空文件再在后续裁切阶段暴露误导性错误。
|
2026-09-10 19:03:29 +08:00 |
|
k88936
|
5b441d389c
|
忽略完全位于图片外的切分标记矩形
矩形起点超出图片边界时直接返回 None,避免在边缘绘制伪影。
新增越界矩形回归测试。
|
2026-09-10 19:02:40 +08:00 |
|
k88936
|
f200cb4d3c
|
避免标记图编码重复复制像素缓冲
复用同一个 DynamicImage 完成文件保存和返回数据编码。
保持标记图内容和错误处理不变。
|
2026-09-10 19:02:09 +08:00 |
|
k88936
|
ae2f5fc80b
|
记录 UI 编辑器重试中的请求错误
在结构化 LLM 请求的中间重试失败时写入尝试次数和错误日志。
保留原有重试次数、历史消息和最终错误语义。
|
2026-09-10 19:01:32 +08:00 |
|
k88936
|
b69bd88e5e
|
修正 UI 编辑器校验器命名
将 run_with_repair_history 的 Validater/validater 更正为 Validator/validator。
不改变重试流程和运行时行为。
|
2026-09-10 19:01:18 +08:00 |
|
lhk229
|
a38eec743a
|
补齐 LlmRunRequest 字面量的 responses_input 字段
Project CI / Repository checks (pull_request) Failing after 1m18s
Project CI / Frontend tests (pull_request) Failing after 2m15s
Project CI / Native shell tests (pull_request) Failing after 4m59s
Project CI / Backend tests (pull_request) Successful in 6m10s
api-server LLM 代理与 platform-agent 适配器补 None
避免 cargo run api-server 因缺字段编不过
|
2026-09-10 10:59:13 +00:00 |
|
k88936
|
c5c7339c4a
|
重命名分离模块 problem_description 为 advice 并同步更新相关校验逻辑与测试
Project CI / Repository checks (pull_request) Failing after 13s
Project CI / Backend tests (pull_request) Failing after 9s
Project CI / Frontend tests (pull_request) Successful in 2m28s
Project CI / Native shell tests (pull_request) Failing after 14m32s
|
2026-09-10 18:54:10 +08:00 |
|
k88936
|
4bbc77fc32
|
增加UI自动切分耗时日志
补充 marker、area、LLM、图片编辑及 batch 阶段耗时观测
记录成功与失败路径的性能字段
同步自动切分工作流技术方案中的日志约定
|
2026-09-10 18:51:53 +08:00 |
|
k88936
|
8c521ca891
|
移除 UI 预览适配与缩放输入
删除预览工具栏适配按钮、适配回调与对应快捷键
将缩放百分比改为只读显示并移除输入组件及测试
|
2026-09-10 18:48:56 +08:00 |
|
k88936
|
69a0804c03
|
调整切分区域边界扩展上限
将像素边界每边调整上限常量设为百分之百
同步更新受影响的区域归一化测试
技术方案仅引用上限常量,不重复写死数值
|
2026-09-10 18:46:39 +08:00 |
|
k88936
|
74f726e65d
|
修正自动切分素材检查条件
移除自动切分对预先导入独立素材的错误要求。
统一自动切分前置与结果检查,并补齐图片和字体引用校验。
在新建和重新开始自动切分时执行前置检查,恢复流程继续尽力完成。
|
2026-09-10 18:43:31 +08:00 |
|
lhk229
|
18ed9778d8
|
拆分策划 Agent 与 Codex 随包清单
Project CI / Repository checks (pull_request) Failing after 53s
Project CI / Frontend tests (pull_request) Failing after 2m17s
Project CI / Backend tests (pull_request) Failing after 3m39s
Project CI / Native shell tests (pull_request) Failing after 3m54s
将 design-agent 资源包放到全平台 Tauri 基础配置
Windows 配置只保留 pinned Codex sidecar
配置门禁分别校验两份清单,禁止互相混入
|
2026-09-10 10:28:07 +00:00 |
|
lhk229
|
89447ed432
|
按评审意见强化回退模板读取通道回归测试
Project CI / Repository checks (pull_request) Successful in 2m47s
Project CI / Frontend tests (pull_request) Successful in 3m44s
Project CI / Backend tests (pull_request) Successful in 7m1s
Project CI / Native shell tests (pull_request) Successful in 18m11s
Project CI / Backend tests (push) Has been cancelled
Project CI / Native shell tests (push) Has been cancelled
Project CI / Frontend tests (push) Has been cancelled
Project CI / Repository checks (push) Has been cancelled
- tests/configuration.rs 回退模板测试改用与模板无关的 runtime dir,分类断言覆盖按路径归属而非 runtime dir 为 None 的恒真分支,并补充 runtime dir 内路径的 managed 正向断言
- tests/mod.rs 移除不再使用的 clear_test_runtime_config_dir 辅助
|
2026-09-10 09:46:48 +00:00 |
|
lhk229
|
af96174e07
|
接入策划 Agent 脚本化假 Provider 定向测试
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
拦截测试态 Provider 请求,按队列返回脚本响应或错误
覆盖五阶段推进、审批拒绝不唤醒、重启恢复、资源与工具失败及瞬态重试
同步迁移方案第 8 步验证口径
|
2026-09-10 09:42:26 +00:00 |
|
lhk229
|
cb79c4a9c6
|
对齐策划入口测试到新设计 Agent
Project CI / Repository checks (pull_request) Failing after 6m22s
Project CI / Frontend tests (pull_request) Failing after 6m48s
Project CI / Native shell tests (pull_request) Failing after 9m54s
Project CI / Backend tests (pull_request) Failing after 16m19s
新建策划入口走设计会话命令,已有 V2 会话仍走原链路
补审批与澄清卡界面用例
|
2026-09-10 09:09:37 +00:00 |
|
lhk229
|
3ebfcc0c2f
|
修正新增配置读取回归测试的 Rust 格式
Project CI / Repository checks (pull_request) Successful in 2m16s
Project CI / Frontend tests (pull_request) Successful in 3m8s
Project CI / Backend tests (pull_request) Successful in 7m2s
Project CI / Native shell tests (pull_request) Successful in 18m27s
- tests/configuration.rs 按 cargo fmt 调整两个 assert! 宏换行
|
2026-09-10 09:03:19 +00:00 |
|
lhk229
|
9b5d1fe107
|
修复仓库回退配置模板被读取通道私有化 ACL 锁定
Project CI / Frontend tests (pull_request) Successful in 3m30s
Project CI / Backend tests (pull_request) Successful in 6m27s
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
- config.rs 新增 game_creator_config_path_is_runtime_managed 判定,read_game_creator_config_file 按路径归属分流:AppData 托管目录内的真实凭据维持私有加固读取,仓库旁边的回退模板与 local 覆盖改用 open_project_snapshot_regular_file 非变异快照通道
- 根因:开发 CLI 无 AppHandle 时回退读取 worktree 内 git 跟踪模板,私有读通道在 Windows 上无条件收紧 DACL 为仅当前进程用户,导致其他账号与 cargo include_str! 全部 Access Denied
- tests/mod.rs 新增 clear_test_runtime_config_dir 辅助
- tests/configuration.rs 新增两个回归测试锁定快照 / 私有两条读取通道的分流
- pitfalls.md 记录该排障经验与读取通道副作用白名单教训
|
2026-09-10 08:57:31 +00:00 |
|
suzmii
|
4ecab19429
|
修正 CI 权限用例在 root 容器下的前提并补平台无关的分类判据
Project CI / Repository checks (pull_request) Successful in 3m5s
Project CI / Frontend tests (pull_request) Successful in 4m2s
Project CI / Backend tests (pull_request) Successful in 6m51s
Project CI / Native shell tests (pull_request) Successful in 19m16s
- project_write_lock_does_not_project_permission_denial_as_contention 不再用 expect_err 断言“只读目录必须挡住取锁”:CI 容器以 root 运行,0o500 不生效,取锁会正常成功;此时跳过端到端前提
- 新增平台无关用例 project_write_lock_classifies_by_whether_the_target_exists:目标存在才是争用、目标不存在却创建失败是权限拒绝、NotFound 归其它
- 让权限分类判据在不依赖 ACL 环境的条件下也有回归护栏,避免只靠会被 root 绕过的端到端用例
|
2026-09-10 16:52:30 +08:00 |
|
lhk229
|
aaa52c2b34
|
接入策划 Agent 生产迁移初版
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
新增独立设计会话、工作区工具和随包资源
platform-llm 支持 Responses 原生 input 续轮
无旧 V2 会话的策划入口切换到新设计 Agent
增加阶段审批、澄清卡和工作区文件浏览
同步迁移方案与决策记录
|
2026-09-10 08:45:11 +00:00 |
|
suzmii
|
81c2389132
|
修复 AGC Direct 写通道项目锁零等待与持锁方不可诊断
Project CI / Repository checks (pull_request) Successful in 3m9s
Project CI / Frontend tests (pull_request) Successful in 4m7s
Project CI / Backend tests (pull_request) Successful in 6m54s
Project CI / Native shell tests (pull_request) Failing after 14m11s
- Direct 写路径(agc_write_file)改用统一的有界等待,与 file.write / file.patch / file.delete 同语义,同一轮并行写多个文件按同一把锁串行,不再在 24-42ms 内把重叠判成"项目正在被其他写操作占用"
- create_new 失败拆成争用 / 权限拒绝 / 其它三类:锁文件不存在却仍创建失败不再投影成争用;sharing violation(32) 与 lock violation(33) 恒定归争用
- 争用错误与等待日志带上持锁方身份(commandId / pid / createdAt / ownerIsSelf),锁文件处于删除挂起或未写完时显式表达成"身份不可读"
- ProjectWriteLockSnapshot 补 commandId 与 describe_holder(),沿用既有快照 + 字节 CAS 回收机制,不新增第二套回收判据
- 有界等待预算耗尽记 project.write_lock.wait_exhausted(含等待毫秒数),权限拒绝记 project.write_lock.permission_denied,争用不在零等待入口里逐次记账
- 新增同进程重叠写等待、同轮并行写、活外部进程持锁带身份、权限拒绝分类、ACL 拒绝不投影成争用五条回归用例
- 同步 decision-log、pitfalls 与技术方案文档
|
2026-09-10 16:30:22 +08:00 |
|
k88936
|
1509235c1b
|
统一自动切分素材工作流命名
将 UI 编辑器第三步和内部流程 ID 统一为自动切分素材。
重命名前端切分概览模块并更新完成、恢复和导航文案。
同步 Runtime 最终编辑器路由、测试与相关技术文档。
|
2026-09-10 15:11:29 +08:00 |
|
k88936
|
1c992c69fe
|
完善分离与识别命令说明,调整嵌套格式与结构化指引
|
2026-09-10 14:05:37 +08:00 |
|
k88936
|
d9b153ed78
|
完善分离命令说明,新增禁止未请求文本的指引
|
2026-09-10 13:15:42 +08:00 |
|
k88936
|
30c469e9a1
|
规范分离模块格式化写法
|
2026-09-10 13:15:34 +08:00 |
|
k88936
|
51f629b2f9
|
UI编辑器节点改为单组件模型
Project CI / Repository checks (pull_request) Failing after 14s
Project CI / Backend tests (pull_request) Failing after 14s
Project CI / Frontend tests (pull_request) Successful in 2m43s
Project CI / Native shell tests (pull_request) Failing after 14m29s
修改 Node、Binding DTO、识别与分离链路为 component 单字段
为识别和绑定 LLM 工具引入 PureNode/WithComponent 显式载荷
移除前端组件索引、排序和组件栈操作
同步生成 ts-rs TypeScript 类型、状态校验、测试与专题文档
|
2026-09-10 13:08:29 +08:00 |
|
k88936
|
d6c720ecdd
|
纠正分离模块导出提交边界
撤销误入的组件字段重命名测试改动
仅保留裁切工作流对面积归一化模块的直接依赖
|
2026-09-10 12:26:39 +08:00 |
|
k88936
|
086aa91d70
|
收窄分离区域模块导出
让裁切工作流直接依赖面积归一化模块
移除未使用的公共重导出,保持分离模块边界清晰
|
2026-09-10 12:24:18 +08:00 |
|
k88936
|
3733e86272
|
补充分离区域像素归一化约定
记录透明像素边界扫描、方向锁定与四边同步推进规则
明确 50% 与图像边界约束、透明图处理、日志字段和性能 TODO
|
2026-09-10 12:13:21 +08:00 |
|
k88936
|
5d0f3e6be6
|
UI编辑器分离区域像素边界归一化
新增独立 BindingArea 像素边界归一化模块与回归测试
在 cut 裁切前按透明像素收缩或扩展四条边并记录约束结果
接入分离工作流并保留原始与归一化区域日志
|
2026-09-10 12:13:04 +08:00 |
|
k88936
|
989440173f
|
完善绑定区域值类型约束
为 BindingArea 增加 Eq 以支持分离区域比较
|
2026-09-10 11:52:46 +08:00 |
|
k88936
|
22d9958d18
|
在分离标记图中遮罩普通文字
绘制文字紫色区域并保持绿色元素框在最上层
增加文字遮罩图层顺序测试
|
2026-09-10 10:57:50 +08:00 |
|
k88936
|
56f8c9a6a1
|
构造自动分离文字遮罩
按最近未绑定图片祖先收集 Text 布局像素矩形
补充嵌套图片与根图片遮罩构造测试
|
2026-09-10 10:49:45 +08:00 |
|
k88936
|
c84df3d88f
|
补充文字遮罩状态字段契约
明确 text_mask_areas 为当前 separation state 必选字段
保持开发阶段 v1 且不提供旧 sidecar 迁移回退
|
2026-09-10 10:49:07 +08:00 |
|
k88936
|
761d32cebf
|
拆分自动分离模型并增加文字遮罩区域
将 separation model 拆为 note、node、binding、result 模块
为 SeparationNode 增加 text_mask_areas 字段并同步 TypeScript 类型
|
2026-09-10 10:43:00 +08:00 |
|
k88936
|
b3d6543d73
|
补充自动分离文字遮罩方案
记录普通文字归属、遮罩字段与标记图绘制规则
明确不进入分离树、绑定结果和视觉模型契约
|
2026-09-10 10:32:34 +08:00 |
|
k88936
|
8cd7c43b9e
|
更新自动分离接入文档状态
将前端接入 TODO 更新为联调与失败注入测试待办。
|
2026-09-09 21:02:09 +08:00 |
|
k88936
|
7fb7d246c0
|
将视觉步骤切换为自动分离
前端仅调用一次 separate_ui,并完成 cut 图片登记、SpriteAsset 回填和 State 保存。
增加 sidecar 恢复选择面板,旧 bind_components 标记为未调用遗留命令。
|
2026-09-09 21:00:53 +08:00 |
|
k88936
|
5844afa14d
|
抽取自动分离素材状态变换
复用 SpriteAsset 校验并支持锁内构造下一份 State。
保留公开 addSpriteAssets 的锁保护与历史提交行为。
|
2026-09-09 20:17:11 +08:00 |
|
k88936
|
615d1a28cd
|
补齐自动分离恢复状态胶水
新增 separation 恢复探测、完成清理命令与 DTO。
持久化项目相对 cut 图片路径并保留 state sidecar 到最终提交。
|
2026-09-09 20:16:09 +08:00 |
|
suzmii
|
a1b9b24891
|
修复 AGC Ctrl+C 残留上个工作树后端导致切换工作树复用旧后端 (#315)
Project CI / Frontend tests (push) Successful in 3m14s
Project CI / Backend tests (push) Successful in 8m54s
Project CI / Repository checks (push) Successful in 2m29s
Project CI / Native shell tests (push) Successful in 19m23s
closes #314
## 现象
`npm run agc` 按 Ctrl+C 后有概率残留上个工作树的 `api-server.exe` / SpacetimeDB,切换 worktree 再启动时 AGC 复用旧后端,改过数据库 / schema 的工作树会串库。
## 根因
1. Windows 下长驻服务都经 Node `shell: true` 的 `cmd.exe /d /s /c` 包装层启动,Ctrl+C 先杀包装层(`0xC000013A`);`dev.mjs` 的 `stopProcess` 见到直接子进程已退出就 return,`taskkill /PID <已退出 PID> /T /F` 也只会失败,深处的 `cargo → api-server.exe` 无人清理。
2. 按根 PID 遍历依赖快照里的父子链,中间层先消失时链断,只能拿到根 PID。
3. 复用判据只看 `.app/dev-stack.json` status 与 `/healthz`、`/readyz`、`/v1/ping`,不校验端口上的进程属于哪个工作树,残留后端照样被判为健康并复用。
## 改动
- 新增 `scripts/dev-windows-process.mjs`:按根 PID 遍历 + 按身份匹配(`server-rs/target/debug/api-server.exe` 绝对路径、SpacetimeDB `--data-dir`)两条独立清理路径,带 1s 快照缓存避免清理被拖慢。
- `scripts/dev.mjs`:直接子进程已退出时仍按记录 PID 清理后代;退出时按身份兜底清扫本工作树后端(复用他人 standalone 时跳过);启动前清理旧 api-server 保留 `Wait-Process` 语义,避免 `failed to remove file`。
- `apps/ai-game-creator-shell/scripts/start-dev-stack.mjs`:复用前校验端口监听进程归属,无法证明归属就不复用、改为启动本工作树后端并允许端口漂移;信号与 `finally` 各兜底清扫一次;`taskkill` 失败时降级按 PID 遍历;等待就绪时输出归属校验失败原因,避免静默超时。探测不可用时退化为旧行为,不阻断本地启动。
- 测试与文档:新增 `scripts/dev-windows-process.test.ts`、扩充 AGC 复用门禁用例;同步 `docs/project-memory/shared-memory/pitfalls.md` 与本地开发运维文档。
## 验证
- 伪造 `api-server.exe` 进程:按身份精确命中并杀掉(`matched=[17284] stopped=[17284]`)。
- 3 个真实监听进程下归属判定:`owned` / `api-server-owner-mismatch` / `spacetime-owner-mismatch` 均正确。
- `npx vitest run scripts/dev.test.ts scripts/dev-windows-process.test.ts scripts/dev-stack-port-utils.test.ts apps/ai-game-creator-shell/tests/...`:119 passed(唯一失败为 Windows 文件权限用例,已确认在合并基线 `origin/master` 上同样失败)。
- `node --check`、`eslint --max-warnings 0`、`prettier --check`、`npm run check:encoding`、`git diff --check` 全部通过。
## 备注
Rust 侧 `api-server` 的 `with_graceful_shutdown` 没有超时上限,是「有概率」的来源之一;本次只在 Node 侧收口,是否给优雅退出加 deadline 可另行评估。
Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/315
Co-authored-by: Suzumiya <suzmii@qq.com>
Co-committed-by: Suzumiya <suzmii@qq.com>
|
2026-09-09 20:08:04 +08:00 |
|
suzmii
|
7c49e7e51c
|
Merge pull request '修复 AGC 项目写锁残留无法回收与启动失败无诊断' (#313) from fix/agc-stale-lock into master
Project CI / Backend tests (push) Has been cancelled
Project CI / Repository checks (push) Has been cancelled
Project CI / Frontend tests (push) Has been cancelled
Project CI / Native shell tests (push) Has been cancelled
Reviewed-on: #313
Reviewed-by: 孔令弘 <ink29535@proton.me>
|
2026-09-09 20:07:37 +08:00 |
|
k88936
|
3e1e172f9c
|
补充自动分离前端接入合同
明确 UI 编辑器单次调用 separation 与 sidecar 恢复弹窗
补充资源登记、State 回填、保存和 finalize 顺序
划定旧 binding 与 Runtime workflow 的本次不改范围
|
2026-09-09 20:03:27 +08:00 |
|
suzmii
|
c0ef876b14
|
修复 AGC 项目写锁回收的并发删除竞争与启动诊断死路径
Project CI / Backend tests (pull_request) Successful in 5m56s
Project CI / Repository checks (pull_request) Successful in 2m29s
Project CI / Frontend tests (pull_request) Successful in 3m5s
Project CI / Native shell tests (pull_request) Successful in 17m44s
- 锁文件回收改为单次快照解析:payload 只解析一次,删除前重新核对字节,内容已被并发方替换或文件已消失时返回 false 并重试 create_new,不再无条件 unlink,也不再把 remove_file 的 NotFound 当成硬失败
- mtime 读取失败改用 Option 区分“未知”与“纪元 0”:未知年龄不回收,未知锁创建时间不做 PID 复用推断,避免把保守判定反转成抢走活持有者
- 新增并发替换/已消失、旧格式活持有者、存活未知、mtime 未知四条回归用例
- 启动日志槽优先用已经生效的配置目录(含 --config-dir),否则退到平台配置根(APPDATA / Application Support / XDG_CONFIG_HOME)
- 日志路径未知时 StartupLogSlot::fail 仍然给出用户可见提示,四处 inspect_err 不再被路径判空挡掉
- 同步 check-config 守卫、decision-log、pitfalls 与技术方案文档的用例数与新判据
|
2026-09-09 19:44:46 +08:00 |
|
k88936
|
53a919e39b
|
优化 UI 分离工作流程的提示生成与历史处理
Project CI / Repository checks (pull_request) Failing after 14s
Project CI / Backend tests (pull_request) Failing after 14s
Project CI / Frontend tests (pull_request) Successful in 2m50s
Project CI / Native shell tests (pull_request) Failing after 3m4s
- 调整 initial_history 构建逻辑,增强系统与用户消息的一致性。
- 简化 SeparationNode 提示生成逻辑,仅保留节点 ID 与注释。
- 明确 extracted_area 的权威性为 processed 图像,并更新生成提示的规则。
|
2026-09-09 19:04:56 +08:00 |
|
suzmii
|
b7f27721c5
|
修复 AGC 项目写锁回收判据的跨平台 PID 边界
Project CI / Repository checks (pull_request) Successful in 3m8s
Project CI / Frontend tests (pull_request) Successful in 4m15s
Project CI / Backend tests (pull_request) Successful in 6m47s
Project CI / Native shell tests (pull_request) Successful in 17m58s
- 项目写锁存活判定把平台不可能分配出的进程号(0 或超出平台 pid 宽度)判为持有者不存在并直接回收,不再落回 600 秒保守分支
- 回归用例的死进程 PID fixture 由 0xFFFF_FFF0 改为 i32::MAX - 1,同时落在两个平台进程号空间之外且在 Unix 有符号 32 位范围内
- 新增 project_write_lock_reclaims_unrepresentable_owner_pid 用例,覆盖 u64::MAX 非法进程号残留锁
- 修正 project_lock_recovery 头部注释,说明这些用例是回归护栏而不是待修缺陷
- 同步 decision-log 的 PID 边界决策与 pitfalls 的跨平台 fixture 经验
|
2026-09-09 18:00:53 +08:00 |
|
suzmii
|
78ba9e33b6
|
修复 AGC 启动诊断守卫用例
Project CI / Repository checks (pull_request) Successful in 2m49s
Project CI / Frontend tests (pull_request) Successful in 4m2s
Project CI / Backend tests (pull_request) Successful in 6m45s
Project CI / Native shell tests (pull_request) Failing after 14m22s
- check-config.mjs 启动诊断守卫改按 StartupLogSlot 契约匹配:setup_log.fail 加稳定失败码
- 同时校验 StartupLogSlot 内部仍写有界诊断日志并调用可见提示,避免守卫被绕过
|
2026-09-09 17:27:30 +08:00 |
|
suzmii
|
3153d4f674
|
修复 AGC 项目写锁残留无法回收与启动失败无诊断
Project CI / Repository checks (pull_request) Successful in 2m50s
Project CI / Frontend tests (pull_request) Successful in 3m30s
Project CI / Native shell tests (pull_request) Failing after 4m30s
Project CI / Backend tests (pull_request) Successful in 6m32s
- .agent/project.lock 新增 processStartedAt,PID 存活时核对进程启动身份,身份不一致判定 PID 复用并回收
- 旧锁缺少 processStartedAt 时退回“进程启动时间晚于锁 createdAt 加 5 秒容差”的 PID 复用推断
- 空锁 / 坏锁(崩溃停在 create_new 与落盘之间)宽限期由 600 秒收紧到 30 秒,无法判定持有者存活时仍保持 600 秒
- 新增 StartupLogSlot,配置目录就绪前后都能写 startup.log,startup.*.failed 与启动错误提示不再是死分支
- Windows 启动失败恢复系统消息框并附诊断日志路径,其它平台写 stderr,同一进程只提示一次
- 新增 project_lock_recovery 6 条回归用例:死 PID、空锁宽限、PID 复用时间推断、PID 复用身份不一致、身份一致不抢锁、新鲜空锁不抢锁
- 同步 decision-log 与 App 实施计划文档
|
2026-09-09 16:58:41 +08:00 |
|
k88936
|
d4b5f9fc14
|
重构 UI Editor LLM repair history
将 request_with_feedback 改为 run_with_repair_history 并统一 max_retries 与 validater 命名。
让 requester 接收 append-only LlmMessage history,业务校验失败追加序列化响应和错误反馈。
迁移 visual_binding 调用方并补充 retry-only 与业务反馈 history 测试。
同步 UI Editor 结构化请求 repair history 决策文档。
|
2026-09-09 16:46:29 +08:00 |
|
lhk229
|
04128eb661
|
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Repository checks (push) Successful in 2m48s
Project CI / Frontend tests (push) Successful in 3m26s
Project CI / Backend tests (push) Successful in 7m17s
Project CI / Native shell tests (push) Successful in 19m27s
|
2026-09-09 16:34:16 +08:00 |
|