SuperAPI AI 工具集

simulate

测试与质量

查看项目

更新于 10-16 07:29

技能介绍

用途

simulate 是 udecode/better-convex 项目中的一个命令型技能,定位为“battle-test prompt”(实战测试提示)。其核心用途是:模拟一个完全不了解 better-convex 内部机制的真实新用户,从零开始完成 better-convex 应用的 onboarding,并在四个硬性门控阶段中交付一个全栈演示应用。该技能强调以结果为导向,避免在运行手册中硬编码底层框架内部细节,所有 better-convex 相关的设置与实现细节应参考 skills/convex/SKILL.md。

主要能力与阶段划分

该技能将整个模拟过程划分为四个阶段,每个阶段有明确的范围与验证重点:

  • 第一阶段:公开 CRUD 基础(无认证)。引导应用基础,实现核心实体(projects/todos/tags/comments)的公开 CRUD,添加基础公开 API 演示端点(/api/health、/api/demo/echo),并添加种子/重置骨架。验证重点为公开 CRUD 正常路径、未找到路径以及公开 HTTP 检查。
  • 第二阶段:认证 + 组织/管理员。在一个阶段内端到端加入认证,包括组织/管理员能力;添加认证 UX 路由和一个受保护的变更流程;确认登录成功与登出保护。验证重点为未认证拒绝、禁止的管理员路径、组织成员守卫、成功登录检查。
  • 第三阶段:完整产品面(无订阅)。扩展到完整领域面(users/orgs/todos/projects/tags/comments),深化关系处理与所有权/组织作用域,在关键流程中扩展 RSC + React Query 使用,扩展 HTTP 路由对领域用例的覆盖。验证重点为关系深度读取、所有权/组织作用域、RSC 预取 + 水合行为。
  • 第四阶段:全量覆盖加固。完成加固与完整性特性(聚合、触发器、限流、ORM 安全行为),最终确定种子/重置健壮性,并根据发现准备文档补丁建议。验证重点为触发器副作用正确性、聚合一致性、限流执行、全路由浏览器冒烟、最终 API 冒烟。

使用方式

该技能以运行手册(runbook)形式给出操作指令,使用方式如下:

  1. 在全新仓库 /tmp/simulation-1 中工作(若不存在则创建)。所有代码、规划文件和验证产物都必须位于该目录下,不得读取或修改当前仓库。
  2. 使用 .codex/skills/planning-with-files/planning-with-files.mdc 进行跟踪与报告,持续更新 task_plan.md、progress.md 和 findings.md。在 findings.md 中记录阻塞/摩擦,需包含:严重程度、阶段、源文件/章节、问题、建议修复。
  3. 每个阶段结束后必须执行门控检查:运行 bunx better-convex dev --once --typecheck disable(首选,包含代码生成)、bun run typecheck(回退 bunx tsc --noEmit)、bun test、bun run build,并对该阶段路由集进行有头 agent-browser 冒烟测试。证据保存到 /tmp/simulation-1/evidence/phase-N/。任一检查失败需在阶段内修复并重跑门控,不得继续下一阶段。
  4. 路由冒烟矩阵:第一阶段为 /、/todos、/projects、/tags、/http-demo;第二阶段为 /auth、/org 加一个受保护变更流程;第三阶段为 /、/auth、/todos、/projects、/tags、/org、/http-demo;第四阶段为第三阶段完整矩阵加最终 API 冒烟。
  5. 最终报告必须包含:哪些工作成功、遇到的阻塞/摩擦、每个阶段门控的证据路径、具体的文档补丁建议,以及确认四个阶段门控均按顺序通过。

适用场景

该技能适用于对 better-convex 框架进行端到端集成验证、新用户 onboarding 体验测试、全栈演示应用构建流程演练,以及框架文档与实现一致性的实战检验。它要求使用有头 agent-browser 进行浏览器冒烟测试,并使用实际运行的开发服务器 URL/端口(端口可能不是 3000)。

限制与约束

  • 全局规则明确:不得使用 @ts-nocheck;本次模拟不涉及订阅(无 subscriptions 表、功能路径或计费流程)。
  • 必须采用 fail-fast 顺序:在阶段 N 门控完全通过前,绝不开始阶段 N+1。
  • 每个阶段门控必须有有头 agent-browser 参与。
  • 所有工作限定在 /tmp/simulation-1,不得读取或修改当前仓库。
  • 关于 better-convex 的具体设置与实现细节,资料中指向 skills/convex/SKILL.md,但该文件内容未在本次资料中提供。
  • 该技能的官方文本(official_text)为空,未提供额外的官方说明。