Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
通用 TypeScript AgentRuntime/Pi 复用 browser、files、CLI、desktop-tools / DesktopCapabilityClient / CapabilityBroker / TicketStore 与 Electron/nut-js,并新增受限 Windows UIA ValuePattern 适配。保留旧 Python/WebSocket 路径与 fixture 回退。
真实 Windows GUI / 后台 Unicode 填写完整验收未通过,保持 Draft,不合并。 当前提交 cd502ee;作者和提交者使用仓库局部 ZZM-user。
实现范围
真实证据及本次结论
此前四轮 native OS 截图/点击/部分键盘输入有独立自有控件证据,但均未完整通过;存在 IME 组合输入及指针变化,未确定所有根因,不归因用户操作。原始 PNG/oracle/SHA-256 保留在 docs/v2/evidence/。
首轮 UIA 单窗口在启动前台校验失败,没有 UIA 调用。随后明确获准的双自有窗口轮次 onCd4Y:9项计划中执行6项,5通过、Unicode项中止/未验证,3项未运行。通过项首次耗时:互斥0.996ms、只读172.612ms、密码162.598ms、禁用172.975ms、批准拒绝且值不变528.449ms;Unicode中止532.019ms。脚本规划、模型调用0、重试0,不转换成LLM准确率。
前台采样1–60为自有sentinel,第61变为自有target,变化区间31.2054ms、最大采样间隔32.3429ms。monitor触发取消并终止活动worker;不是取消专项通过。stale/replay/取消专项均not run。自有fixture退出、lease释放已记录并及时通知用户。
真实UIA bind/inspect已执行;原报告缺worker阶段,无法证明Unicode的SetValue进入或返回,最终值及副作用仍unknown。变化发生在清理前,且此前60帧稳定;没有确证的worker/provider焦点变化根因,不读取其他窗口内容或推断用户行为。
本次只后台分析并补固定阶段审计(worker启动/关闭/取消、请求校验、SetValue调用前边界/返回、步骤与采样接收时间),不记录字段内容;限长/关联校验、诊断异常不改变结果。未改执行/焦点策略、未增加交互门槛、未再次开窗。边界事件不证明COM已进入,返回事件也不能替代独立值验证。
原始报告逐字节归档:docs/v2/evidence/windows-uia-background-2026-10-11/report.json;SHA-256 cf98150514d96a4487447f65e55d1a5b9d89b048350c4c820c857fa961a3d637。中文分析与限制见 docs/v2/UIA_SIDECAR.md、VERIFICATION.md。
验证与剩余范围
本机离线 UIA transport / Pi integration / sentinel 26/26;C#纯策略14/14;core、React、Electron类型检查通过。新增测试首次换行转义错误已修正后通过,未作为现场重试。Hosted CI 交互 GUI/UIA 均 not run,只验证构建与离线行为。
前次提交 fecb3c2 的 CI #38124809746 已 completed/success:Linux 1m17s、Windows 2m53s。后续采用用户明确批准的前台单轮验证,结果如下;不再重复同一后台定位。完整 native/Pi→OS、后台 Unicode、实际取消与剩余真实场景仍未验收。
已获准的自有 WinForms 前台 UIA 单轮通过
当前 e407daf 复用原fixture、UIA adapter/sidecar和清理机制,添加 --foreground-text-only 最小入口:仅一个可见自有target,用户手动点击Start,前台保持验证,失焦/Stop/未知即停止;等待120秒、执行20秒上限,无自动聚焦、鼠键或剪贴板降级。默认后台双窗口入口和生产 backgroundVerified=false 保持。
现场 pd1CN9:1项计划、1项首次通过,整段中文/emoji/换行/首尾及连续空格经 ValuePattern.SetValue、独立UIA inspect、fixture entry.Text oracle验证完全一致。步骤661.296ms;开始确认到清理完成864ms;总37.515秒含人工等待。重试0、脚本规划、模型调用0。28次前台采样均为target,覆盖807.843ms,最大间隔32.0795ms,不能证明采样间不存在瞬时变化。fixture已退出、lease已释放并立即回报用户。
只证明受控自有WinForms前台UIA填写成功,不证明后台/任意app/真实模型或完整Pi→OS成功。 前述后台轮次仍失败/值未知、根因未确定;取消专项not-run。不会再要求用户配合重复定位。
原始报告:docs/v2/evidence/windows-uia-foreground-2026-10-11/report.json,逐字节归档SHA-256 8624e01369868de8e1929cbdff7a8d1b60f6a2433ca8d187d4abb8154c087afa。中文说明见UIA_SIDECAR.md、VERIFICATION.md。
最终本机离线:core单元75通过/5项Linux专用跳过/0失败;入口11/11;C#构建和策略14/14;core/React/Electron类型检查通过。最终提交 e407daf 的 CI #38125654176 已 completed/success:headless-windows 156s、headless-linux 64s;Hosted CI交互GUI/UIA为not run。
产品可用性审查:授权状态与错误反馈
cd502ee 修复两个确定性产品问题:
先用回归复现两项失败,再修复。最终宿主6/6、core单元76通过/5平台专用跳过/0失败,core/React/Electron类型检查通过。仅后台离线,无新窗口、真实模型或付费调用。产品修复 CI #38126987687 已 completed/success(headless-linux: 85s, headless-windows: 122s)。
明确剩余产品缺口:普通Pi消息仍是临时只读样例+显式UIA扩展,browser/files/CLI尚需统一宿主授权配置与普通消息接线;native GUI仍是显式rehearsal入口。下一阶段应复用已有adapter,用fake transport验证跨工具任务,不默认授权任意文件/进程/profile。现有单调用firstAttempt统计不能当作任务级LLM首次准确率/补救次数。UIA撤销仅停止UIA,整任务取消走任务取消入口。真实provider/API/模型/预算未明确仅阻塞真实模型验收,不阻塞上述离线工程。
最小下一阶段产品闭环:普通聊天→读取明确授权的真实本地文本文件→模型处理→写入批准→结果文件独立读回/hash→展示路径、状态和耗时。现在可后台接入宿主工作区选择/读写范围/生产registry/批准路由/取消和指标,用fake transport验证同一生产路径,不新造固定业务脚本。实际用户文件范围仍需明确,Windows trusted-workspace不是OS沙箱。真实模型验收需provider、API兼容类型、HTTPS endpoint、modelId、会话凭据及调用/输出token/超时预算与付费同意;现有成本无可靠价格时仍unknown,不能当金额硬上限。
浏览器adapter当前还硬性限制literal-loopback:外网站点并非仅注册即可使用,需另行实现可信来源/导航和网络边界并对实际站点验收;本地串联证据不覆盖外网或普通产品会话全工具可用。
项目已按用户要求暂停(2026-10-11)
已完成代码保留在本Draft PR的 cd502ee,未合并。后续文件闭环未完成,已单独保存为本地分支 codex/wip-file-session-paused-20261011,提交 dee02d6afdd8e5b483b3ff6ae140d320b64ccb2d;未推送到本PR。WIP新增测试目前有TranscriptContext.tools类型错误,未通过最终构建,不能视作已验收功能。恢复说明在该WIP提交 docs/v2/PAUSED_WIP.md。主开发分支已恢复已验证版本。已停止新增开发,无新模型调用/前台试验/部署;恢复时应先检查WIP并重新构建,忽略目录中的编译产物可能来自未完成版本。