docs(plan): P4 收口 —— 每设备归因链路已交付,展示层过滤归 #10

每设备流量归因基础设施由 P1-P3 完整交付(注册→dp_uuid→usage_device_daily,
store 测试已锁)。统计页设备下拉「真过滤」需 per-device 每日曲线 API(现 provider
只给窗口聚合,对不齐月/周/日卡),归入统计整改 #10;端到端需真连客户端人工验证。
不做 ConnectNode 兜底(登录已注册;connect 体无 name/platform)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
wangjia
2026-06-29 06:14:19 +08:00
parent 58526b09e6
commit 606e5e9e54
@@ -41,12 +41,15 @@
- [x] 测试:ForceLogout 删 jti+标 revoked_atDeleteDevice per-device revoke
- [ ] 验收:强制退出→refresh 失败;清除→设备消失+凭证作废
## P4 · 每设备流量验证
- [ ] `ConnectNode` 兜底 `RegisterIfAbsent`device 缺失时)
- [ ] 端到端确认 `usage_device_daily` 填充
- [ ] 统计页设备下拉接真实设备 + `deviceUsageProvider`#10
- [ ] 测试:集成(注册→连接→上报→有行);统计页设备下拉 widget
- [ ] 验收:统计页按设备看分流量
## P4 · 每设备流量(基础设施已由 P1–P3 交付;展示层收口归 #10)
**结论**:每设备归因**链路已通**——登录注册设备 → connect `EnsureDeviceDpUUID` 命中 →
铸 per-device dp_uuid 下发 sing-box → `ReportUsage``UserDeviceByDpUUID`(deviceID>0)
`AccumulateDeviceUsage``usage_device_daily`store 测试已锁)。
- [x] 链路打通(P1P3 交付);不做 ConnectNode 兜底:登录已注册,且 connect 体只带
device_id、无 name/platform,不宜在此造半残设备行
- [ ] **统计页设备下拉真过滤****归入统计整改 #10**:需新的 per-device **每日曲线 API**
(现 `deviceUsageProvider` 只给单设备窗口聚合,对不齐月/周/日卡 + 14 天折线的每日数据)
- [ ] **端到端**(注册→连接→走流量→`usage_device_daily` 有行):需真连客户端,**人工验证**
## P5 · (未来)2FA 信任设备 —— 本轮不编码
- 占位:清除联动 `totp_trusted_until`P2 已预留列)。