Skip to content

Latest commit

 

History

History
146 lines (121 loc) · 13.8 KB

File metadata and controls

146 lines (121 loc) · 13.8 KB

Agent-RPA 开发路线图(SDD 驱动)

本路线图把蓝图拆分为可独立提案、可独立实现的 OpenSpec 变更(change),并给出依赖 DAG阶段。每个 change 是一个内聚的功能切片,产出 proposal → specs → design → tasks 四件套,位于 openspec/changes/<change-id>/

进度快照(2026-07-12):M0 的四份基础契约已归档;M1 的控制面、契约与 fake BrowserNode 闭环已归档,真实 Chrome/T2 全链仍是发布 gate;M2 的多模态、定位与分级自愈已完成集成级场景验证,其中部分认知与驱动使用 stub/fake;M3 控制面已归档,T0/T1/T3 真实驱动仍待实现;M4 orchestration-governance 已归档,batch-parameter-template 待实现;M5–M6 的三个 change 待实现。四个活动 change 均通过 openspec validate --strict


拆分原则

  1. 契约先行BrowserNode、Cognition Port、技能包 schema 三份契约是所有实现的地基(守蓝图 I-1/I-6),必须最先冻结。
  2. 分级验证蓝图:M1 先以 BrowserNode 契约级 e2e 验证“探索→结晶→0 Token 影子回放”;真实 Chrome/T2 全链、目标站点与抗检测表现作为独立发布 gate。
  3. 一个 change 一个能力边界:每个 change 对应 1–N 个 kebab-case capability,边界清晰、可并发实现。
  4. 不变量守护贯穿:每个 change 的 tasks.md 必须把相关不变量(I-1..I-6)转为可验证任务。

变更依赖 DAG

flowchart TB
    subgraph M0["M0 · 骨架与契约(地基)"]
        A1["bootstrap-praxisd-skeleton"]
        A2["browsernode-contract"]
        A3["cognition-port-contract"]
        A4["skill-package-schema"]
    end
    subgraph M1["M1 · 高强度闭环(首个垂直切片)"]
        B1["browser-runtime-lifecycle"]
        B2["transport-driver-cdp-t2"]
        B3["explore-record-crystallize"]
        B4["replay-interpreter-zero-token"]
    end
    subgraph M2["M2 · 自愈与韧性"]
        C1["multimodal-sensing"]
        C2["locator-repository"]
        C3["self-heal-tiered"]
    end
    subgraph M3["M3 · 隐身阶梯完备"]
        D1["behavior-synthesis"]
        D2["fingerprint-coherence"]
        D3["stealth-ladder-tiers"]
    end
    subgraph M4["M4 · 编排治理与批量"]
        E1["orchestration-governance"]
        E2["batch-parameter-template"]
    end
    subgraph M5["M5 · Agent 接口与驱动可插拔"]
        F1["mcp-agent-interface"]
        F2["agent-driver-adapters"]
    end
    subgraph M6["M6 · 服务化(可选)"]
        G1["service-mode-multinode"]
    end

    A2 --> B1
    A2 --> B2
    A1 --> B1
    A4 --> B3
    A3 --> B3
    A2 --> B3
    A4 --> B4
    B1 --> B4

    A2 --> C1
    A4 --> C2
    B4 --> C3
    C1 --> C3
    C2 --> C3
    A3 --> C3

    A2 --> D1
    B1 --> D2
    B2 --> D3
    D1 --> D3
    D2 --> D3

    A1 --> E1
    B4 --> E1
    B4 --> E2
    A4 --> E2
    E1 --> E2

    B3 --> F1
    B4 --> F1
    E2 --> F1
    A3 --> F2
    C3 --> F2

    E1 --> G1
    F1 --> G1
Loading

变更清单

阶段 change-id 主要 capability 依赖 蓝图出处 状态
M0 bootstrap-praxisd-skeleton daemon-runtime, config 01/05 ✅ 已实现并归档(2026-07-11)
M0 browsernode-contract browsernode-contract 04 §4 ✅ 已实现并归档(2026-07-11)
M0 cognition-port-contract cognition-port, agent-adapter-contract 10 ✅ 已实现并归档(2026-07-11)
M0 skill-package-schema skill-package, skill-registry 07 ✅ 已实现并归档(2026-07-11)
M1 browser-runtime-lifecycle browser-lifecycle, session-pool, profile browsernode-contract, bootstrap 04 ✅ 已实现并归档(2026-07-11,27/27 任务)
M1 transport-driver-cdp-t2 driver-cdp, stealth-selfcheck browsernode-contract 03/04 ✅ 已实现并归档(2026-07-11,33/33 任务)
M1 explore-record-crystallize explore, recorder, crystallizer skill-package-schema, cognition-port, browsernode-contract 02 §2-3 ✅ 已实现并归档(2026-07-11,34/35 任务)
M1 replay-interpreter-zero-token replay-interpreter, shadow-replay skill-package-schema, browser-runtime-lifecycle 02 §4 ✅ 已实现并归档(2026-07-11,26/26 任务;internal/interpreter/ + shadow/ 门禁 + SC1/SC2 e2e)
M2 multimodal-sensing multimodal-sensing;modified:browsernode-contract(SnapshotRequest 通道选择 + NetworkSignal 细化)、cognition-port(Candidate.bbox) browsernode-contract, cognition-port;驱动侧采集实施 gate:transport-driver-cdp-t2(已满足) 12 ✅ 已实现并归档(2026-07-11,30/30 任务;internal/sensing/ + driver-cdp 通道选择/局部 OCR/DOM 展平/网络信号 + SC11 采集侧集成验证)
M2 locator-repository locator-repository skill-package-schema, skill-registry(复用 SQLite) 03 §6 ✅ 已实现并归档(2026-07-11,24/24 任务;internal/locator/ 三方映射/重排/索引/计划构造 + I-4/I-6 静态与运行时双守护)
M2 self-heal-tiered self-heal replay-interpreter, locator-repository, cognition-port, multimodal-sensing 02 §5 ✅ 已实现并归档(2026-07-11,31/31 任务;internal/selfheal/ 分级协调器 L1/L2/L3 + patch 事务应用 + 回写升版/状态处置 + 护栏计量 + SC7 三级自愈 e2e,I-2/I-4/I-5/I-6 守护齐备)
M3 behavior-synthesis behavior-synthesis browsernode-contract 03 §5 ✅ 已实现并归档(2026-07-11,27/27 任务;internal/behavior/ 控制面派生/采样/dwell/自检 + 注入工厂,driver-cdp BiomechanicalSampler(Bezier/Fitts/lognormal/惯性)+ 可切换注入器(OS 级/CDP 诚实降级),0 modified capability,I-1/I-2/I-3/I-4/I-5 守护齐备)
M3 fingerprint-coherence fingerprint-coherence;modified:browsernode-contractLaunchSessionRequest 追加可选 FingerprintSpec browser-runtime-lifecycle 03 §4 ✅ 已实现并归档(2026-07-11,29/29 任务;internal/fingerprint/ 关系型派生 DAG(OS 家族单源→UA/UA-CH/WebGL/canvas·audio 噪声/screen/字体/地理)、sub-seed 命名空间(D9)、地理校正/GeoMismatch、自洽判据;browsernode.proto 追加可选 FingerprintSpec(14 方法不变、I-5 无机密);internal/transport 启动适配点 BuildLaunchRequest + M0 fake 契约用例;driver-cdp 消费派生指纹注入/自检(真实 Chrome e2e gate);兑现 profile/stealth-selfcheck 既有委托、三切片零改动,I-1/I-3/I-5 守护齐备)
M3 stealth-ladder-tiers stealth-ladder, tier-selection, site-memory transport-driver-cdp-t2, behavior-synthesis, fingerprint-coherence 03 §1-3 ✅ 已实现并归档(2026-07-12,控制面切片全绿;0 modified)——internal/stealth/ 档位规格(T0-T3 Capabilities/组合规则/诚实边界)+ 闸门探针确定性 gate 分类 + 最小够用档选择 + 被拦升档状态机(换会话,严格单调)+ 硬挑战 onEscalation 升级人工 + site-memory 升级记忆/定期重探针(复用 SITE_MEMORY 不改 schema);Tier.Compatible 降档兼容细化(接口内,session-pool 暖复用降档复用);T0/T1/T3 fake 驱动过同套契约测试(I-1 四档可替换)+ T3 %vault/GeoMismatch;选档接入 internal/transport 请求入口(AcquireForRequest,未接入回落显式档位)+ 组合规则接真实 fingerprint-coherence 派生;I-1/I-3/I-4/I-5/I-6 守护齐备。实施 gate 待解:T0/T1/T3 真实驱动子进程(5.3)、orchestration-governance(M4)的 Run NeedsHuman 审批回环/SITE_MEMORY 数据面单源(5.4/5.5)——升级事件先经 cognition human fallback 兜底,真实驱动/e2e 就绪后经 BrowserNode 契约注入、控制面零改动。
M4 orchestration-governance orchestrator, run-model, policy, vault, observability;modified:config(注册 orchestrator/policy/observability 顶层段) bootstrap, replay-interpreter 05 ✅ 已实现并归档(2026-07-12,37/37 任务)——internal/runmodel/ Run 记录/状态机(Queued→Admitted|Rejected→Running→Healing|NeedsHuman→Succeeded|Failed)+ RUN/HEAL_EVENT/ESCALATION 持久化(接管 self-heal 让渡,复用 registry SQLite 自有迁移)+ trust_score 数据面 + 崩溃恢复检查点;internal/orchestrator/ Run Manager(准入→会话→0 Token 回放→终态,编排零 Cognition)+ 崩溃恢复续跑(SC5)+ Scheduler 四类触发 + Work Queue(业务键幂等/指数退避/身份分片)+ 审批回环(Approve/Reject + ESCALATION 处置回写);internal/policy/ Site Policy 按域模型 + 准入门(速率/禁行区/高风险许可/预算/并发,结构化拒绝原因)+ session-pool 护栏权威(GuardrailFor);internal/vault/ AES-256-GCM 加密静态存储(主密钥 PRAXIS_VAULT_KEY 进程外注入)+ Secret Broker 实现 interpreter.VaultResolver + Redactor 出口脱敏 + TOTP 托管(pquerna/otp,硬挑战一律升级人工);internal/observability/ Run Store 留痕 + token_cost=0 守门告警(I-4 守门员)+ 自愈频发/升档告警 + 审批可见性 + trust_score 计算(经 registry.SetTrustScore)+ artifact 治理(URI 契约不变);config 注册三治理段(宽松透传,observability 段强类型校验启动期快速失败);daemon 装配层占位全部替换(共库装配、端口适配器桥接、orchestrator.Start 崩溃恢复)。I-4 静态/运行时双守护、I-5 脱敏否定用例、I-6 无认知闭环、SC5/SC8、契约闭环、存储可移植、回滚验证共 5 个 governance_* 不变量测试文件齐备。实施 gate 待解:真实回放适配(ReplayRunner 占位待传输驱动装配)、policy ConcurrencyView 接 session-pool 真实计数、持久化 DSN 配置化。
M4 batch-parameter-template parameter-template, batch-execution replay-interpreter, skill-package-schema, orchestration-governance 11 📝 已提案(2026-07-11,validate --strict 通过,38 任务;0 modified,消费 orchestration 工作队列/Run,模板生成→批量 0 Token→汇聚导出)
M5 mcp-agent-interface mcp-server, agent-tools;modified:cognition-port(骨架桩落地为完整工具面)、skill-registry(追加只读枚举) explore-record-crystallize, replay-interpreter, batch 06 📝 已提案(2026-07-11,validate --strict 通过,34 任务;inbound MCP 高/低层工具 + 真实会话表使 attached 路由生效)
M5 agent-driver-adapters agent-adapters cognition-port-contract, self-heal-tiered 10 §5 📝 已提案(2026-07-11,validate --strict 通过,30 任务;0 modified,Cursor/Codex/Claude/openclaw/通用 outbound 适配器 + 契约测试可替换)
M6 service-mode-multinode service-mode;modified:browsernode-contract(承载放宽 mTLS+TCP)、config(注册 service 段) orchestration-governance, mcp-agent-interface 05 §8 📝 已提案(2026-07-11,validate --strict 通过,28 任务;可选服务化,接口/schema 不变仅换承载与存储,形状一致节点准入门守 R7)

证据口径:表中的“已实现并归档”表示 change 的主体实现、规格合并和仓库内门禁完成,不自动等价于生产 e2e。explore-record-crystallize 保留 1 个真实浏览器 gate(34/35);stealth-ladder-tiers 保留 T0/T1/T3 真实驱动与数据面接线 gate。praxisd 当前仍使用 NoTransportDialer/noDriverReplay 占位,因此任何真实站点、真实 Chrome 或抗检测结论必须另附运行证据。


里程碑验收(对齐蓝图成功标准)

里程碑 完成即验证 蓝图 SC
M0 三份契约冻结 + 骨架可起停;契约测试通过(守 I-1/I-6) 架构就绪
M1 fake BrowserNode + bufconn 的契约级 explore→crystallize→shadow replay(0 Token)已通过;真实 Chrome/T2 未验收 SC1/SC2 契约级
M2 fake BrowserNode 与 stub healer 的分级自愈场景已通过;真实复杂页面全链未验收 SC7/SC11 集成级
M3 选档、行为与指纹控制面已验证;T0/T1/T3 真实驱动仍是 gate SC3/SC4 控制面
M4 生命周期/恢复、护栏/审批控制面已验证;参数模板→批量 0 Token 待 batch-parameter-template SC5/SC8;SC10 待完成
M5 本 AI 经 MCP 跑通探索/回放/批量;多 Agent 驱动 outbound 自愈 SC6/SC9
M6 多形状一致执行节点服务化 服务化

建议实现顺序

  1. M0 四个契约并行提案与实现 → 冻结契约。✅ 已完成并归档(2026-07-11)。
  2. M1 垂直切片:四个 change 已归档;test/e2e/replay_gate_test.go 在 fake BrowserNode + bufconn 上验证了探索→结晶→影子回放门禁与 token_cost=0,真实 Chrome/T2 全链仍是发布 gate。
  3. M2 控制面与集成场景完成multimodal-sensinglocator-repositoryself-heal-tiered 已归档。test/integration/selfheal_sc7_test.go 使用 fake BrowserNode,L2/L3 使用 stub healer;因此它证明分级编排与回写语义,不代表真实站点端到端验收。
  4. 剩余活动 change 已就绪batch-parameter-templatemcp-agent-interfaceagent-driver-adaptersservice-mode-multinode 均通过严格校验,按 DAG 依序实施。已归档 change 的细节见上表与 openspec/changes/archive/
  5. 各 change 实现严格按其 tasks.md(含 Parallelization PlanArchitecture Verification),完成后 openspec archive <change>

需要为某个 change 补充/修订提案时,指名该 change-id 即可按同样方式分派 Fable 5 sub-agent 生成或迭代。