Seetong · Report
🎯 Seetong 问题雷达 09:00 第80期
时间窗口:2026-07-30 01:00~09:00
TL;DR 核心要点
- 本期无新增严重问题:没有候选达到 60 分,未进入 Stage 2~3 的正式问题分析。
- 🟣 -102/-1002/-101 占 17/29,仍是跨地区、跨版本的普遍连接类反馈,按规则排除;与 7 月 29 日已分析项重复。
- 观察项:同一 iOS 客户端两次“重置密码失败(30000126)”,日志确认服务端返回“授权 token 已过期”;覆盖仅 1 名用户,暂不升级。
最近一个月 Top 问题
按严重度与复发期数排序,已把跨期同类反馈归集;负责人由问题代码锚点对应的 Git 提交历史(blame / 近期主要提交者)反查;数据窗口:最近 30 天(截至 2026-07-30)。
| # | 问题(严重度降序) | 严重度 | 平台 | 版本 | 负责人 | 问题原因 |
|---|---|---|---|---|---|---|
| 1 | 设备离线/P2P 通道失败(5 条 8h) 1 期 | 90 | — | 8.2.1.3 / 8.3.10.2 / 8.3.12.5 | 唐胜、许源、张威 | 用户设备 lastHeartTime 自 2026-07-03 02:25 起完全停止(用户尝试断电重启无效),客户端 TPS_MSG_P2P_OFFLINE 反复触发导致离线提示循环,但设备侧的物理掉线才是真实根因 |
| 2 | 回放入口/状态映射异常:无存储能力设备仍露出回放入口 2 期 | 70 | Android | 1.1.0.9 / 8.1.2.4 / 8.3.12.5 | 唐胜、张威 | 回放入口与录像状态 UI 主要依赖 sdRecordStu/权限,但未同步校验 NO_LOCAL_STOARGE 与 SDCardState=0,导致无存储能力设备仍可能暴露回放预期或状态显示异常。 |
| 3 | 在线看不到 1 期 | 70 | Android | 8.3.13.3 | 张威、唐胜 | NVR 通道预览链路在握手后立即被底层判为 PeerOffLine,APP 按现有逻辑只做快速重试,没有把通道离线与临时连接抖动区分开,最终表现为“在线看不到”。 |
| 4 | 多端手机端无回放 1 期 | 70 | Android | 1.1.1.6 / 8.3.13.3 | 冉博麟、李国涛 | (本期未收敛到单一根因) |
| 5 | 设备离线/掉线后无法预览 1 期 | 70 | Android · iOS | 1.1.1.6 / 8.2.2.1 / 8.3.13.3 | 唐胜、张威 | 设备预览链路在收到 TPS_MSG_P2P_OFFLINE 后直接走离线兜底分支,UI 进入“该设备不在线”,而自动恢复逻辑又被离线判断短路,导致用户感知为“掉线后无法再连上”。 |
| 6 | 录像回放缺失 — 无 SD 卡的设备被直接引导云存购买(产品设计问题) 1 期 | 65 | Android · iOS | 8.3.12.5 / 8.3.13.3 / 8.3.13.4 | 张威、唐胜、陈宝旺 | 无 SD 卡 + 未开通云存的设备,在 NVR 回放协议响应无效时直接跳转云存购买页,没有任何"为什么没录像"的说明,用户感知是"以前能看现在不能" |
| 7 | 设备二维码模糊/找不到(3 条 8h) 1 期 | 65 | — | 8.3.12.5 | 待定 | (本期未收敛到单一根因) |
| 8 | Android NVR 回放/预览偶发不出图,断开重连后恢复 1 期 | 60 | Android | — | 唐胜、张威 | NVR 回放/预览链路在首次 addWatch + 查询录像时间片 阶段存在瞬时失败,UI 侧又把多类失败统一收敛为空/超时,导致用户感知为“不出图,重连才恢复”。 |
| 9 | Android 监控预览 addWatch 失败 + 10 秒循环重试 1 期 | 60 | Android | 8.3.13.3 | 唐胜 | Android 端 LibImpl.startPlay 把 addWatch 返回的 P2P 断连错误码(-1)通过 if (ret == SDK_CONSTANT.ERR_P2P_DISCONNECTED) ret = 0; 强制归零,导致上层误以为流启动成功,进入 10 秒循环重试;用户看到的"长时间缓冲"实质是 10 秒 × N 次的循环重试视觉感受 |
| 10 | iOS 8.3.12.6 灰度放量新症状 4 期累计扩散 1 期 | 60 | iOS | 8.3.12.5 / 8.3.12.6 | 欧阳荣、谭伟 | iOS 8.3.12.6 客户端第三方微信登录→绑定手机号→触发滑动验证→重发短信验证码的全链路(BindNewPhoneOrEmailViewController.m:317-378)均正常工作,服务端短信下发接口返回 200 成功,根因在第三方短信通道商下发链路(运营商拦截 / 短信网关失败 / 用户手机短信拦截),非客户端代码问题。 |
本期扫描全量
| # | 关键词 | 反馈数 | 分类 | 处置 |
|---|---|---|---|---|
| 2 | 重置密码失败 30000126 | 2 | 🟡 单用户会话失效 | 观察,不进雷达 |
| 3 | 回放缺失、无声音、画面异常、卡顿 | 5 | 🟢 分散单例 | 未形成共性 |
| 4 | 深色模式等功能诉求 | 5 | 🟤 心愿单建议 | 排除 |
已折叠 1 条普遍性网络问题(含-102/-101/-1002与中/英/俄/法/西/葡/土/阿/日多语言网络提示模板,如Проверьте телефонную сеть、Please check your mobile network);全量明细见同名 Markdown 知识库。
观察项:iOS 本机号码重置密码返回 30000126
- 现象与评分:反馈
#239247/#239248相隔约 90 秒,均来自同一 iOS 8.3.13.4 客户端、同一地区。反馈量 10/30,共性 10/30,业务关键度 25/40,合计 45/100,未达升级阈值。 - 神策证据:
Login事件按error_code查询正常;7 月 24 日至 29 日的高频项稳定为SA105003、200、-102、-1002,未见该单用户现象对应的异常放量。7 月 30 日截至 09:00,Login 为 130,527 用户/165,095 次,属半日数据。 - Logan 证据:同一日志在 07:39 先完成
/password-reset/local-number/check;07:59 及 08:00 调用/password-reset/local-number时,服务端返回{"code":30000126,"msg":"授权token已过期"}。日志还显示备用域名一次-102后主域名校验返回 200,最终失败点是本机号码授权令牌失效,不是密码参数错误。 - 代码定位:iOS 接口常量将该流程分为
APIs.h:209的本机号码校验和APIs.h:211的本机号码重置;Android 对应错误码定义为AccountCodeUtils.kt:95的ERROR_ONE_KEY_TOKEN_EXPIRE。调用链为“本机号码校验”→ 获取checkCode→ “本机号码重置”。本次未发现客户端将过期令牌误映射为成功的证据,修复锚点应在服务端令牌有效期/客户端失效后重新校验的交互约定。 - 结论:置信度:🟡 中。 当前证据支持“单次会话超时后重复提交”,不足以认定为线上回归。若同错误码在 8 小时内增至 3 条或跨用户出现,再升级核查令牌 TTL 与重试交互。
数据源状态
| 数据源 | 状态 | 说明 |
|---|---|---|
| 反馈平台与心愿单 | ✅ 正常 | 反馈 100 条可用,按 8 小时窗口筛得 29 条;心愿单本次返回 0 条 |
| 神策 | ✅ 正常 | query_segmentation_report 与 Login 趋势查询成功 |
| Logan | ✅ 正常 | 两份 iOS 日志均可下载,定位到服务端响应 |
| 友盟 | ⏭ 跳过 | 本期无崩溃、ANR、黑屏类反馈 |
| TAPD | ⏭ 跳过 | 无已知 BUG 单号,且本期无功能性根因项 |
| 代码仓 | ✅ 正常 | iOS/Android 重置密码接口与错误码已定位 |
待补证
- 观察后续是否出现跨用户的
30000126重置密码失败。 - 若升级,联合服务端确认本机号码
checkCode的有效期与刷新策略。
下一期 = 第81期 = 2026-07-30-H17(今天下午 17:00)
本消息由 Seetong小助手 自动生成,欧阳荣 监督发布。