|
|
66996c693d
|
fix(dmig): DROP INDEX 被 DROP COLUMN 守卫误解析致静默跳过 + m0038 唯一索引修正
dmig.py 两处(2026-09-17 m0038 部署预演时本地测试抓到):
① `ALTER TABLE t DROP INDEX idx` 会命中 DROP COLUMN 守卫的可选 `(COLUMN\s+)?`
分支,group(3) 捕获到字面词 'INDEX' 而非索引名 → column_exists(t,'INDEX')
恒 False → 整步被静默跳过(索引删不掉、无任何报错)。修: DROP INDEX 守卫
(ALTER 形态 + 独立 `DROP INDEX idx ON t` 形态,历史迁移 m0025/m0031 等
13 条 down 段用的就是独立形态、此前同样无守卫)放在 DROP COLUMN 之前,
幂等判据用 index_exists。
② DROP COLUMN 正则收紧为强制 COLUMN 关键字后列名组号 3→2,调用点同步
(历史 22 条 DROP COLUMN 全部显式带 COLUMN、bare 形态 0 条,无回归)。
本地守卫测试 18/18 全绿(含 m0038 up/down/重复down 完整生命周期)。
m0038: m0037 把 models 声明的 uk_org_user_name(unique) 误写成普通 CREATE
INDEX → 实测建出 KEY 而非 UNIQUE KEY,失去并发去重保护(同名可插重复行、
save_secret 幂等判定失效)。本迁移删误建索引并按 models JSON 权威定义重建
UNIQUE。backup_tables 照旧。不改已应用的 m0037(台账完整性)。
|
2026-09-17 16:02:33 +08:00 |
|
|
|
e294fc7a6b
|
feat(deploy): 孤儿表清零治理——dmig新增apply-approved破坏性审批通道(destructive:true显式声明+批次号必填,备份台账照常) + m0026归籍活表收敛(4表collation统一unicode_ci+idx_ppa_project索引) + m0027破坏性批次(DROP6死表+清4组死页面权限,批评会决议用户已认可) + table_doctor表一致性体检工具(台账表基础设施豁免) + load_path删4条死注册防重插
|
2026-09-10 19:02:12 +08:00 |
|
|
|
58b37588f4
|
feat(deploy): 生产增量上线批次(2026-09-09)——dmig补DROP COLUMN幂等守卫(生产llm表由create_tables按最新models建出无旧列,m0009/m0010类删列迁移直跑1091中止);m0009_llm_model_drop_price_fields改号m0015(与m0009_rag_pipeline_access撞号被dict静默覆盖从未执行,实测两文件id同为m0009);m0016种子迁移14表(pricing_program/timing+product/category+discount+acctres/storres规格映射+pipeline_pricing_map+llm_vendor/model/api_profile/org_policy仅org0,mysqldump导出INSERT IGNORE幂等,api_key密文不进git走隔离通道);m0017(env=prod)business_date播种CURDATE+切日交accounting新端点dayend.dspy;rp.json注册dayend(any段,cron本机调用)
|
2026-09-09 13:46:25 +08:00 |
|
|
|
fc51fba1ea
|
feat(deploy): dmig 环境感知迁移——env字段限定prod/test执行范围
- m0005 生产专用 workspace_base=/d/doit/workspaces(env=prod)
- detect_env: DEPLOY_ENV优先,/doit/路径推断
- 防止生产专用参数在测试环境误执行
|
2026-09-01 16:22:14 +08:00 |
|
|
|
27b6a7f543
|
fix(deploy): dmig 台账两个bug——skipped批次误判待执行+detail含引号写入失败
- ledger_state: applied+skipped 都算已处理,含 failed 的可重试
- _esc/_ledger_write: detail 转义单引号+ON DUPLICATE KEY UPDATE
|
2026-09-01 16:04:38 +08:00 |
|
|
|
dd40df6337
|
feat(deploy): 测试→生产增量部署机制——dmig迁移引擎+ddiff差异对账+dbackup增量备份+四步规范
- METHODOLOGY.md: 备份/操作/验证/回退四大步操作规范
- dmig.py: 迁移引擎(台账表pipeline_deploy_ledger+幂等+破坏性守卫+down回退)
- ddiff.py: 环境schema/参数/模块版本差异对账
- dbackup.py: mysqldump增量表备份+恢复命令生成
- migrations/m0001-m0004: 首批迁移(今日发现的生产库缺口)
|
2026-09-01 16:00:35 +08:00 |
|