feat(app): 选图拦截 v2——硬封锁+仅本机判定,治点选卡顿与连点强穿

问题(用户反馈):v1 服务器单项预检(2s 帽)弱网下把每次点选的勾选卡
0.5~2s(selectPredicate await 期间 selectAsset 不执行);配合「二次点击
强制选择」活口,重复照片被连点强制选中,拦截形同虚设。

- 判定仅查本机 TaskStore(毫秒级)——服务器查重退至入队统一弹窗+409 兜底
- 硬封锁:本机命中每次点击均拒选(_forced 放行集移除),文案不再引导再点
- 判定缓存升级 in-flight Future 共享(putIfAbsent):同一照片连点只判一次
  (清偿 9-29 评审登记 Minor 遗留)
- 构造去 client/serverCheckTimeout;iOS title 空放行(跨设备判定在入队弹窗)
- 已接受限制(用户拍板 A):后台已删照片重传同文件被本机历史永拦

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
浅念
2026-09-29 14:24:53 +08:00
parent d0755aa466
commit f88c1c170a
7 changed files with 201 additions and 342 deletions
+1 -1
View File
@@ -351,7 +351,7 @@
}
},
"uploadPickNone": "No photos selected",
"pickerDuplicateBlocked": "Already uploaded to this album — tap again to select anyway",
"pickerDuplicateBlocked": "This photo has already been uploaded to this album",
"albumManagePhotos": "Manage photos",
"albumTakeFirstPhoto": "Take the first photo",
"albumUploadDisabledHint": "Uploads are off for this album. New photos cannot be added right now",