record formal-chain no-dial host verification
This commit is contained in:
@@ -46,3 +46,11 @@
|
||||
受限证据 SHA-256:事前核查 `00fb8b880928cee988a66b73ab9484b8d9e33138c941ee1d23677c643d748343`;事后记录 `a78e5925b922a2392d7d78253beb64a3cba33ee0d6db879e1841ebedecb0b190`;原始 SQLite 只读备份 `5bcc3817929d86369f61dbbc8accf2334288f36dadd94d49c97f18d7c5988334`。这些文件只留测试机私有证据目录,不嵌入仓库。
|
||||
|
||||
**能确定的占用根因**:旧版 Agent 在已接纳执行的异步失败中只记录 `*errors.joinError` 类型,没有上报真实终结事实;Dispatcher 因此前已写入的 `dispatched` 状态持续计入额度。旧版 SaaS 等待器又把派发回执误作最终结果提前结束等待,但 Agent 错误发生在抓包收尾前,不能由此倒推它的底层失败原因。Agent 原始错误没有记录具体阶段、响应或子错误;目前的抓包、ARI 404 和 CORS 提示均**不足以确定当时具体为何失败**。新版已对确定未发起拨号的错误增加正式终结路径和分类日志,未知结果仍不自动清理。
|
||||
|
||||
## 单节点正式链路不拨号审查与新版预检
|
||||
|
||||
审查发现并补测两处边界:已接通但媒体初始化失败的通话,仅在挂断确认后上报真实失败结果;拨号前证据不再只检查抓包 PID 存活,还核对运行中的 `tcpdump` 正在写入本事件的 `capture.pcap`。继续检查录音/最终结果恢复时发现旧实现虽有私有恢复状态机,正式 Agent 启动却没有调度它;正常 PUT 后结果上报失败只保存在内存,重启会丢失。现已在使用者同意下,于 Dispatcher 确认最终结果前短暂保存私有结果文件;对已确认挂断但结束报告失联的无录音结果,重发同一结束事实;成功确认后删除临时文件。未确认的 PUT 不自动重传或宣称上传成功;旧恢复记录缺少原始租户/Dispatcher 绑定时保留原件并失败关闭。没有将旧未知执行改写成正式回执。
|
||||
|
||||
修复已作为 `1782f4e` 推送 `main`,本地 `make check`、`go vet ./...`、`go test -race ./...`、构建、隔离 RabbitMQ、合同/Proto 校验与 `make release-check-local` 均通过;业务覆盖率 **69.0%**。非生产包二进制 SHA-256:`ed4e05e18420b6192461270eadb14936acd20156540cead086653edc85a5ea2a`,`production_approval=false`。测试机保留旧发布目录,新建 `/opt/sip-go-agent/releases/nonprod-real-20261004-1782f4e` 并原子切换,Agent 与 Dispatcher 重启后 active;SaaS Mock 和原生 Asterisk 用户级服务也 active,Asterisk 服务 enabled。部署前私有恢复目录为空;部署后仍无恢复文件,未触发旧上传/结果恢复。
|
||||
|
||||
非呼出时段运行新版 `deploys/test/nonprod-call-evidence.sh --preflight-only`,只读/不拨号的 ARI、PJSIP、端口及抓包前置检查通过;受限原件留在测试机 `/var/lib/sip-go-agent/evidence/preflight-1782f4e-20261004/`,结果 SHA-256:`878300d385d12a3954a7a976b07a0cfe9c7da3b39179bc8b0195bceda619e7c8`,脚本 SHA-256:`81fc257cbc032cebd591181f4f6b56c8d3dbc3891265147b8772a9c8d8cbc6c7`。`preflight_only=1`、`call_exit=0`、`capture_status=0`,抓包 0 包符合预检;没有 armed 抓包凭证、没有活动通道或通话。以上仅证明新版本能在该主机运行并通过不拨号前置检查,**不证明真实 SIP/RTP、LLM 应答、录音、OSS 上传或最终结果已成功**;本轮没有拨号,也没有新的最终呼叫结果。
|
||||
|
||||
Reference in New Issue
Block a user