议题背景:
客户端崩溃治理长期面临"发现不全、修复太慢"两大瓶颈:Top 问题占满注意力、长尾问题无人问津,而单个生产 Bug 修复全流程耗时 2–10 小时,且严重依赖开发者个人经验。我们针对 Android/iOS 双端 Crash 构建了"动态归因 + 自动修复"的智能体流水线:提单后问题自动进入修复队列,Agent 基于堆栈、Metrickit 全线程堆栈、内存镜像、上报附件等完整现场数据做深度归因,自动生成修复方案、执行编译校验并提交 MR,结果自动回写 tapd。
内容大纲:
1. 问题背景:崩溃治理的双重瓶颈
1.1 发现不全:Top 问题占满注意力,长尾崩溃沉默拖累大盘(今天影响 2 台设备,明天可能波及上万用户)
1.2 修复太慢:单个生产 Bug 修复全流程 2–10 小时,写代码仅占 10–15%,其余耗在定位与流程
1.3 经验鸿沟:同一个 Native Crash,资深与初级开发者定位耗时差异达数倍
2. 技术方案:AI 介入 Crash 治理全链路
2.1 端到端流水线:提单 → 自动进队列 → 动态归因 → 生成修复方案 → 编译校验 → 提交 MR → 回写 tapd
2.2 双端差异化设计:iOS Crash/watchdog 与 Android Crash/内存泄漏的不同归因策略
2.3 深度动态归因:结合堆栈、源码上下文、Metrickit 全线程堆栈、内存镜像对象引用链、进程/线程信息、用户操作路径还原现场
2.4 "看代码 vs 看现场"分类:逻辑异常(空指针/类型转换)通用 Agent 可解,运行时异常(OOM/内存泄漏)必须依赖平台完整现场数据
3. 关键技术实现
3.1 数据 MCP 服务化:14 项能力(Crash 详情、附件查询、堆栈解析、下钻分析、防劣化指标等)
3.2 Agent 部署工程化:服务器接收任务自动调用,所有正式版本 Crash 提单后自动运行
3.3 多轮对话与模型选型:切换 多个模型,支持多轮对话更优分析、历史会话保留、自主选模型、二级聚类单独分析
3.4 修复闭环:一 Issue 一分支一 MR、报告自动上传 COS、tapd 单自动附加修复结论与评论、MR 状态自动追踪
4. 落地效果与数据收益
4.1 覆盖率:整体 Crash 自动修复覆盖率 70+%
4.2 采纳率:iOS Crash 80%、安卓 Crash 82.1%
4.3 接入规模:共 8 应用,MCP 周调用 1.2W–3.3W 次
4.4 能力边界:已从单一 Crash 扩展至 ANR/watchdog、内存泄漏,并联动大盘指标波动自动分析
5. 未来演进
5.1 场景扩展:从"新版本新增问题"到"历史长尾清理""指标告警应急""开发阶段日常新增"
5.2 防患于未然:在问题还是"小问题"时修掉,不给它突变为"大故障"的机会
听众收益:
1. 完整的 Crash 自动修复工程化落地范式:如何把"提单 → 动态归因 → 生成 MR → 回写 tapd"做成端到端可追溯、可度量的自动化闭环,并用数据(覆盖率 70+%、采纳率 80%+)验证收益,可直接迁移到自己的质量治理体系。
2. 平台级现场数据是运行时异常归因的胜负手:为什么第三方 AI 代码工具做不好 OOM/内存泄漏归因——差距在于能否拿到 Metrickit 全线程堆栈、内存镜像引用链等完整现场;听众可借鉴"数据 MCP 服务化 + Agent"的架构思路。