THAMO 首期分阶段实施文档
版本:1.2 · 2026-11-02。状态:阶段1–3本地开发闭环完成,阶段4–6待实施;真实SIM/MMS/双卡与发行覆盖仍须阶段6验证。
本文件替代此前按天数估算的实施排期。以阶段交付与可复现验收推进,不预估天数、不因代码写完就认定阶段完成。用户已授权按计划落地;当前执行记录见阶段1交付报告、阶段2交付报告及阶段3交付报告,未将本地验收当作生产发布。
1. 产品范围与当前基线
目标:THAMO = 真正默认短信 + 真正默认电话 + App安全扫描 + Gemini + OTP账户 + 三类云端记录 + 保护开启度。无浏览器、录音、广告、贷款、沙箱、复杂画像平台或微服务拆分。
• 代码仓库:Codeup Anti-Scam;本地 /Users/zhufeng/Projects/Anti-Scam。
• 现有提交基线:c3a8df3。当前仍是AGLO集成源码,包含浏览器,不能称为THAMO目标版本已经交付。
• 已有资产:短信底座、OTP/会话、MySQL、HTTPS、Gemini、短信存储和初版后台。既有验证见 docs/releases/0.6.0 与 docs/research-and-validation;实施前重新检查实际状态,不把旧报告视为当前验收。
• 已有设计:design/thamo-v1.1/;PRD:thamo-v1.1-prd.md。原型的固定演示码、弹层与数据全部是设计示意,不迁移到生产逻辑。
• 待建设:真正默认电话、原生新体验、App真实扫描、三类统一同步、完整轻后台、运行态评分及Play候选材料。
本次范围由本文件及最新v1.2 PRD确定。旧README/AGENTS所记“AGLO安全浏览器”描述的是现有实现,不覆盖用户最新产品方向;移除浏览器在阶段2执行,不提前改代码。
本次修订
新增举报与图片生命周期、自动分析队列、高危候选/有效库、三类信任规则和误报修正。公开URL种子/官方身份基线提前到阶段1,阶段3开始实际检测可直接使用;阶段5只补应用身份/恶意情报。举报复用OTP账户,首期不建匿名身份系统。继续按六阶段实施,不估算天数,不引入人工逐条审核岗位。
需求与验收矩阵为各阶段放行依据;专项规格固定举报、任务、情报、信任状态。阶段1已交付后端/合成验收范围,后续阶段待开始;详见阶段报告。
2. 六个阶段与可见结果
| 阶段 | 核心结果 | 用户验收入口 | 前置依赖 |
|---|---|---|---|
| 1. 小后台与客户数据底座 | 客户、设备、三类记录、举报/线索/信任底座与URL种子可存可查 | 后台客户列表与详情,合成数据标记明确 | 现有仓库及配置核验 |
| 2. THAMO原生外壳与注册 | 新Logo、四入口、OTP、首次引导框架;移除浏览器 | 模拟器APK及注册/会话流程 | 阶段1账户与设备接口 |
| 3. 短信保护与真实同步 | 默认短信、Gemini、短信上传、三类举报与自动分析闭环 | 短信到达→风险→后台同一条记录 | 阶段2;阶段1短信/举报/情报契约 |
| 4. 默认电话与通话同步 | 完整默认电话、来电筛查、通话记录上传 | 拨打/接听/结束→系统记录→后台 | 阶段2;电话底座及权限验证 |
| 5. 应用安全扫描与清单同步 | 包名、签名、来源、情报检查及AppList上传 | 实际扫描结果与后台对应快照 | 阶段2;扫描范围及情报许可 |
| 6. 全链路与Play候选 | 统一引导、真实100分、回归、正式候选材料 | 连续用户旅程、APK/AAB、审核材料 | 阶段1–5交付 |
默认按阶段顺序落地;完成阶段2后,短信、电话、应用工作包可在接口冻结后由Codex并行处理。主会话统一验证集成与证据,不让并行改动破坏同一模块。按阶段启动,不为整项目提前铺大量未使用基础设施。
3. 阶段1:小后台与客户数据底座
工作清单
• [x] S1-01 核仓库、未提交设计、服务与数据库状态;保留AGLO回退点,不覆盖WIP,不接贷款库。
• [x] S1-02 复用OTP、会话、管理员登录与MySQL,修补缺口;固定用户/设备关系、数据同意及删除语义。
• [x] S1-03 固定三类数据与状态的最小接口契约;复用已有短信API,避免无必要重命名。
• [x] S1-04 建立可回滚的新增表/字段:应用快照、通话记录、保护状态及必要索引;不重建已有库。
• [x] S1-05 三类上传的鉴权、设备绑定、分页、幂等ACK、批次游标、撤销同意检查与错误码。
• [x] S1-06 后台做客户列表、设备详情(三类记录/状态页签)、必要运行状态和轻量线索/信任页;按用户、时间、风险预设查询,不做任意SQL网页控制台。
• [x] S1-07 加入原文查看审计、服务/管理/只读分析账号分权、删除与保存期限任务。
• [x] S1-08 使用显式合成样本验收,并清理或隔离样本;不得把人工写入数据算手机同步成功。
• [x] S1-09 提前做电话候选源码/许可和情报接入的只读检查,记录真正缺口,不在本阶段提前扩建完整电话。
• [x] S1-10 加入登录举报/私有附件/指标证据/信任规则契约、回执与MySQL异步任务骨架;初期合成记录,拒绝跨账户读取和删除后晚到结果。
• [x] S1-11 固定许可明确的公开URL源与官方身份出处,在暂存区导入小批候选种子;保留版本/来源/时间,不浏览危险目标、不默认全局生效;不为了导入要求开付费账户。
• [x] S1-12 轻后台增加线索/信任页签,支持候选/有效/冲突/撤销/过期和作用范围;数据来源有实证,尚未接入的显示未接入。
数据与接口契约最低内容
公共字段:account_id(由会话确定)、installation_id、schema_version、batch_id、source_record_id、event_time、client_version;APP不得通过任意传user_id选择别人的账户。
短信:正文、地址、方向、发生时间、来源ID与风险版本;OTP/PIN/密码类排除。应用:包名、版本、证书、安装来源、扫描结果及快照完成标记。通话:号码、方向、开始时间、时长、类型、可获得线路信息;不含录音。
ACK返回batch_id、接收/插入/更新/重复/排除数量、已确认游标与服务端时间。游标只能确认已提交成功范围;部分失败必须给出重试边界,不以整个批次“200”冒充全部成功。事务或原子批次策略明确且可测试。
状态字段:当前角色/权限声明、功能就绪、同意版本、每类扫描完成/空结果、ACK、规则/情报版本、最后心跳、缺失原因。先存事实,不因有记录直接给30分。
历史策略沿用PRD:首次默认近180天,可选范围;后续增量。手机本地删除默认不自动删除云副本,云删除不删除手机;App卸载以快照变化标记。首期不是双向恢复服务。
存储:普通MySQL业务字段支持查询;不新建字段加密框架,不自动解密既有数据。HTTPS、数据库非公网、秘密哈希/HMAC、审计及备份保留。已有密文字段与新可查询字段如何兼容须记录,迁移先在隔离库验证、确认回滚,不静默降级整库。
交付与完成条件
交付后台页面、数据库迁移及回滚说明、接口契约、复现脚本与测试结果。证明注册/会话接口与用户库相连;三类合成记录可上传、查回、去重、删除;跨用户读取受拒;未同意上传受拒;状态不假满分。举报/任务/指标/信任对象可查询且隔离,重复提交可返回本人同一回执;公开小批种子来源可核验、保持候选。真实商业OTP送达、手机Provider读取仍标未验收,不阻止后台阶段收口。
4. 阶段2:原生THAMO、OTP与引导框架
• [x] S2-01 保留回退版本,移除浏览器模块依赖、入口和浏览器intent,不仅隐藏Tab;复用账户、短信及检测代码。
• [x] S2-02 使用已设计的Logo、橙红/墨蓝视觉、四入口;不把HTML演示复制成联网功能。
• [x] S2-03 手机号OTP、错误/过期/重发、会话恢复/退出,连接阶段1接口;手动输入即可,不依赖先给短信权限。
• [x] S2-04 一次收益/云端数据说明,分范围记录同意;引导读取真实系统状态,已有步骤跳过、拒绝不循环、再次进入可续接。
• [x] S2-05 仅对已实现且具备资格的模块请求系统角色;电话/扫描尚未实现时展示待接入,不申请空壳角色、不伪造完成。
• [x] S2-06 原生状态面板和服务器上报;只给实际满足项的分,截图演示码不进入业务APK。
交付:版本化APK、安装证据、包名/版本/签名/SHA-256、界面截图。完成条件:无浏览器残留入口,注册/会话连接真实接口,拒绝/撤权不死循环,后台出现对应设备。使用受控测试验证可完成,但必须标清短信是模拟器注入还是运营商投递。
用户此前明确不要求商业测试短信:开发期间不向现有客户发送,不反复索要号码。供应商配置和适配可验证,真实送达仅以用户主动注册或另行授权的受控验收为证;没有证据就保留未验收。
5. 阶段3:短信反诈与上传闭环
• [x] S3-01 默认SMS真实角色、模拟器文本收发/321字符长短信/会话与风险展示;真实SIM/双卡/MMS完整回归在阶段6作为发行门槛,不视为本次已通过。
• [x] S3-02 收件先写Provider;本地规则先行,异步Gemini判断含糊场景;统一风险/未完成解释与模型版本。
• [x] S3-03 发送内容先排除认证秘密,无模型指令执行;超时不妨碍正常短信。
• [x] S3-04 历史分页、新消息增量、Room任务、WorkManager重试、幂等ACK、游标;断网恢复。
• [x] S3-05 撤角色/同意或退出时停止对应读取上传并清理未发队列;旧回调不能恢复已撤销任务。
• [x] S3-06 短信、URL、截图举报:复用OTP账户,一张表单、草稿/私有附件/回执;未登录先保留草稿再注册,举报同意独立于自动云同步。
• [x] S3-07 图片选择/预览/确认、格式体积校验、Gemini图像理解与文本提取;不自动采集全相册;回执明确未完成状态。
• [x] S3-08 规则/情报/Gemini结果合并、证据分层与固定发布判定;任务、风险、发布三种状态分开;防提示注入和刷量,模型不能独断全局封禁。
• [x] S3-09 启用有上限重试/租约恢复/幂等结果提交的单工作进程;URL种子与身份源的受限增量更新、暂存校验、影子评测、原子发布/回滚;源故障不变安全。
• [x] S3-10 个人信任、官方身份匹配、指定消息隐藏及误报反馈;作用域、期限与冲突可见。不把举报当训练标签;全局特定规则例外/编辑随S6-11质量验证后开放。
完成条件:同一合成短信有系统记录→App风险→服务器记录→后台查回的连续证据;重复不增行,断网可补传,OTP类不上传,撤权后不采集。实际Gemini调用证明单独保留model/status,不用Mock命中替代。虚拟modem发件与真实SIM投递分别记录。
6. 阶段4:真正默认电话与记录上传
• [ ] S4-01 固定成熟电话底座的版本/提交、许可证、依赖与维护风险,完成实际构建;优先复用,不重写Telecom。
• [ ] S4-02 集成ROLE_DIALER、ACTION_DIAL和完整InCallService;接听/拒接/挂断、锁屏/后台来电、通话中控制、双卡、音频路由、未接通知、回拨与记录管理。
• [ ] S4-03 系统支持的保持/切换/呼叫等待/蓝牙能力做回归,不做额外深度定制;紧急呼叫遵循系统路径,不主动拨紧急号码测试。
• [ ] S4-04 ROLE_CALL_SCREENING独立实现,已确认号码情报/个人黑名单先行,限时查询;未知或超时放行,不等Gemini,不录音。
• [ ] S4-05 通话结束后读取稳定系统记录,历史/增量上传;缺失、隐藏号码和不支持线路字段明确为空,不能猜测或填造值。
• [ ] S4-06 与后台核对来源ID、方向、时间和最终时长;撤角色停止,客户端不能自造“全历史已上传”。
完成条件:模拟器证明基本框架、角色、接口和合成记录;真实设备证明实际通话与目标适配。只有模拟器时可标“开发闭环完成/真机待验”,不能将整阶段发布验收标通过。未支持OEM/双卡/音频场景逐项列出;不能宣称已解决。电话底座失败时调整方案,不改成只读CallLog壳后仍叫默认电话交付。
7. 阶段5:应用安全扫描与AppList
• [ ] S5-01 明确可见范围及QAP必要性;当前用户空间内枚举,拒绝越权或绕过。
• [ ] S5-02 包名/版本、SigningInfo及证书轮换、InstallSourceInfo或适用替代、可获得哈希与风险权限线索。
• [ ] S5-03 建立可核验官方应用身份基线;接入有许可的真实恶意情报并记录来源、版本、有效期和缓存限制。
• [ ] S5-04 分开“高风险”“需要核实”“暂未见明显风险”“未检查”;来源未知和远控工具本身不直接判恶意。
• [ ] S5-05 实际扫描、APK系统选择器检查、结果与处理入口;卸载走系统确认,不自动操作。
• [ ] S5-06 完整快照及增量变化上传,后台可查证书和扫描证据;空清单与可见性不足区分。
• [ ] S5-07 接入应用专用身份/证书/恶意情报,与阶段3已有来源及版本机制复用;禁止无授权导入非商用源,不重复建设独立情报平台。
完成条件:真实安装包元数据和设备扫描与后台一致;受控有来源样本证明检测,不用演示包名规则冒充完整恶意引擎。情报不可用显示覆盖不足,此时不能把应用项记30分。QAP政策允许场景、提交声明、已获批准分开记录;尚未获批不阻止隔离开发验证,但不能把限范围版宣称全机已扫描。
8. 阶段6:统一验收与Play候选
• [ ] S6-01 串起新装→OTP→说明/同意→角色/权限→扫描/上传ACK→App及后台100分;空数据、部分开启、撤权、离线、恢复均验证。
• [ ] S6-02 四项评分固定为账户10/短信30/电话30/应用30,模块功能与云确认必须同时成立;24小时未更新标上次状态。风险提示不被满分遮盖。
• [ ] S6-03 2GB/弱网目标与不同Android版本/实际孟加拉常见设备验证;记录崩溃、ANR、耗电、同步量与延迟,按问题调整,不虚报覆盖。
• [ ] S6-04 Bangla文案/排版一致性与独立Bangla/English/Banglish评测;真实用户语言反馈单独留证,不以AI自评替代;精确率/召回/误报及未覆盖范围;不拿训练/模板重复样本作效果证明。
• [ ] S6-05 隔离、删除、保存期限、只读分析与导出审计、备份恢复到隔离环境验证。
• [ ] S6-06 正式包名/签名/AAB/API36、合并Manifest和SDK审查、GPL对应源码;开发签名不作为正式签名管理方案。
• [ ] S6-07 商店详情、权限声明、Data Safety、突出说明、公开隐私与注销网页、审核视频及访问路径;没有隐藏审核OTP/AB行为。
• [ ] S6-08 按实际目标年龄补齐适用儿童/监护与模型条款设计,不默认为成人专属;开发者账户决定封闭测试要求。未满足的生产准入明确列项。
• [ ] S6-09 输出可提审候选包与材料;提交、审批、生产发布分别记录,不因为阶段完成自动声称Play批准。
• [ ] S6-10 验证截图伪造/提示注入、恶意举报、同源镜像双计数、官方身份与恶意内容冲突、个人信任作用域、上游撤回、附件隔离/删除;自动流程无人工值守也可运行。
• [ ] S6-11 完整真实SIM/双卡/MMS与省电后台回归;经冻结误报/正常样本验证后开放特定对象/规则/期限的全局例外与策略发布,不让AI或单条投诉直接改规则。
完成条件:无影响收发/接听/挂断的已知严重问题,无角色撤销继续采集、跨用户访问、无ACK满分、秘密上传等失败;真机未覆盖、情报许可、目标年龄或权限申报存在关键缺口时明确“候选仍待补项”,不伪报可发布。
阶段状态与关键失败处理
| 阶段 | 当前状态 | 不可提前宣称的结果 |
|---|---|---|
| 1 | 本地实现/合成验收完成 | 真机已采集、真实模型已分析或公网已上线 |
| 2 | 本地lab模拟器验收完成,范围见阶段2报告 | 设计原型已成为业务APK |
| 3 | 本地短信/模型/举报/情报闭环完成,见阶段3报告 | 真实市场准确率、运营商/MMS/双卡、确认高危全量覆盖 |
| 4 | 未开始 | 真实SIM/双卡/锁屏兼容已通过 |
| 5 | 未开始 | 已有全量恶意App覆盖或QAP获批 |
| 6 | 未开始 | 已提审、已批准或已上线 |
验收对应AC01–AC24。阶段1只验后端/合成/源接入部分,后续阶段补实际设备与真实模型部分;不把一个案例的一部分通过标成全部通过。
Gemini失败:任务按上限重试后返回未完成,本地短信/电话继续。源失效:保留仍有效旧版、标陈旧,不清空白名单或把全部未知判安全。数据删除/撤权:停止采集/排队,并在服务端结果提交前复查;晚到回调不得复活。默认电话底座未满足基本功能:保留明确缺口,不降为读记录壳。跨账户读取、角色撤销继续上传、无ACK满分等属于阶段失败,修复后复验。
9. 证据、状态与阶段交接
阶段1–3完成范围由交付报告和证据限定;阶段4–6未开始。已有组件和设计不自动证明手机或线上链路通过。
每阶段保留最少四份材料,优先机器可读结果和必要截图,不写大量过程流水账:
1. 范围与变更:涉及文件、数据库迁移、接口/规则版本、提交或文件摘要。
2. 可运行产物:后台入口或APK;APK注明包名、版本、签名摘要和SHA-256。
3. 验证:复现动作、输入类型、实际结果、服务端/设备关联,脱离真实客户数据可重复运行。
4. 交接:完成项、未确认项、阻点、回退方式、下一阶段可直接开始的任务。
输出位置建议:docs/implementation/stage-N-report.md;docs/implementation/evidence/stage-N/。不保存凭据或原始客户数据;合成数据明确标识。未执行不提前创建“通过”的报告。
阶段汇报用固定短格式:交付什么 → 如何实际使用 → 哪些验收通过 → 尚未证明什么 → 下一阶段。区分设计原型、静态代码、Mock/单测、模拟器、实际供应商、真机和Play结果,不相互替代。
不为每个可逆开发动作反复请求确认。用户启动某阶段后,Codex完成该阶段内必要实现、测试、修复与交付;关键输入缺失时继续独立可做部分,具体说明缺什么。按用户已授权的分阶段范围推进,每阶段形成可查看的实际交付;不为阶段内可逆必要工作重复询问。
10. 需求变更与范围控制
先完成六阶段核心链路。新商业化、浏览器、远控、语音监听、任意数据利用、数据平台等不顺手加入。Play或技术事实迫使调整时,修改本实施文档和PRD对应条目,说明影响与证据,不静默删能力。
生产数据迁移、服务更新、真实客户触达、Play提交按后续明确执行范围处理;写实施文档本身不触发这些操作。保留现有AGLO线上体验,不用新阶段半成品直接覆盖。
下一步执行入口:阶段4——成熟默认电话底座、InCallService、来电筛查及通话记录同步。阶段3开发交付与待发行项见../implementation/stage-3-report.md。
举报与情报专项规则:线索举报、高危库与白名单增补。公开来源核验位于 ../research-and-validation/thamo-threat-library-sources-20261102.md。阶段1实际实现与遗留项按交付报告,不以原型替代真实服务。