Files
junhong_cmp_fiber/docs/tech-public-foundation/数据库对象所有权与发布门禁.md
break 17782d5f8e
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 9m20s
实现七月迭代公共技术基础
2026-07-23 17:52:48 +09:00

23 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 公共数据库对象所有权与发布门禁
## 对象所有权
| 数据库对象 | 唯一迁移所有者 | 下游接入方式 |
|---|---|---|
| `tb_outbox_event` 及公共索引、约束 | `tech-public-foundation` | 依赖公共 Outbox Port禁止复制 DDL |
| `tb_system_config` 及公共索引、约束 | `tech-public-foundation` | 注册业务 Key禁止复制 DDL 或创建任意 Key |
| Audit Event、Integration Log | `tech-global-audit` | 公共基础只依赖审计 Port |
| 通知、业务任务、业务失败明细 | 对应业务 PRD | 复用公共契约,保留自己的业务表 |
## 门禁执行
迁移和放量前运行前置检查,迁移后运行后置检查。检查只读取 PostgreSQL重复执行不会写入业务事实输出仅包含稳定错误码、对象名和计数不输出事件载荷或配置值。
前置检查阻断以下情况:依赖迁移版本不足或处于脏状态、已有对象定义冲突、重复事件 ID 或配置 Key、必填字段空值、非法状态/类型、未投递事件和过期租约。后置检查还要求公共表及约定字段已经存在,并执行约束、索引和读写冒烟验证。
## 发布与回滚边界
发布顺序固定为:迁移与检查、兼容 API、Relay/Worker、依赖消费者、前端。迁移异常、Outbox 持续积压或租约大量过期、配置读写不一致、访问日志脱敏回归失败、关键任务无法恢复时停止放量。
尚未产生事实的新结构可在验证后回滚。公共表已经保存 Outbox 或配置事实后,必须先停止生产者和 Relay保留事实并向前修复禁止通过降级删表清理。