| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat: 工作状态接入长时任务 —— entry.mjs 解析 agent 帧(kind) → JSBind 调 ArkTS setBusy - turn-completed → idle;tool-started/tool-scheduled → busy;60s 静默兜底 - 通过 Electron 适配层已有的 JSBind(kMainProcess) 通道,无需额外 IPC - BackgroundKeepAliveAdapter:恢复 busy && 后台 才申请 TASK_KEEPING - LogUtil:BgKeepAlive 日志也落盘,便于验证 | 5 天前 | |
feat: 终端可用(node-pty OHOS 产物 + 无 pty 环境管道退化 shim);构建期补丁命中报告 终端部分 - 现象: node-pty is unavailable ... Cannot find module './prebuilds/openharmony-arm64/pty.node' - 自编 node-pty 1.1.0 unix 产物(native/node-pty-ohos/):OHOS clang + electron-napi-library + libshim,**静态链接 libc++**(动态依赖 libc++_shared.so 会 ERR_DLOPEN_FAILED—— 引擎自身库都只 NEEDED libc.so),注册改为导出 napi_register_module_v1 符号 - 投放遵循引擎的 .node 重写规则(取「node_modules 之后那段」到 NODE_PATH 下的 libs/arm64):resfile 常规位置 + electron/libs/arm64-v8a/node-pty/prebuilds/openharmony-arm64/ - 设备沙箱禁 pty:addon 探针实测 main/host 均 openpty=fail(errno=13 EACCES), 连 shell 用户 exec 3<>/dev/ptmx 也 Permission denied,SDK 无 pty API - 新增 pty-shim.mjs 顶替 host 的 import("node-pty"):优先真 pty(将来设备放开即自动启用), 否则退化为「管道 + 子进程 + 本地行编辑」;输出统一规范为 CRLF(管道无 ONLCR, 裸 LF 在 xterm.js 呈"阶梯"错位),并过滤 -i 无 tty 的两行 shell 警告 - addon 追加 probePty()/probeExec() 诊断(wrapper.mjs 启动打印),用于判断终端为何不可用; exec 探针同时推翻旧结论:"utility 被 seccomp 禁 execve" 实为 HNP 路径权限问题 构建期补丁报告 - prepare-resfile 为每个补丁登记命中数,构建末尾输出 ── patch report ──: [OK]/[OK*]/[SKIP]/[MISS],未命中的必需补丁集中告警并给出「未命中后果」 - 报告立刻查出 getAppMetrics 守卫补丁从未命中(锚点绑旧压缩变量名)→ 改为按 .memory.workingSetSize / .cpu.percentCPUUsage 匹配并标为可选 - emitter-key 探针改为 env 门控(ZCODE_DIAG_EMITTER_KEY=1)并修正为真正写盘 - 告警链路做了自检(临时插入故意不命中的补丁验证告警输出) 验证 - 终端: create OK、echo/uname/pwd 输出正确、提示符正常、bareLf=0/crlf=6;用户实测可用 - 补丁报告: 干净构建全部必需补丁 [OK] | 28 天前 | |
feat: 升级 ZCode 3.16.2(补丁锚点 node: 前缀 + adapter exports 形态 + addon 补 StatementSync.iterate/setReadBigInts) - 3.16.2 导入统一带 node: 前缀:glob(main)/spawn-wrapper(host) 正则接受 (?:node:)?;host glob 已不导入→转可选 - sqlite-adapter 改 exports.X 逐项导出(cjs-module-lexer 只认对象字面量第一项,否则 ESM 具名导入 SyntaxError)+ 补 backup(VACUUM INTO) - 启动迁移 snapshotTable 依赖 setReadBigInts()+iterate() → 原生 addon 实现并重编 libshim 变体(启动失败 sql_failed 的真因) - entry.mjs 加启动诊断:ZCODE_MAIN_OK/FAIL + APPLOG 落盘 ~/.zcode/v2/logs - 同步 3.16.2 的 provider 配置;实测启动/agent/单实例均正常 | 15 天前 | |
feat(cua): 电脑控制在平板上端到端可用(hdc 纯 JS 客户端 + 悬浮横幅 + 授权/性能修复) hdc: - 纯 JS 客户端 scripts/hdc-js.mjs(握手/认证/shell),插件内随 helper 分发 - 认证按真 hdc 轮询:PUBLICKEY → emgmsg 等待 → SIGNATURE(token) → OK;主机名固定 ZCode - helper 只在本进程可写目录取密钥(cache/hdc-js-key.pem),查到 pid 缓存 60s, "是否在运行"以无障碍树里有无窗口为准(pidof 假阴性曾导致每次点击前空转 12s) - 设备未授权后台轮询等待,只有端口连不上才 exit 3 让应用重问端口 helper: - capture_app:绑定即拉起、冷启动等首屏、截图与组件树并行(两条 hdc 连接)、 600ms 组件树缓存;window.bounds 统一到截图坐标系 - 组件树改为分块 base64 读取(一次性 base64 在 500KB 树上会被截断) - 新增 type_text_to_app / press_key_to_app / element_at_point / element_set_value (坐标合成 token,命中测试可通过,set_value 先退格清空) - stale_frame 守卫:动作前比对窗口范围,变化则要求重新观察 - 网页/XComponent 内容如实标注 empty_capture_reason=ohos-web-content 横幅: - 独立 CuaBannerServer + TYPE_FLOAT 悬浮窗(ArkTS),空闲 8s 收起、controller_stop 立即收起 构建期补丁(prepare-resfile): - node-repl-host 补丁改为同时支持带版本与扁平布局(此前从未生效) - invoke() opts 默认值、纯 JS 截图头解析、web-content 指引文案 其它:cua-port 端口弹窗、fork 中继回退、uxsock 路径重写、cua-app 应用管理 CLI | 4 天前 | |
docs(runlog): adb 测试结论——usb_linux 后端在本域 SIGSEGV(与本层无关);shim 补 BOS 符号 | 6 天前 | |
chore: 清理死代码——删除失效的 Node 侧 usb_fd_broker、未用的 transport()/宏/变量,补 shim 前置声明 | 6 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 5 天前 | ||
| 28 天前 | ||
| 15 天前 | ||
| 4 天前 | ||
| 6 天前 | ||
| 6 天前 |