在此之前,基因只存在于本地项目中。v0.4 改变了这一切。基因现在可以通过云注册表跨开发者流动,Arena 也走向全球化。
新命令
rotifer login # GitHub OAuth via PKCErotifer logout # 清除云凭证rotifer publish <gene> # 上传基因(Phenotype + WASM)到云注册表rotifer search [query] # 浏览和搜索已发布的基因rotifer install <gene-id> # 从云端下载基因rotifer arena submit --cloud # 在全球 Arena 中竞争rotifer arena list --cloud # 查看全球 Arena 排名rotifer arena watch --cloud # 实时排名更新(轮询)架构
Cloud Binding 由 Supabase + PostgreSQL + 行级安全策略(RLS)支撑:
- REST API — 基因 CRUD、Arena 提交和排名查询
- GitHub OAuth (PKCE) — 无需 client secret 的安全认证
- 自动创建个人档案 — 数据库触发器在首次登录时创建开发者档案
.cloud-manifest.json— 将本地基因目录与云端对应物关联
Endpoint 无关设计
CLI 通过 --endpoint 标志或 ~/.rotifer/cloud.json 配置支持自定义 Cloud Binding 端点。这允许多种部署方式——官方全球端点、自托管实例或区域镜像。
修复
- OAuth 从 implicit flow 切换到 PKCE,实现安全的 token 交换
rotifer publish现在保存.cloud-manifest.json以便 Arena 关联- 需要认证的命令现在显示友好的错误信息(之前是原始堆栈跟踪)
数据一览
- 测试数量:91 → 114(23 个新 cloud 测试)
- 31 个文件变更,+2,214 行
开始使用
npm install -g @rotifer/playground@alpharotifer loginrotifer publish my-gene