feat(ds-flow): 前端设计系统治理重构(Flutter 五端 + Web 两端) #2

Merged
wangjia merged 117 commits from worktree-macos-killswitch into main 2026-07-08 00:47:03 +00:00
Showing only changes of commit 038e5b6ab5 - Show all commits
+8 -2
View File
@@ -382,8 +382,14 @@ func (svc *Service) SessionActive(ctx context.Context, userID int64, deviceUUID
if err != nil {
return false, apierr.ErrInternal
}
if dev == nil || dev.UserID != userID {
return true, nil // 未知 / 非本人设备:不据此登出
if dev == nil {
// 设备行已不存在 = 本设备被「移除」(DeleteDevice 删行)。已登录的客户端在登录时
// 必然注册过自己的设备,轮询自身 device_id 却查无此行,只能是被移除 → 视为会话失效,
// 让其登出(否则被移除的设备永远收到 active=true,不退出,只表现为数据面被断→「节点异常」)。
return false, nil
}
if dev.UserID != userID {
return true, nil // 非本人设备 uuid:不据此登出(fail-safe)
}
active, err := svc.sessions.HasActiveSession(ctx, userID, dev.ID)
if err != nil {