---
name: bd-manual-db-docs
description: 当 PostgreSQL schema/表结构发生变化时，用于将变更以审计友好的方式落盘到 docs/database/（含变更原因、影响、回滚与验证 SQL）。
---

# 目的
保证数据库结构变化可追溯、可审计、可回滚，并与 ETL/后端/小程序字段映射保持一致。

# 触发条件
- 迁移脚本/DDL 修改（新增/删除/改表、字段、类型、默认值、非空、约束、索引、外键）
- ORM/Schema 定义变更导致实际 DB 结构变化
- 手工执行 DDL（需用 manualTrigger hook 或本 Skill 补齐文档）

# 输出要求（必须全部满足）
所有输出必须落盘到：`docs/database/`

至少包含：
1) Schema Change Log（变更日志条目）
2) Table Structure Doc（涉及表的结构文档更新）
3) Rollback & Verification（回滚要点 + 至少 3 条验证 SQL）
4) 溯源：日期 + Prompt-ID/Prompt 摘录 + Direct cause（必要性 + 方案简介）

# 工作流
## 1) 识别结构性变化
- 列出新增/修改/删除的对象：schema/table/column/index/constraint/fk
- 明确变更前后差异（before/after）

## 2) 更新变更日志（Schema Change Log）
- 在对应 schema 目录下追加一条变更记录（模板见 assets/schema-changelog-template.md）

## 3) 更新表结构文档（Table Structure Doc）
- 每张受影响的表都要更新（模板见 assets/table-structure-template.md）
- 同步字段含义/口径说明，尤其是金额类字段：精度、币种、舍入

## 4) 回滚与验证
- 写清楚 DDL 回滚路径（必要时提供反向迁移）
- 写至少 3 条验证 SQL（含约束/索引/关键字段检查）

# 模板
- `assets/schema-changelog-template.md`
- `assets/table-structure-template.md`
