用途:该技能提供受 Boris Cherny“Grill me”方法启发的严格批判性审查模式,用于在批准 Elixir/Phoenix 变更前进行深入质询,推动超越第一版方案以保证质量。核心原则包括:无验证不批准、假设一定存在缺陷、质疑一切(包括看似明显的代码)、要求提供测试与状态转换等证据。审查贯穿三种对抗性视角:什么会在生产负载、部署或异常数据下破坏它;列出所有假设并找出最脆弱者;发现测试与实现、文档与行为或变更集内部的矛盾。
主要能力:命令以 /phx:challenge [mode] 启动。Ecto 模式(/phx:challenge ecto)质询迁移安全性(是否锁表、旧记录影响、可逆性、不安全操作)、查询性能(N+1、缺失索引、数据增长扩展性)、模式完整性(数据库级约束、滚动部署兼容、外键级联)与向后兼容性。LiveView 模式(/phx:challenge liveview)要求证明事件覆盖、PubSub 处理、状态转换(事件→处理器→状态表)、错误恢复路径以及内存与性能(streams、temporary_assigns、每连接内存占用)。PR 模式(/phx:challenge pr)提供高级工程师清单,涵盖在控制器/LiveView 中直接调用 Repo、显式 preload、changeset 校验用户输入、禁止从参数创建原子、错误处理、测试覆盖,以及性能、OTP 监督与超时、无界进程生成、SQL 注入、路径遍历、授权检查等。
使用方式:运行命令后逐条回答审查者提出的问题,需附代码引用或测试结果,所有关切解决后才能继续进入 PR。技能要求强制去重先前发现:搜索 .claude/plans/*/reviews/ 与 .claude/reviews/,先读取全部历史发现再分析代码,将发现归类为“已修复(跳过)”“仍存在(PERSISTENT,一行说明)”“新增(NEW,完整分析)”“重新引入(REGRESSION)”,输出顺序为新增优先、其次持续、最后回归。
限制:资料主要描述审查方法论、清单与输出格式,未提供安装方式、平台支持范围、是否收费或价格、与其他工具集成细节;具体命令行参数与运行环境要求暂未提供。使用前需具备对应 Phoenix/Ecto 项目与既有审查记录目录结构,否则去重与证据核验流程可能无法完整执行。