目录

A2H-Agent:复杂 Android 应用到 HarmonyOS 的 Coding Agent 迁移与评测系统

A2H-Agent 面向真实复杂移动应用迁移:它不是把截图一次性翻译成页面,而是以 Android 源码和运行行为为事实来源,通过结构化 Context、四阶段专职 Agent、UI 冻结、业务实现、自动修复和独立 Hypium 验证,形成 Android → HarmonyOS/ArkTS 的可审计闭环。

本仓库整理的是已有系统、benchmark 与实验结果,不包含为本次比赛新跑的实验。

核心贡献

  1. 端到端迁移 Pipeline:Setup → Requirements/Specs/Test Cases → UI Alignment → Implementation/Verification。
  2. 结构化 Context:以需求、源码锚点、业务/UI IR、fixture、coverage 与 loop ledger 约束 Agent,而非持续灌入无边界上下文。
  3. 强业务 Oracle:测试真实 CRUD、状态、持久化、数量/顺序、跨页同步及副作用,拒绝“元素存在”“未崩溃”“已保存提示”等伪 Oracle。
  4. 可执行 Benchmark:70 个 A2H-FUNCTION Spec,来自 7 个真实应用,共 301 个 canonical Hypium 方法。
  5. 多配置评测:8 个 Agent/Model 配置、560 次 Spec 运行和 2,408 个功能方法机会,并提供离线复算脚本。

系统架构

Android source / APK / optional requirement
  │
  ├─ Phase 0  Setup:干净 Harmony shell、运行状态、环境预检
  ├─ Phase 1  源码需求、原子 clauses、fixtures、test cases
  ├─ Phase 2  Android 证据、ArkUI shell、真实控件/selector 验收、UI freeze
  └─ Phase 3  业务实现、同案例 AutoTest、测试作者 Hypium、独立复核
  │
  └─ Verified HarmonyOS implementation + executable evidence

关键闭环:

Source evidence → Spec/Test Case → UI Scaffold → UI Freeze
→ Business Implementation → AutoTest Evidence → Independent Hypium
→ Gold PASS / Base BUSINESS_BEHAVIOR_MISSING

已有评测结果

指标 结果
真实应用 7
A2H-FUNCTION Specs 70
Canonical Hypium 方法 301
Agent/Model 配置 8
Spec runs 560
功能方法 PASS 583 / 2,408(24.21%)
完整 Spec PASS 50 / 560(8.93%)
最佳配置 GPT-5.6-Sol / OpenCode
最佳配置功能方法 113 / 301(37.54%)
最佳配置完整 Spec 11 / 70(15.71%)

70 个 Spec 聚集于 7 个应用(每应用 10 个),因此这些比例是固定 70-Spec × 8-configuration 矩阵的描述性汇总,不代表 70 个独立应用样本的总体成功概率。详见实验结果分析

仓库结构

  • pipeline/:完整迁移 skill、阶段契约、专职 agent 定义、脚本、模板和源码型工具。
  • benchmark/a2h/instances.jsonl:70-Spec package-relative manifest。
  • benchmark/specs/:自然语言功能规格。
  • benchmark/hypium/:可执行 Hypium evaluators。
  • benchmark/ui_bases/benchmark/gold/:7 组共享 UI Base 与参考实现快照。
  • results/:最终 machine-readable 结果和离线完整性检查。
  • docs/:项目说明书、技术报告、实验分析、PPT 与 Demo 稿。

快速离线核验

无需模型、设备或网络即可复算已发布结果:

python3 results/verify_results.py

预期输出 "status": "PASS",并显示 70 Specs、7 apps、301 methods、560 runs、583/2,408 与 50/560。该命令只校验既有结果,不执行新实验。

真实迁移需要 Android 源码、干净 HarmonyOS Empty Ability 工程、DevEco/HarmonyOS SDK、可用设备及相应运行配置。入口与阶段合同见:

  • pipeline/hmos-a2h-end-to-end/skills/hmos-a2h-end-to-end/SKILL.md
  • pipeline/hmos-a2h-end-to-end/skills/hmos-a2h-end-to-end/references/dispatcher-core-contract.md

正式提交材料与 Demo 导航

推荐按Demo 演示脚本展示:Pipeline → 一个 Spec → 对应 Hypium → Base/Gold 差分概念 → 离线结果复算。第三届官方要求视频不超过 100 MB、建议使用 MP4;该演示复用已有资产,不启动新的模型或设备实验。

证据边界

  • OpenCode/Pi 是既有 Agent framework/configuration comparison,不是受控 Context 消融。
  • 结构化 Context 是系统设计;尚无已完成的 FULL/LEXICAL/BROAD 因果消融结果。
  • 不声称从源应用恢复完整需求;正式纳入任务采用 precision-first、source-grounded 思路。
  • iOS→HarmonyOS 尚未形成可发布数据。

完整说明见局限性与证据边界原创与第三方说明

关于
16.0 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号