feat(plugins): prepare isolated Rust 3 preview market

This commit is contained in:
chenmingxuan committed 2026-11-01 17:58:26 +08:00
1 parent 987b5ff2d8
commit 5d14bcffbc
22 files changed
+1612 -583

No files matched your search

+6 -10
View File
@@ -1,15 +1,11 @@
# 构建 0.38.0+artemis.1
# 构建 0.38.0+artemis.2
开发机需要 Python、Go、上游固定的 Rust 工具链、Windows C++ x64 工具链及对应 Spectre 运行库。用户安装插件 ZIP 不需要这些工具。不会运行 Cua 全局安装器。
本修订只调整 ARTEMIS 3.x 兼容声明与桥接握手版本,使用 `scripts/package_rust3_compat.py`。构建机需要 Python 3.12+ 标准库、官方 Windows amd64 便携 Go,以及已校验的 `.1` 插件 ZIP;最终用户无需这些开发工具。完整命令见仓库 `docs/rust3-compatibility.md`。
1. 获取官方 `cua-driver-rs-v0.38.0` 源码,核对 HEAD 为 `85e2b1318bd77ccf3cfa88ccdf875a4bb7eaed19`。保留完整源码;稀疏检出至少包括 `libs/cua-driver/rust`、`libs/cua`、`libs/images/sandbox-images.json`。
2. 在上游源码根目录应用本插件的 `patches/cua-driver-0.38.0-untitled-shell.patch`。补丁只修改 Windows 精确窗口解析,不放宽普通窗口发现。
3. 下载官方 Windows x64 ZIP。在具备上述编译依赖的终端,从 Artemis-Plugins 根目录执行:
打包器核对已发布 `0.38.0+artemis.1` ZIP SHA256 为 `c007da16d58c4165a1a344113e650e68bd92a69ad3ce4ca8285818c5426dc0f4`,逐文件比较桥接源码、工具与补丁,仅允许版本常量变化。Driver、UIA helper、SDK DLL 和游标工具直接保留已发布字节;不运行 Cargo、不重新构建或下载底层驱动。
```sh
python scripts/build_cua_driver.py <官方ZIP> --upstream-source <上游源码根目录> --go <Go可执行文件>
```
Go 在独立缓存内运行测试、vet,并以 `CGO_ENABLED=0`、`-trimpath`、`-buildvcs=false` 构建新桥接程序。清单、包名、MCP 握手和来源记录统一为 `.2`。原 MIT 许可与 Go 标准库 BSD 许可随包保留。ZIP 条目使用固定顺序、时间与权限,拒绝覆盖既有候选。
构建脚本校验官方 ZIP SHA256、上游 HEAD、唯一修改文件与补丁内容,使用 `cargo build --release --locked` 重新构建 Driver、UIA helper 和 SDK DLL,再运行 Go 测试并构建适配器。仅游标主题工具沿用官方原包二进制。
`provenance.json` 保留固定上游 `85e2b1318bd77ccf3cfa88ccdf875a4bb7eaed19`、官方 ZIP SHA256 和原兼容补丁信息,再记录复用包/二进制、新桥和源码树摘要。未提交源码明确标记 dirty,不能当作已经固定的新提交。`scripts/build_cua_driver.py` 仍是完整上游重建入口,本轮没有运行它。
`provenance.json` 区分官方 ZIP 来源、兼容补丁及重新构建文件,记录各自 SHA256。打包后先运行确定性测试及授权的隔离窗口回归,再安装到本机或发布。市场索引与发布附件需另行更新,不由构建脚本自动修改。
打包与 ZIP 回读不代表 Rust 宿主联调完成;当前范围见 [VERIFICATION.md](VERIFICATION.md)。不自动安装、授权、推送或发布。
+7 -1
View File
@@ -1,4 +1,10 @@
# Cua 电脑控制 0.38.0+artemis.1
# Cua 电脑控制 0.38.0+artemis.2(3.0 候选)
2026-11-01:新增 ARTEMIS `>=3.0.0,<4.0.0` 专用不可变包。适配器仅更新版本常量,清单/MCP 握手统一为 `.2`;工具、窗口身份、坐标、焦点、回执和子进程行为保持 `.1` 实现。Driver、UIA、SDK DLL 和游标工具原样复用已校验的 `.1` 发行文件,不声称本次重新编译底层 Rust 运行库。来源细节见 `provenance.json` 与 [BUILD.md](BUILD.md)。
用户运行插件不需要 Python、Go、Rust 或 Node。现有 Windows x64、`desktop:local` 与 computer/mixed 范围不变;保留原许可和录制能力声明,但本轮不扩展或测试录像。旧 `.1` 包、发行附件及旧索引 `<3.0.0` 限制保留。新 `catalog-v5.json` 是待发布输入,实际宿主联调由主项目统一验证,不将以下 2.x 记录当作本次 3.0 结果。
## 固定运行库的历史来源:0.38.0+artemis.1
2026-10-27,与 ARTEMIS 2.2.0 配套发布。同步官方 [Cua Driver 0.38.0](https://github.com/trycua/cua/releases/tag/cua-driver-rs-v0.38.0),替换原 0.36.0 驱动。插件仍为 Windows x64 开发预览。既有任务与旧安装包保留原版本,主程序升级不会自动更新或授权插件;当前任务结束后在插件市场单独更新。
+8
View File
@@ -1,5 +1,13 @@
# Cua 验证记录
## 0.38.0+artemis.2 / ARTEMIS 3.x 候选(2026-11-01)
仅变更宿主版本约束与 Go 桥接版本常量,工具定义和动作实现保留。打包器要求 Go test/vet/build 成功,核对 `.1` 原包 SHA256、源码差异、固定运行库与兼容补丁,再逐条回读最终 ZIP;实际执行凭据见候选目录 `build-receipt.json`。底层 Driver/UIA/SDK/游标工具复用已发布字节,没有在本轮重新构建。
本次没有运行 Rust 宿主握手/发现、真实截图/动作、页面、设备、录像、业务或性能测试。3.0 安装、授权与正常任务联调由主项目统一验证,用户在功能完成后集中验收页面。候选没有推送或发布。
以下为旧宿主和旧插件的历史记录,只说明复用实现的来源,不作为 3.0 测试结果。
## 0.38.0+artemis.1 发布核对(2026-10-27)
重新执行 Go 测试、vet 和构建,核对最终包内源码、兼容补丁及运行库 SHA256。10 月 26 日主程序集中回归中,此插件参与仅 PC 输入、双击、清空和两轮 PC 到 Android 的校验码传递,均有两端独立证据;该组正式任务共 9 项通过,另有准备探索超出指定页面范围而失败,未计入通过数。模型统一 gpt-6-luna/high,未将历史 OCU 对照性能数据作为此次发行性能结论。
+1 -1
View File
@@ -25,7 +25,7 @@ import (
//go:embed tools.json
var toolsJSON []byte
const adapterVersion = "0.38.0+artemis.1"
const adapterVersion = "0.38.0+artemis.2"
type obj = map[string]any
type request struct {
+2 -2
View File
@@ -2,9 +2,9 @@
"schema_version": 2,
"id": "cua-driver",
"name": "电脑控制 · Cua",
"version": "0.38.0+artemis.1",
"version": "0.38.0+artemis.2",
"description": "通过 Cua Driver 的窗口截图与可访问性树操作 Windows 应用及浏览器窗口;复用 ARTEMIS 的任务调度、步骤证据与录像。",
"artemis_version": ">=2.0.0,<3.0.0",
"artemis_version": ">=3.0.0,<4.0.0",
"platforms": [
"win32"
],