pipeline-app/deploy/migrations/m0025_llm_usage_project_id.json
yumoqing 220901ff61 feat(migration): m0021删llm_usage token冗余列+m0025加project_id列索引(2026-09-10用户定夺,配对pipeline-llm@427cd7c)
- m0021: usages JSON全量不截断为计费唯一事实源,req_tokens/resp_tokens同源冗余删除,
  统计查询走JSON_EXTRACT+JSON_VALID守卫;backup_tables含llm_usage,dmig幂等(列不存在跳过)
- m0025: 按项目统计费用,project_id NOT NULL DEFAULT '0'(哨兵=非项目调用,对齐org_id平台约定),
  idx_llm_usage_project(project_id,created_at);token绑定project_id全链透传落库
- 两迁移id字段与文件名一致性已校验;llm_call_trace新表走create_tables.py动态扫描models建表,无需迁移
2026-09-11 15:30:24 +08:00

27 lines
1.0 KiB
JSON
Raw Permalink 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.

{
"id": "m0025",
"title": "llm_usage 加 project_id 列+索引2026-09-10 用户定夺:按项目统计费用;非项目调用哨兵值'0'NOT NULL DEFAULT对齐org_id '0'平台约定查询不传project_id=不区分项目。token绑定的project_id沿llm_bridge→token→推理端点→govern_settle全链透传落库。dmig 幂等守卫:列/索引已存在自动跳过create_tables.py 也会按 models 自动补列)",
"backup_tables": [
"llm_usage"
],
"up": [
{
"op": "sql",
"sql": "ALTER TABLE llm_usage ADD COLUMN project_id VARCHAR(32) NOT NULL DEFAULT '0' COMMENT '项目ID(sd_projects.id;''0''=非项目调用,查询不传=不区分项目)' AFTER ppid"
},
{
"op": "sql",
"sql": "CREATE INDEX idx_llm_usage_project ON llm_usage (project_id, created_at)"
}
],
"down": [
{
"op": "sql",
"sql": "DROP INDEX idx_llm_usage_project ON llm_usage"
},
{
"op": "sql",
"sql": "ALTER TABLE llm_usage DROP COLUMN project_id"
}
]
}