架构深度解析
本指南深入讲解 Rotifer 协议的架构设计,涵盖 URAA 五层体系、适应度模型、Arena 竞技机制、Agent 生命周期以及绑定架构。
URAA 五层架构
Section titled “URAA 五层架构”通用轮虫自治架构(URAA)将关注点分离为五个不可变层。每层承担单一职责,层间仅通过标准化接口通信。
┌─────────────────────────────────────────────────┐│ L4: 集体免疫层 — 物种记忆 │├─────────────────────────────────────────────────┤│ L3: 竞争与交换层 — 选择压力 │├─────────────────────────────────────────────────┤│ L2: 校准层 — 免疫系统 │├─────────────────────────────────────────────────┤│ L1: 合成层 — 基因表达 │├─────────────────────────────────────────────────┤│ L0: 内核层 — 不可变信任锚 │└─────────────────────────────────────────────────┘L0: 内核层(约束层)
Section titled “L0: 内核层(约束层)”信任根基。L0 强制执行不可变约束,任何高层均无法覆盖。
- 约束执行:每个基因执行前必须通过 L0 检查(权限、资源限制、伦理边界)
- 状态锚定:Agent 状态压缩为固定大小摘要,防篡改持久化
- 权限隔离:基因在隔离的权限域中运行——不可跨基因访问状态
在 Playground 中,L0 通过 WASM 沙箱实现,具备燃料计量和内存上限。
L1: 合成层(执行层)
Section titled “L1: 合成层(执行层)”协议的”核糖体”——将原始输入转化为标准化基因片段并执行。
- WASM 沙箱:
wasmtime引擎,可配置燃料(指令预算)、内存限制和纪元中断 - IR 编译器:基因编译为 Rotifer IR(WASM + 自定义段:
rotifer.version、rotifer.phenotype、rotifer.constraints、rotifer.metering) - 双执行模式:Direct(
express导出)和 WASI(_start入口点)
L2: 校准层(测试层)
Section titled “L2: 校准层(测试层)”受胸腺选择启发的多阶段验证:
- 静态分析:Schema 验证、导出检查、禁止指令检测
- 沙箱模拟:
rotifer test在隔离环境中用示例输入运行基因 - 受控试运行:逐步部署到 Agent 子集(未来)
L3: 竞争与交换层(进化层)
Section titled “L3: 竞争与交换层(进化层)”两种机制驱动进化:
- Arena(竞技场):同域基因按适应度
F(g)竞争。本地和云端维护排名。基因根据适应度自动被选中。 - 水平逻辑传递(HLT):高适应度基因元数据通过 P2P 传播。Agent 根据能力缺口拉取基因。(v0.5 为基础阶段,v0.6+ 完整实现)
L4: 集体免疫层(涌现层)
Section titled “L4: 集体免疫层(涌现层)”网络级防御和模式检测:
- 恶意基因指纹在网络中广播
- 防御策略在 Agent 间共享
- 时间衰减确保过期威胁数据失效
- 共识验证的写入操作防止误报
适应度模型 F(g)
Section titled “适应度模型 F(g)”每个基因有可量化的适应度分数。适应度函数组合多个指标:
F(g) = w₁·成功率 + w₂·延迟评分 + w₃·资源效率 + w₄·安全评分
其中: 成功率 = 成功调用次数 / 总调用次数 延迟评分 = 1 - (平均延迟 / 最大可接受延迟) 资源效率 = 1 - (消耗燃料 / 燃料预算) 安全评分 = L0 约束检查得出的 V(g)基因进入 Arena 前必须达到最低适应度阈值:
- Wrapped 保真度基因:
F(g) >= 0.3 - Native 保真度基因:
F(g) >= 0.5
在 Playground 中,适应度从基因内容哈希确定性计算,确保无需运行时执行即可获得一致排名。
安全评分 V(g)
Section titled “安全评分 V(g)”安全评分评估基因对 L0 约束的合规程度:
V(g) = 约束合规率 × 权限评分 × 资源评分
其中: 约束合规率 = 通过检查数 / 总检查数 权限评分 = 在声明权限内为 1.0,否则扣分 资源评分 = 在限制内为 1.0,超出按比例缩放信誉系统 R(g) — v0.5
Section titled “信誉系统 R(g) — v0.5”信誉在瞬时适应度之上增加了时间衰减的信任信号:
R(g) = α·Arena评分 + β·使用评分 + γ·稳定性评分
其中: α = 0.5, β = 0.3, γ = 0.2 Arena评分 = F(g) 历史,按时间近度加权 使用评分 = log(下载量 + 1) / log(1000),上限 1.0 稳定性评分 = 总调用次数 / 100,上限 1.0时间衰减防止信誉凝固:
R(g, t) = R(g, t-1) × (1 - 0.05) // 每月衰减 5%,下限 0.01开发者信誉:
R(d) = avg(R(g_i)) + 社区奖励 // 奖励 = min(竞技场胜场 × 0.02, 0.2)Arena 竞技机制
Section titled “Arena 竞技机制”Arena 以纪元为单位运行。每个纪元内:
- 基因通过
rotifer arena submit提交 - 计算适应度
F(g)(Playground 模式中从内容哈希估算) - 基因在其领域内排名
- 排名靠前的基因被选中用于 Agent 表达
- 多样性机制防止单一化(多样性低于阈值时纪元重置)
基因仅在其声明的 domain 内竞争(如 search.web、code.format)。跨域基因不相互竞争。
云端 Arena
Section titled “云端 Arena”云端 Arena 将竞争扩展到跨开发者:
rotifer arena submit --cloud上传适应度结果到 Supabase- 服务端
get_arena_rankings()生成全局排名 - 信誉分数
R(g)与F(g)和V(g)并列显示
Agent 生命周期
Section titled “Agent 生命周期”Agent 经历四个状态:
Created → Active → Suspended → Terminated ↕ SuspendedAgent 运行时,从其基因组中选择基因,使用组合代数执行:
- 手动选择:
--genes gene1,gene2,gene3 - 自动选择:
--domain search.web --top 3从 Arena 选取排名最高的基因 - 管道执行:默认通过
Seq(顺序)组合基因
协议是绑定无关的。相同的基因 IR 可在任何绑定上运行:
┌───────────────────┐│ Gene IR (WASM) │ ← 一次编写├───────────────────┤│ RotiferBinding │ ← 切换绑定├─────┬──────┬──────┤│本地 │云端 │Web3 │ ← 运行时目标└─────┴──────┴──────┘本地绑定 (v0.1+)
Section titled “本地绑定 (v0.1+)”- SQLite 存储,
wasmtime沙箱,本地 Arena - 自包含,无网络依赖
云端绑定 (v0.4+)
Section titled “云端绑定 (v0.4+)”- Supabase 后端(PostgreSQL + Storage + Auth + Realtime)
- GitHub OAuth(PKCE 流程)
- 发布/搜索/安装/Arena 的 REST API
- 端点无关:通过
~/.rotifer/cloud.json或--endpoint配置
P2P 绑定 (v0.5 基础)
Section titled “P2P 绑定 (v0.5 基础)”- Cloud-first 混合模型:云端 Registry 为主,P2P 为补充
- 通过 GossipSub 协议广播基因元数据
- 通过 Kademlia DHT 发现基因
- 二进制传输推迟到 v0.6(当前使用云端 CDN)
Web3 绑定(未来)
Section titled “Web3 绑定(未来)”- 基于智能合约的约束执行
- 链上信誉和适应度记录
- 代币激励的基因市场
完整的基因生命周期:
开发者编写基因 → rotifer scan(发现候选函数) → rotifer wrap(生成 Phenotype) → rotifer test(L2 沙箱验证) → rotifer compile(WASM + IR 自定义段) → rotifer arena submit(本地排名) → rotifer publish(云端 Registry) → rotifer arena submit --cloud(全局排名) → 其他开发者:rotifer search + rotifer install → 信誉积累:R(g) 随使用增长 → P2P 网络广播基因元数据