🚀 9 月 24 日 · v1.14.0
🗄 用量维护正式上线
• 新增独立 Usage Maintenance 工作区,统一管理历史用量归档、校验、在线明细清理、导入/导出和存储诊断。
• 归档 → 校验 → 删除保持独立阶段;破坏性清理必须单独确认,并受 coverage/readiness 与维护锁保护。
• 长时间归档任务持久化状态和进度,页面刷新、请求中断或服务重启后仍可继续恢复。
• 可选自动 retention,默认关闭,不会因为升级 v1.14.0 自动删除历史数据。
📦 归档、导入与恢复
• 历史数据保存到 usage-archives/,使用顺序化 gzip JSONL segments。
• 完整 Usage JSONL 导出不再受 USAGE_QUERY_LIMIT 限制,并使用稳定快照边界。
• 导入支持可恢复 session、分块上传、磁盘配额、TTL,以及已上传前缀 SHA-256 校验。
• identity ledger 防止已归档并清理的事件被重复导入“复活”。
🧹 离线 SQLite 压缩
• 新增 cpa-manager-plus compact-usage --db-path ...。
• 必须停止所有连接该数据库的 Manager Server 后执行;不会自动运行。
• 长时间压缩会输出阶段/heartbeat,最终结果保持机器可读 JSON。
• 逻辑删除不会自动缩小 SQLite 文件,压缩前建议保留完整备份和足够临时磁盘空间。
🧩 模型发现修复
• 上游 display_name 不再被自动写成 CPA 路由 alias。
• 友好名称仍会正常显示,但不会再因为模型发现/导入意外改变对外模型 ID。
• 已经由旧版本保存的错误 alias 不会自动修改,需要时请手工清空。
⚠️ 升级说明
• 无需手动数据库迁移,升级本身不会删除历史 usage。
• 清理历史 raw 数据前,请同时备份 SQLite/WAL/SHM、data.key 与 usage-archives/。
• compact-usage 只能离线执行。
• 完整 Muse / Meta 功能的 CPA 基线继续为 v7.3.4+。
🙏 致谢
• @YogaSakti - 报告并贡献模型发现 display name / routing alias 分离修复。