diff --git a/docs/dev-log.md b/docs/dev-log.md index dd65912..294b4db 100644 --- a/docs/dev-log.md +++ b/docs/dev-log.md @@ -1018,3 +1018,26 @@ cd ~/devops/aiops - 后端 billing.go(476行)、server.go(446行)、sql_audit.go(435行)、approval.go(435行) 仍超400行限制 - sidebar.tsx(689行) 接近上限可提取context/variants - 前端 mocks/ 目录虽标记废弃但文件仍在(组件已不导入),可考虑彻底删除或保留作开发参考 + +## 2026-06-15 14:00 自动推进 + +- **任务**: 后端 billing.go 拆分(476行超400限制 → 2文件,按 账单记录+统计/预警规则 分域) +- **修改**: + - `backend/internal/api/handlers/billing.go` — 476→307行:仅保留 BillingHandler struct + NewBillingHandler + 账单记录域(ListBillings/CreateBilling/BatchCreateBillings/DeleteBilling)+ GetBillingStats + checkBillingAlerts(被 stats 调用,随账单域保留);移除未使用的 strings import + - `backend/internal/api/handlers/billing_alert.go` — **新建**(168行):预警规则域 CRUD(ListAlertRules/CreateAlertRule/UpdateAlertRule/DeleteAlertRule/ToggleAlertRule)+ GetProviderOptions + formatProvider + - 附带小优化:GetProviderOptions 原内联 switch 厂商标签改为复用 formatProvider(),消除重复代码(行为不变) +- **结果**: + - `go build -o aiops-server ./cmd/` 编译通过 ✅ + - `go vet ./...` 零错误 ✅ + - `./run.sh restart` 后健康检查 /health 正常 ✅ + - Python 脚本端到端验证(admin token): + - GET /cloud-billings → code 200, total 479 ✅(ListBillings) + - GET /cloud-billings/stats → code 200, month_cost 33776.14, provider_dist 4, alerts 1 ✅(GetBillingStats + checkBillingAlerts) + - GET /billing-alerts → code 200, total 3 ✅(ListAlertRules,已迁移) + - GET /cloud-billings/providers → code 200, 4厂商中文标签正确 ✅(GetProviderOptions + formatProvider 复用验证) + - POST /billing-alerts/3/toggle → "已禁用" → 再 toggle "已启用" ✅(ToggleAlertRule,已迁移) + - 纯后端文件重组+小优化,无业务逻辑变更,前端零改动,routes.go 零改动 + - git push 成功 (commit 9eaf88c) +- **下一步建议**: + - 后端仍超400行: server.go(446)、sql_audit.go(435)、approval.go(435)、navigation.go(428,但属已移除菜单的死代码后端,保留不拆) + - 前端 sidebar.tsx(689行) 接近上限可提取 context/variants;ServerManager.tsx(681)、AgentMonitor.tsx(671) 接近700行限制