docs(auth): record vehicle grant interval release

This commit is contained in:
lingniu
2026-07-16 18:03:22 +08:00
parent ddc1bb2d96
commit 85de053962
3 changed files with 19 additions and 5 deletions

View File

@@ -75,7 +75,17 @@
### P0-01 客户车辆授权启停履历
状态:`进行中`
状态:`已完成`
已上线结果release `vehicle-grant-intervals-20260716180136`
- 账号管理按车辆维护启用时间和可选停用时间车牌主显、VIN 辅显;管理员可展开查看历次开放区间、开通人、停用人和来源系统。
- 管理接口读取完整授权投影,不会因为授权尚未开始或已设置结束时间而把车辆从编辑页隐藏;客户会话仍只装载当前时间有效的授权。
- 保存时在同一数据库事务内同步 `platform_user_vehicle` 当前投影与对应的 `platform_user_vehicle_grant_history` 履历。日期修正不新建重复区间,移除车辆才关闭当前区间,再次分配会新建下一次区间。
- 后端会检测当前投影与最新履历的日期漂移;即使当前投影值未变化,一次保存也会修复履历分叉。生产原有“当前 2026-07-16、履历 2026-06-05”漂移已在不扩大客户 Scope 的前提下对齐,历史条数保持 1。
- 每次账号保存的认证审计记录操作人及逐车授权区间的变更前/变更后;启停时间格式、重复 VIN、停用早于启用等输入均失败关闭。
- 轨迹、位置历史和 RAW 继续从精确授权时刻裁剪;日里程继续从首个完整 `Asia/Shanghai` 自然日开始。授权日期变更最多经过 30 秒跨实例会话缓存生效,本实例立即失效。
- Go 全量测试、现行前端 49 个文件/254 项测试和 TypeScript/Vite 生产构建通过ECS 三个服务均 active授权投影/履历一致性生产验证通过。
目标:
@@ -92,10 +102,10 @@
4. 客户 A 无法通过 VIN、车牌、URL、分页或导出访问客户 B 的车辆或历史。
5. 变更审计包含操作人、目标账号、车辆、变更前后、时间和结果。
依赖/风险
运维边界
- 当前表已预留 `valid_from/valid_to`,但账号管理 UI、完整履历模型及所有历史入口的统一强制校验仍需补齐
- 自然日里程在授权首日可能混入授权前数据,首日需采用完整授权日或提供明确的部分日口径
- 把授权日期回溯到过去会扩大客户可见历史,必须由管理员在账号管理页面明确保存;不得只修改其中一张表
- 若启用时间不是当天 00:00日里程从下一完整自然日开始轨迹、位置历史和 RAW 则可从精确启用时刻开始
### P0-02 全局监控客户列表重构