Files
junhong_cmp_fiber/openspec/changes/add-asset-operation-audit-log/tasks.md
huang fe4c545308
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m55s
修正数据
2026-04-27 18:10:08 +08:00

61 lines
3.9 KiB
Markdown
Raw 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.
## 0. 验证准备与覆盖矩阵确认
- [x] 0.1 梳理资产敏感写操作覆盖矩阵(卡/设备/统一资产入口/自动停复机/导入任务创建),明确每个操作对应 `operation_type`
- [x] 0.2 定义日志字段验收清单:`operator_*``asset_*``operation_*``before_data``after_data``request_*``result_*`
- [x] 0.3 准备手工验收数据与脚本Postman/curl + PostgreSQL MCP 查询语句),覆盖 success/failed/denied 三类结果
## 1. 资产域日志模型与迁移
- [x] 1.1 新增资产操作日志 Model`tb_asset_operation_log`)与 JSONB 字段结构,确保无外键/无 GORM 关联标签
- [x] 1.2 新增迁移文件up/down创建资产日志表和索引按资产、操作人、时间、结果等维度
- [x] 1.3 新增 Store 能力Create + 常用查询基础方法),满足异步写入与后续审计检索
- [x] 1.4 使用 PostgreSQL MCP 验证表结构、索引、字段类型与约束符合设计
## 2. 审计基础设施与常量
- [x] 2.1 在 `pkg/constants` 新增资产审计常量:操作类型、结果类型、资产类型、系统操作者类型等
- [x] 2.2 新增 `asset_audit` 服务与统一写入接口(异步落库、失败不阻断主流程)
- [x] 2.3 新增日志构建 helper统一 before/after、请求上下文、错误信息组装
- [x] 2.4 在 bootstrap 完成依赖注入(`iot_card``device``stop_resume``asset lifecycle``asset polling`、导入服务)
- [x] 2.5 编译校验与静态检查(`gofmt``go build`)确保注入链路无回归
## 3. IoT 卡相关操作接入审计
- [x] 3.1 接入单卡分配/回收审计日志(包含前后归属、结果态)
- [x] 3.2 接入卡系列绑定、轮询开关、实名策略更新审计日志
- [x] 3.3 接入手动实名状态更新审计日志(必须记录 before/after
- [x] 3.4 接入卡删除/批量删除审计日志
- [x] 3.5 对卡相关拒绝与失败路径补充 denied/failed 审计日志
- [ ] 3.6 手工验证卡操作日志完整性success/failed/denied + before/after
## 4. 设备相关操作接入审计
- [x] 4.1 接入设备删除、分配、回收、系列绑定审计日志
- [x] 4.2 接入设备绑卡/解绑审计日志(记录设备、卡、插槽与状态变化)
- [x] 4.3 接入设备停机/复机审计日志(记录成功数、失败数、失败摘要)
- [x] 4.4 接入设备远程控制审计日志(限速/WiFi/切卡/切卡模式/重启/恢复出厂)
- [x] 4.5 落实敏感字段脱敏WiFi 密码等不得明文写入日志)
- [ ] 4.6 手工验证设备操作日志(含敏感字段脱敏校验)
## 5. 统一资产入口与停复机链路接入
- [x] 5.1 在统一资产入口相关写操作中补齐审计日志(停复机、停用、轮询状态、实名策略)
- [x] 5.2 在自动停复机链路补齐审计日志(自动停机/自动复机成功与失败)
- [x] 5.3 在手动停复机拒绝场景补齐 denied 审计日志(未实名、保护期等)
- [x] 5.4 校验系统触发操作的操作者语义(`operator_type=system` 等)
- [ ] 5.5 手工验证统一入口与停复机链路审计闭环
## 6. 导入任务创建与批量链路补齐
- [x] 6.1 接入设备导入任务创建审计日志(记录任务参数摘要与创建结果)
- [x] 6.2 接入卡导入任务创建审计日志(记录任务参数摘要与创建结果)
- [ ] 6.3 校验批量操作日志的聚合字段(`batch_total/success_count/fail_count`
- [ ] 6.4 手工验证导入与批量链路审计数据可追溯
## 7. 文档与最终验收
- [x] 7.1 编写功能总结文档(`docs/{feature-id}/`),说明字段规范、覆盖范围、脱敏规则、查询示例
- [x] 7.2 更新 README 相关章节(资产审计日志能力与排障入口)
- [ ] 7.3 完成全链路手工验收:卡与设备典型操作各覆盖 success/failed/denied 至少一例
- [ ] 7.4 输出验收证据:接口请求响应、日志样例、数据库快照与关键 SQL 查询结果