pipeline-app/deploy/migrations/m0026_orphan_tables_governance.json

38 lines
1.6 KiB
JSON

{
"id": "m0026",
"title": "孤儿表清零治理一期(非破坏,可自动apply): 4张归籍活表collation统一unicode_ci + pipeline_project_agents补索引(活表向models定义收敛) —— 破坏性DROP/DELETE拆至m0027走apply-approved",
"backup_tables": ["bid_analysis_history", "bid_cost_benefit", "pipeline_agent_settings", "pipeline_project_agents"],
"up": [
{
"op": "sql",
"sql": "ALTER TABLE bid_analysis_history CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci",
"desc": "collation统一(原general_ci,跨表JOIN需COLLATE补丁的根源;96行小表,CONVERT秒级)"
},
{
"op": "sql",
"sql": "ALTER TABLE bid_cost_benefit CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci",
"desc": "collation统一(0行)"
},
{
"op": "sql",
"sql": "ALTER TABLE pipeline_agent_settings CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci",
"desc": "collation统一(6行)"
},
{
"op": "sql",
"sql": "ALTER TABLE pipeline_project_agents CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci",
"desc": "collation统一(0行)"
},
{
"op": "sql",
"sql": "CREATE INDEX pipeline_project_agents_idx_ppa_project ON pipeline_project_agents(project_id)",
"desc": "补索引:活表向models定义收敛(cockpit_agent.dspy按project_id过滤);索引名=json2ddl生成名,render_step自带index_exists幂等守卫"
}
],
"down": [
{
"op": "note",
"desc": "collation回退需逐表ALTER回general_ci(不建议);索引回退: DROP INDEX pipeline_project_agents_idx_ppa_project ON pipeline_project_agents"
}
]
}