docs(p1r): 补记 Account 数据库迁移验收

This commit is contained in:
zizi 2026-05-30 03:38:29 +08:00
parent 7c92a493d8
commit 7f5553d4c3

View File

@ -106,7 +106,7 @@ QUALITY REVIEW PASS
## 残余风险
- 未运行真实 PostgreSQL / Flyway 验证P1R-3 DDL 仍需实现阶段验证
- 规格计划阶段未运行真实 PostgreSQL / Flyway 验证;实现阶段已在同一 PostgreSQL 实例的 `muse_local_test` 数据库补跑,结果见下文
- 未接真实 New-API runtimebinding / recheck / quota request 仍需保持 `needs_verification`
- 未接真实 FileService runtimeexport task / download credential 仍需保持 `needs_verification`
- 外部 Market / Content / AI / Knowledge owner 未闭合时purchase / license / publish / attribution 只能走 Account 读模型和 unavailable 边界,不能标为 completed。
@ -186,7 +186,7 @@ Content 51 dedicated / needs_verification
Meta 16 dedicated / needs_verification
```
该状态只证明仓库内 dedicated 入口、覆盖报告和门禁已收口,不代表 PostgreSQL / Flyway、New-API、FileService 或端到端运行态已验收。
该状态只证明仓库内 dedicated 入口、覆盖报告和门禁已收口。PostgreSQL / Flyway 迁移链路已在同实例 test 库验证New-API、FileService 或端到端运行态仍未验收。
### Review 结果
@ -244,9 +244,41 @@ git diff --check
结果:通过,无空白错误输出。
2026-05-30 追加真实 PostgreSQL / Flyway 验证:
```bash
# 使用 ~/.config/muse-repo/infra.env 中同一个 PostgreSQL 实例
# 基于 MUSE_POSTGRES_DATABASE=muse_local 创建固定 test 后缀数据库
createdb muse_local_test
# 使用 Flyway API 和 application.yaml 同口径的 filesystem:sql/muse 迁移目录
Flyway.configure()
.dataSource("jdbc:postgresql://<same-instance>/muse_local_test", username, password)
.locations("filesystem:sql/muse")
.baselineOnMigrate(true)
.baselineVersion("0")
.load()
.migrate()
```
结果:
```text
PostgreSQL 17.10
flyway_success=true
migrations_executed=11
target_schema_version=11
flyway_latest=11:extend account real api schema
flyway_versions=1,2,3,4,5,6,7,8,9,10,11
v11_tables=12
account_index_count=47
```
结论P1R-3 的 V11 迁移已在真实 PostgreSQL 实例的 `muse_local_test` 数据库通过 Flyway 迁移链验证。该验证覆盖 DDL/Flyway 可执行性,不等同于 New-API、FileService 或跨域端到端 runtime 验收。
### 未验证 runtime 风险
- 未验证真实 PostgreSQL / Flyway 执行V11 仍需在真实数据库迁移链路确认。
- PostgreSQL / Flyway 已在同实例 `muse_local_test` 数据库验证 V1-V11 迁移链;后续阶段若新增 DDL应继续先在同实例 `_test` 数据库跑真实 Flyway再允许阶段收口
- 未接真实 New-API runtimebinding / recheck / quota request / integration call 仍保持 `needs_verification`
- 未接真实 FileServiceexport task / download credential 只能证明边界和状态机,不能证明真实文件交付。
- Market / AI / Knowledge owner 未闭合purchase / license / publish / attribution 只能走 Account 投影或 unavailable 边界。