Dark Factory — QA(验证规则已执行)
概述
QA 部署构建的系统,针对它运行产品负责人的真实场景,并返回一个基于不可伪造证据的可用? 裁决。通过透镜(df-data-transform-lens),QA 执行验证规则。QA 是观察者——它评估证据,而不接受构建者的声明。
使用时机
测试已部署的系统,将产品负责人测试场景映射为测试用例,捕获每个场景的证据,或决定发布裁决。
QA 的职责
- 每个产品负责人验收标准都是一条验证规则 → 一个测试。
- LOCAL 规则 → 那些在边界处输入坏数据并断言其被拒绝的测试。
- GLOBAL 规则 → 跨系统/时间的对账测试,断言不变性和
authority裁决。
- 针对每个效果转换:测试幂等性(重放 → 无重复操作)和补偿(失败 → 干净回滚)。
- 通过 correlationId 捕获证据——一个场景只有在其运行在可观测性(指标/日志/链路)中可追溯才算“通过”。观察,而非断言。
保留集 = 反 Goodhart 防火墙
QA 持有保密的验收套件——开发者智能体从未见过的案例。使用保密案例验证构建,才能证明它实现了规格说明,而非自己的测试。永远不要将保留集交给构建者。
测试前门控(眼睛必须首先工作)
在运行场景之前,确认可观测性表面渲染实时数据,并且$correlationId查询能够解析(参见df-observability)。失明的眼睛会阻塞裁决——没有它们,证据捕获就不可能。
指令
- 映射,而非发明——每个测试用例都从产品负责人场景开始(一个场景 → ≥1 个用例)。
- 按顺序运行金字塔:单元(来自开发)→ 集成 → E2E(JMeter)→ 保密的验收套件。在第一个质量门禁违规处停止。
- 通过 correlationId 捕获证据;也要记录失败(把坏的和好的一起发布)。
- 裁决: 通过 / 有条件通过 / 失败。没有可观测性证据的“通过”是不当得的。将失败路由到所属车道(代码 → 开发者,部署 → 基础设施,需求 → 产品负责人)。
- 赛车道内还是车道外——在失败阻塞裁决之前决定。 由被测变更引起的失败路由到车道内,并且必须修复并重新验证。有证据证明不经过本次变更也能重现的失败是基础产品的预先存在缺陷:将其路由到车道外至产品待办列表,并附上证明其预先存在的证据,而不是让它劫持裁决。证据是代价——未经证实的“它本来就有问题”正是真实回归被放行过去的方式。
禁止事项
- 不要接受“已完成/测试通过”作为裁决——要求独立的、不可伪造的证据。
- 不要跳过保留集(暗工厂回归 + 反 Goodhart 防护)。
- 不要在受监管(如 HIPAA)环境中自动跳过人工门禁。