Files
story/docs/real-device-rtc-evidence.md
T

4.6 KiB
Raw Blame History

真实终端与RTC/语音供应商一致性证据说明

1. 目标与最小矩阵

cmd/rtc-conformance把同一发布候选的终端身份、RTC房间、语音供应商任务、状态时间线、双向媒体、最终字幕、用量、质量结论和资源回收形成real-device-rtc-conformance-report-v1。它用于防止模拟供应商、单一语音方式或“能够入房”被误登记为真实通话闭环已经完成。

为降低重复测试强度,真实验收采用6通最小矩阵:

  1. s2s_pure、s2s_hybrid、cascade各完成1次NORMAL_COMPLETION;
  2. 另外各完成1次TOKEN_RENEWAL、NETWORK_SWITCH_RECOVERY和CONTROLLED_STOP,异常场景可分配到任一已批准方式;
  3. 6通总体至少覆盖3台不同量产候选终端,每台至少参与1通。

协议模拟只能输出PROTOCOL_SIMULATION/external_validation_required=true。只有真实硬件与非模拟RTC/语音供应商证据完整时,报告才为REAL_DEVICE_RTC_PROVIDER/external_validation_required=false。

2. 单通通过标准

每通证据必须同时满足:

  • 终端使用自己的受控身份创建通话,房间、设备RTC用户、Agent RTC用户和供应商任务引用完整且与其他通话不重复;
  • 状态按ROOM_ISSUED → STARTING_AGENT → ACTIVE → STOPPING → COMPLETED收敛;
  • 终端入房成功,上行、下行、近端音频发布和远端Agent音频播放均通过;
  • 供应商启动和停止得到确认,同一稳定任务没有重复创建,终止后RTC与供应商资源已释放;
  • 最终字幕可见,用量已归集,业务方采用现场冻结的质量方法判定PASS;校验器不虚构主观分数阈值;
  • 凭证续签场景必须证明新短期凭证生效;网络切换场景必须证明媒体与状态恢复;
  • 保存云端、设备、供应商、质量和用量五类脱敏证据引用。

不得把RTC Token、AppKey、AK/SK、设备密钥、原始录音、完整字幕正文或个人信息写入采集JSON。房间、用户和任务使用脱敏稳定引用即可。

3. 采集结构

输入使用real-device-rtc-capture-v1:

区域 关键字段
候选 candidate_version、build_digest、environment
供应商 rtc_provider_ref、voice_provider_ref、rtc_application_ref、region_ref
管理 change_ticket_ref、执行人、独立复核人、复核/采集时间
终端 设备公开引用、型号、主板、固件、身份引用、音频配置引用
通话 方式、场景、房间/用户/任务引用、时间线、媒体、恢复、字幕、用量、质量、去重、回收和五类引用

真实采集的evidence_source固定为HARDWARE_PROVIDER_CAPTURE,环境只能为STAGING或PRODUCTION,执行人与复核人不能相同。模拟或本地工具使用PROTOCOL_SIMULATION/LOCAL。

4. 17项一致性检查

报告固定检查:采集模式、来源、候选身份、候选绑定、供应商身份、环境身份、设备覆盖、会话身份、三模式覆盖、四场景覆盖、RTC媒体路径、状态生命周期、凭证/网络恢复、供应商生命周期、字幕/用量/质量、证据引用和执行时间线。

REAL_DEVICE_RTC不可豁免。索引标记为VERIFIED时,第一个文件必须是同候选的PASS/REAL_DEVICE_RTC_PROVIDER报告。证据包中的real_device_rtc_validation汇总终端数、通话数、三模式、四场景及各自通话数量;协议模拟报告会被拒绝。

5. 现场执行流程

  1. 冻结候选镜像、三种已发布路由模板、真实RTC应用、语音供应商资源和3台候选终端。
  2. 依次执行三次正常闭环,确认终端不根据engine_mode改变固定媒体协议,只由云端选择供应商处理链。
  3. 使用剩余三通覆盖短期凭证续签、Wi-Fi/蜂窝或批准网络之间切换恢复、设备/运营发起的受控停止。
  4. 每通结束后核对供应商任务、云端状态、最终字幕、用量、质量记录和资源回收;发现不确定启动时确认稳定TaskId重试未产生重复任务。
  5. 由独立复核人核对脱敏引用后生成报告:
go run ./cmd/rtc-conformance `
  -capture E:\evidence\real-device-rtc-capture.json `
  -candidate-version 0.63.0-rc.1 `
  -build-digest sha256:<64位摘要> `
  -output E:\evidence\real-device-rtc-report.json
  1. 将报告作为REAL_DEVICE_RTC首个文件,重建候选证据包并确认coverage_complete=true。

本地只验证结构工具链:

.\scripts\smoke-rtc-conformance-toolchain.ps1

该脚本不会连接真实RTC,不修改业务数据,也不会把模拟结果计入真机门禁。