Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .pilot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# .pilot.yml — pilot 各阶段读它取分支/清理策略。
# 注意:本仓库没有 preview 分支,历史上所有 PR 都直接合进 master(#433–#449 皆是)。
# 所以 integration_branch 如实写 master —— 写 preview 会让 git-guard.sh merge-pr 拒绝一切合并。
# 硬约束「不直推主干」依然生效:走 feature 分支 → PR → review → git-guard.sh merge-pr。

base_branch: master
integration_branch: master
protect_patterns:
- release
- hotfix
- "7702" # EIP-7702 独立实验分支,不参与主线,永不清理
remote: origin
allow_remote_cleanup: false
docs_dir: docs/agent
70 changes: 70 additions & 0 deletions docs/agent/progress.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# YetAnotherAA 实时状态 — progress

> 「此刻仓库真实发生了什么」。由 `pilot run` 每一步更新。更新时间:2026-08-02
> 00:55

## 当前聚焦

- **Milestone**:M1 Beta 上线(Sepolia)
- **Feature**:F1.2 高优负向用例 / F1.4 转账 UX 抢救项
- **正在开发的 Task**:无(刚完成 `pilot plan`,等 `pilot run` 挑第一个 READY)
- **分支 / worktree**:`master`(干净,无额外 worktree)
- **PR**:无进行中的自有 PR

## 仓库基线(2026-08-02)

- 集成分支 = `master`(本仓库无 `preview`,所有 PR 直接合 master —— 已如实写进
`.pilot.yml`)
- 本地分支 3 条:`master` / `refactor/pure-frontend`(PR #400 draft)/
`7702`(实验,保护不清理)
- pre-commit hook ✅ 生效于 `.git/hooks`
- PR 评审 daemon ✅ 在线

## 进行中 / 待回执的 PR

| Task | PR | 状态 | 备注 |
| :----- | :--------------------------------------------------------------- | :------ | :------------------------------------------------------------- |
| T3.2.1 | [#400](https://github.com/AAStarCommunity/YetAnotherAA/pull/400) | BLOCKED | draft,自标 WIP·PAUSED,卡在 API-key/KMS-Origin 基建(T3.1.1) |

## 阻塞项(BLOCKED)

- **T1.1.6 KMS 双板 HA**:硬件依赖,等二号 imx93 到货。**待决**:YAA 侧配双 KMS
endpoint 故障转移,还是由上游 KMS 做 VIP?
- **T1.2.4 Guard 真机复现**:需要真机 Face ID/Touch
ID,CDP 虚拟认证器覆盖不到。**待决**:是否接受 CDP 降级验证?
- **T2.6.1 主网冒烟**:真实资金 + 发布闸门,必须最后做。**待决**:主网测试账户与预算上限由谁定?
- **T3.1.1
API-key 授权模型**:当前写不出可机器验证的验收命令 → 保持 BACKLOG,不许直接转 READY
- **T3.2.1 纯前端迁移**:依赖 T3.1.1。**待决**:beta 要不要一次性导入既有后端数据到 localStorage,还是从零开始?
- **T3.5.1 executeRecovery
TOCTOU(#447)**:需合约侧原子接口配合。**待决**:等合约,还是 YAA 侧接受窗口 + 加监控?

## 最近完成

- 2026-08-01 PR [#449](https://github.com/AAStarCommunity/YetAnotherAA/pull/449)
合并进 master(`1d77b19`,squash)——
guardian 恢复后的 DB 写入按爆炸半径排序(#446)
- 2026-08-02 `pilot plan` 建立三级规划:`roadmap.md` / `tasks.md` /
`progress.md` + `.pilot.yml`
- 2026-08-02
**陈旧分支清理**(用户拍板:抢救特性、废弃分支)。删除前均已打归档 tag,代码可取回:

| 已删分支 | 归档 tag | 处置 |
| :----------------------------- | :---------------------------- | :---------------------------------- |
| `feat/registry-portal-sdk` | `archive/registry-portal-sdk` | 特性抢救为 T1.4.1 / T1.4.2 |
| `fix/portal-review-269` | `archive/portal-review-269` | 同上(门户主体已由 #269 进 master) |
| `feat/tier3b-raise-limit` | `archive/tier3b-raise-limit` | 已被 PR #390 取代,无需抢救 |
| `test/stage-1b-l1-more` | `archive/stage-1b-l1-more` | 同类用例已由 #415 落地 |
| `fix/446-recovery-write-order` | —(内容已全进 master) | 直接删除 |

## 下一个 READY

按优先级排序,`pilot run` 应从这里挑:

1. **T1.2.1** 解冻并跑通 transfer-replay e2e(high)—— 依赖的 create-flow
bug 已闭合,spec 的 BLOCKED 注释已过期
2. **T1.2.2** JWT 401 鉴权负向用例(high)
3. **T1.3.1** 未验证能力 UI 标 experimental(high)
4. **T1.1.5** 把已闭合的 beta 阻塞项回写进评估文档(mid)
5. **T1.4.1** AA26 智能 gas 估算 + 自动重试(mid,**涉钱**:必须设 gas 硬上限)
6. **T1.4.2** 最近收款人下拉(low)
84 changes: 84 additions & 0 deletions docs/agent/roadmap.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# YetAnotherAA Roadmap — Milestone → Feature

> - 「未来要做什么」。具体怎么做 + 验收见 [`tasks.md`](tasks.md);此刻在做什么见
> [`progress.md`](progress.md)。
> - 编号:`M<里程碑>` → `F<里程碑>.<序号>`
> - 记录日期:2026-08-02
>
> **来源**:本 roadmap 不是新造的,是把仓库既有规划转成三级结构:
>
> - 里程碑划分 =
> [`../BETA_READINESS_ASSESSMENT.md`](../BETA_READINESS_ASSESSMENT.md)
> §5 三阶段计划
> - Feature/Task 素材 = 同文档 §4 must-do +
> [`../LAUNCH_READINESS_PLAN.md`](../LAUNCH_READINESS_PLAN.md) 五步 + open
> issues (#447/#382/#378) + 在途分支盘点
> - 每条状态都对着 master 的**代码**核过,不是照抄 7 月的文档结论(详见 tasks.md 各 Task 的「证据」)

---

## M1 — Beta 上线(Sepolia,二号 imx93 到位后)

目标:把**已被链上证据支撑的核心路径**(passkey 注册 → 建号 → gasless Tier
1/2/3 转账 → 买入 aPNTs/GToken)作为 beta 范围发出去;范围外的能力显式标 experimental,不假装可用。

- **F1.1 Beta 阻塞项收口** — `BETA_READINESS_ASSESSMENT` §4
must-do 清单里**尚未闭合**的那几条(多数已在 7 月后落地,见 tasks.md 核查结论)
- **F1.2 高优负向用例** — 重放拒绝、JWT
401、余额不足、passkey 取消:每条断言「被正确拒绝」而非静默通过
- **F1.3 Beta 范围闸门** — recovery / operator
/ 多 EntryPoint 在 UI 上显式标 experimental 或禁用,避免用户踩未验证路径
- **F1.4 转账 UX 抢救项** — 从被废弃的 `feat/registry-portal-sdk`
抢救出来的两个未落地改进(AA26 智能 gas 估算+自动重试、最近收款人下拉),在当前 master 上重写
- **F1.5 KMS 单点消除** — 二号 imx93 到位后的双板 HA(硬件依赖,非本仓库代码)

## M2 — OP 主网发布(beta 期约一个月后)

目标:beta 跑满一个月、负向矩阵补全、运营者链路闭环之后,发布主网版本;发布前做小额真实资金冒烟。

- **F2.1 运营者准入闭环** — `operator-onboarding.spec.ts` 卡在 Step5 的
`deployAndRegisterPaymasterV4` revert;查因 → 补 Step5–7(Paymaster 部署 +
EntryPoint 充值 + Complete)
- **F2.2 完整负向/异常矩阵** — `LAUNCH_READINESS_PLAN.md`
步骤 5 的 D1–D5 全表(L1 链上 / L2 API / L3 Playwright)
- **F2.3 Guardian 协签 UX 闭环** — issue
#382:提额(#3b) 已落地,转账 Tier-3 协签(#3a) 待补
- **F2.4 多 EntryPoint 覆盖** — 目前只验过 v0.7;v0.6 / v0.8 未测
- **F2.5 前端单测** — 至少覆盖 transfer / auth 关键路径(目前前端零测试)
- **F2.6 主网冒烟** — gasless 转账 +
gasless 买入各一笔,小额,证据归档;**全部前项通过后才做**

## M3 — 基建加固(与 M1/M2 并行推进)

目标:把 beta/主网依赖的基础设施从「单点 + 手工」变成「冗余 + 可观测」,并解锁被基建卡住的纯前端迁移。

- **F3.1 API-key 模型 / KMS Origin**
— 浏览器直连 bundler+KMS 的授权模型;这是 F3.2 的硬前置
- **F3.2 纯前端零后端迁移** — PR
#400(draft,自标 WIP·PAUSED)解冻;含 localStorage 存储类的数据迁移决策
- **F3.3 依赖存量监控** — bundler / paymaster / EntryPoint
deposit 余额告警,DVT 节点存活
- **F3.4 发布物安全检查** — 浏览器 bundle 密钥泄漏扫描(DoD #8)
- **F3.5 已知安全缺口跟踪** — issue #447(executeRecovery
TOCTOU 窗口,已知、当前不可闭合)的收敛条件与再评估

## M4 — cos72 多社区演进(只到 Feature 层,暂不拆 Task)

目标:从「单站点 YAA」演进到「小社区可自助拥有的协作站点」。
**方向仍在收敛,故本里程碑刻意不拆 Task** —— 避免 `pilot run`
在产品方向未定时抢跑。真要开工前需先补 `research.md` + `acceptance.md`。

- **F4.1 配置即部署** — 一份配置驱动一个社区站点的产出(skill 化)
- **F4.2 多租户子域插件** — no-code 小社区 + 可评估的 Chrome 插件形态
- **F4.3 create-app 模版** — 已有 `create-cos72-dapp` /
Cos72 雏形,需收敛成正式模版
- **F4.4 可嵌入 SDK** — JS 引用 + React 组件两种嵌入形态
- **F4.5 移动端与 FangPay** — 终点形态,依赖 F4.1–F4.4

> 注:M4 的多数实现落在独立仓库(`cos72-tour` /
> `create-cos72-dapp`)。本 roadmap 只记录 YAA 侧需要暴露的能力与边界。

---

> **当前聚焦**:M1 / F1.2 + F1.4。M4 只到 Feature 层,`pilot run`
> 不应从 M4 挑 Task。每个 Feature 的 Task 拆分与状态见 [`tasks.md`](tasks.md)。
Loading
Loading