Files
gpt-load/.github
tbphp 30a1bac965 fix(release): 修正 CPA 版本文档漂移与数据库合同测试遗漏 (#514)
* fix(release): 修正 CPA 版本文档漂移与数据库合同测试遗漏

THIRD_PARTY_NOTICES.md 与 cpaembedded/README.md 的 CLIProxyAPI 版本号
未随 #507 依赖升级同步,仍是 v7.2.143(实际 v7.2.144)。

ci.yml 与 release.yml 的数据库合同测试 -run 正则手工维护测试名单,
已产生漂移:ci.yml 含一个不存在的测试名(静默不匹配),两者都缺失
TestExternalDatabaseMySQLRecoversObservationFreshnessCheckDrop,
release.yml 还缺失 TestExternalDatabaseAccessKeyCostLimitPeriodPermutation。
改为按前缀匹配同目录下全部 TestExternal* 测试,避免后续再次漂移。

补上 ja-JP/settings.ts 缺失的 runtime.pendingRestoreSource key,
该 key 在 4 个组件共 8 处引用,此前日文界面回退显示英文文案。

* fix(storage): 修正 0003 迁移恢复对 MySQL 中间态的误判

启用数据库合同测试的完整名单后,
TestExternalDatabaseMySQLRecoversObservationFreshnessCheckDrop
第一次在真实 MySQL 上执行即失败:ValidateCurrent0001 仅凭
fresh_until_ms 列是否存在判断 0003 是否已完成,但 MySQL 上
0003 的 DROP CHECK 与 DropColumn 是两条独立、非事务性 DDL,
崩溃可能停在"约束已删、列还在"的中间态。此时 ValidateCurrent0001
误判为"0003 未开始",转而用要求约束存在的冻结校验器 Validate0001,
导致误报 chk_credential_observation_fresh_until 缺失。

改为以约束是否存在作为判断信号,与同文件 ValidateRecoverable0003
已经正确处理该中间态的逻辑保持一致。已用一次性 MySQL 8.4 与
PostgreSQL 18 容器验证三态恢复路径与完整数据库合同测试套件。
2026-08-31 21:10:42 +08:00
..