Elixir/Phoenix验证循环Skill phx:verify

这个技能涉及Elixir/Phoenix项目中的完整代码验证流程,用于在代码更改后确保代码质量。包括编译检查、代码格式化、Credo代码分析、测试运行和Dialyzer类型检查,适用于后端开发,提高代码可靠性和可维护性。关键词:Elixir, Phoenix, 代码验证, 编译, 格式化, Credo, 测试, Dialyzer, 后端开发, 代码质量, 验证循环。

后端开发 0 次安装 0 次浏览 更新于 3/11/2026

名称: phx:verify 描述: Elixir/Phoenix更改的完整验证循环。在做出代码更改后使用以确保质量。

验证循环

Elixir/Phoenix项目的完整验证工作流。在提交或PR之前运行以确保代码质量。

铁律 - 永不违反

  1. 按顺序运行 - 每一步必须在继续下一步之前通过
  2. 立即修复问题 - 不要批量修复;在继续之前解决每个失败
  3. 警告即错误 - 使用 --warnings-as-errors 标志;没有例外
  4. 在PR前进行完整Dialyzer - 总是在创建拉取请求之前运行Dialyzer

验证序列

按顺序执行这些命令,在任何失败时停止:

步骤1: 编译(快速反馈)

mix compile --warnings-as-errors

捕获:未定义函数、缺失模块、类型不匹配、未使用变量

步骤2: 格式化

mix format --check-formatted

如果失败:运行 mix format 并重新检查

步骤3: Credo分析

mix credo --strict

解决所有标记为一致性或设计问题的问题

步骤4: 运行测试

# 针对特定上下文更改
mix test test/my_app/[changed_context]_test.exs --trace

# 针对完整测试套件
mix test --trace

所有测试必须通过

步骤5: Dialyzer(PR前必需)

mix dialyzer

不允许新警告。首次运行构建PLT缓存(慢)。

处理Dialyzer警告:优先修复而非抑制。 如果抑制必要,添加到 .dialyzer_ignore.exs 并 注释解释原因。永远不要抑制你不理解的警告——先调查。

快速参考

步骤 命令 时间 何时必需
编译 mix compile --warnings-as-errors 快速 总是
格式化 mix format --check-formatted 快速 总是
Credo mix credo --strict 中等 总是
测试 mix test --trace 中等 总是
Dialyzer mix dialyzer PR前

使用

在做出代码更改后:

  1. 运行 /phx:verify 执行完整循环
  2. 在继续之前解决任何失败
  3. 仅在所有检查通过后提交

在开发期间进行部分验证时,根据需要运行单个步骤。