change-impact · git:20261011.d0306dc · 2026-10-11 · sha256 731ef1e25b66028e

change-impact git:20261011.d0306dcA

Immutable. This exact content never changes and is served at /api/v1/blob/731ef1e25b66028e.

---
name: change-impact
description: >-
  在改代码、数据、接口或治理文档前做有证据的影响分析,并在实施后把计划影响与实际 diff 对照;覆盖代码调用、数据/Schema、API 契约、测试、文档、ADR、部署、迁移和回滚。用于跨模块修改、高风险变更、数据库迁移、认证、公共接口、用户问“会影响哪里”“改之前检查一下”或实施后需要反思偏差时。English triggers: change impact analysis, blast radius, pre-change analysis, migration impact, rollback plan, post-implementation alignment.
---

# 变更影响分析

默认只读。先用真实依赖与现有文档证明影响面,再实施;未知项明确标“未验证”。

## 修改前

依次回答:

1. **代码**:入口、直接调用方、下游消费者、生成物和兼容层会受什么影响?
2. **数据**:Schema、迁移、历史数据、序列化、缓存和幂等键是否变化?
3. **接口**:API、消息、文件格式或 CLI 是否改变?消费者和提供者分别是谁?
4. **测试**:哪些成功标准、TEST-ID、契约测试和回归命令应证明变更正确?
5. **文档**:是否影响 MAP、ARCHITECTURE、STATUS、LOG、CONTEXT、ADR、CONTRACT、Spec/Plan、TESTS 或 REGRESSION?
6. **发布**:部署顺序、兼容窗口、数据恢复、回滚命令和不可逆部分是什么?

证据优先取自真实 import/调用、路由、Schema、配置、生成脚本、`git grep`、`git diff` 和可执行测试。不要凭目录名猜依赖。

## 路由规则

- 架构、数据库、认证、部署拓扑或长期技术策略:检查 `context-and-decisions` / ADR。
- 跨端接口:先更新 `contract-first` 管理的唯一契约源,再规划消费者、提供者和联调证据。
- 需求、业务规则、风险或 Bug:让成功标准保留在 Spec/Issue,并用 `test-collaboration` 关联 TEST-ID。
- Module 行为或下游依赖变化:实施后运行 `module-regression`;若权责、状态归属、Interface、依赖方向或核心流转改变,同步更新 `ARCHITECTURE.md`,并确保 MAP 仍能导航到它。
- 数据库迁移、破坏性接口、认证和生产发布:必须写回滚条件、恢复步骤、兼容期和不可逆部分;缺任何一项就标为阻塞,不代替人执行回滚。

## 输出

小改动在回复中给出:影响对象、证据、所需验证、文档同步和未知项。只有跨模块、高风险或用户明确要求留档时,才把报告写入 `docs/impacts/`;写文件前先确认,避免制造一次性文档。

## 实施后对照

完成实现后检查:

1. 实际改动是否解决 Spec/Issue 中的原始问题。
2. 实际 diff 是否超出已声明范围;超出项是否获得授权并补充影响分析。
3. 测试和人工证据是否真正覆盖成功标准,而非只证明命令运行过。
4. CONTEXT、ADR、CONTRACT、TESTS、REGRESSION、MAP、ARCHITECTURE、STATUS 和 LOG 是否按实际变化同步。
5. 是否遗留临时代码、兼容逻辑、迁移尾项或后续 Issue。

默认在交付回复中报告对照结论。只有高风险变更或用户要求正式评审时,才保存到 `docs/reviews/`。不要创建通用 `REFLECTION.md`。