---
name: self-test-flow
description: 当用户输入「自测」「自测流程」或要求按联调方式验证模块时使用。梳理接口、写测试步骤文档、启进程、按 CRUD 等步骤执行并校验（NSQ/HTTP、MySQL/ClickHouse），输出带模拟数据与校验过程的测试报告。
---

# Self-Test Flow（自测流程）

## Activation
- 用户消息含「自测」「自测流程」，或明确要求按联调/接口方式验证模块时应用本技能。
- **命中词（任一）**：自测 / 自测流程 / 联调验证 / 接口联调 / 验证模块。
- **排除词（任一）**：提交代码（且无联调诉求）。
- **冲突降级**：若同条消息含开发诉求，入口由 `workflow-hub` 先分配到 `dev-task-flow`，本技能作为其阶段 3 子流程执行；若含 GeeLib 闭环语义，先进入 `workflow-hub`。
- 激活后首行输出：`[SKILL:self-test-flow]`。

## 门禁
- **失败即停**：本步未 PASS 则不得将依赖其结果的后继标为 PASS（除非用户要求继续探测）。
- **非单元测试**：不默认编写或修改 `*_test.go`；不未经用户同意改业务代码。
- **环境不可达则停**：中间件/网络阻塞时说明原因，不空转。
- **每步必校验**：HTTP/NSQ 执行后须含落库一致性校验证据，否则该步 **FAIL**。
- **启动前**：检查已有终端，避免重复拉起相同服务。

## 阶段（顺序执行）

| 阶段 | 内容 | 通过条件 |
|------|------|----------|
| 1 | 梳理接口/Topic，写可执行测试文档 | 文档含 CRUD 顺序与存储类型（MySQL/CH/缓存） |
| 2 | 启动进程与依赖 | 端口与配置与文档一致，有记录 |
| 3 | 按文档逐步执行 | HTTP/NSQ 操作与文档一致 |
| 4 | 每步即时校验 | 状态码/响应/库表与模拟数据一致；有查询依据 |
| 5 | 输出测试报告 | 逐步 PASS/FAIL + 总览 |

## 输出约定
- 每大步 `PASS` / `FAIL`；`PASS` 须含库表校验证据。
- **步骤写法、NSQ/HTTP 细则、报告结构**：同目录 **`reference.md`**。

## 执行回执（每次进入本技能都要输出）
- `已命中技能`：self-test-flow
- `命中关键词`：列出触发词
- `已加载文档`：`packages/agent/skills-runtime/self-test-flow/SKILL.md`、`packages/agent/skills-runtime/self-test-flow/reference.md`
- `阶段状态`：阶段 1/2/3/4/5 的已完成、进行中、待执行
