DSHA://DOCS

协议与拒绝码

七段执行流程、退出码阶梯、六种拒绝码的含义与处置。

七段执行流程

一次调用会依次经过七个阶段,任何一段失败就停下:

阶段标识职责阻断时的退出码错误码
1ingress_validation校验入参,设定超时与工作路径128ERR_PROTOCOL_VIOLATION
2intent_routing解析意图,给出得分占比与命中依据127ERR_ROUTE_FAILED
3envfeel_prerequisites探测依赖是否存在、版本是否满足、实测能否拉起126ERR_PREREQUISITE_MISSING
4tier_authorization读取当前挡位,拦只读下的写操作与越权126ERR_PERMISSION_DENIED
5catalog_containment校验解析出的目标是否落在受信根目录内125ERR_TARGET_OUTSIDE_SANDBOX
6sandbox_execution在剥除敏感凭证的最小环境里派生进程124 或子进程退出码ERR_EXECUTION_TIMEOUT / 非零
7egress_packaging封装返回包,生成并保存执行凭据0正常交付

六种拒绝码

错误码退出码发生阶段触发原因怎么办
ERR_PREREQUISITE_MISSING1263工具声明的运行环境没找到,或实测探针拉不起来按返回里的修复建议在宿主安装该工具链
ERR_PERMISSION_DENIED1264当前是 read-only,而请求的工具带写操作由用户在宿主界面切换挡位,AI 不能代劳
ERR_TARGET_OUTSIDE_SANDBOX1255解析出的启动目标落在受信目录之外检查索引映射配置,不要用相对路径逃逸沙箱
ERR_EXECUTION_TIMEOUT1246外部进程超过设定阈值(默认 180 秒)查目标进程是否死锁或网络假死;必要时调大 timeout
ERR_LAUNCHER_NOT_FOUND1272 / 3启动器脚本在磁盘上丢了重跑安装器修复环境
ERR_SUBPROCESS_EXIT_NONZERO1–2556操作系统进程自己报错返回非零看 stderr,再用 retrace 取现场

退出码阶梯只区分层级,不区分"是谁的错"。

124 超时 / 125 越界 / 126 前置或越权 / 127 路由或启动器 / 128 协议违规。看到哪个数字,就知道在哪一层被拦下的。

注意 ERR_SUBPROCESS_EXIT_NONZERO 的范围是 1–255,和上面几个数字重叠。所以判断时要结合阶段号一起看,别只看退出码。

回溯一次执行

每次执行都会生成一个 trace_id 和执行凭据。失败时顺着接口往回查:

dsha retrace <trace_id>

输出会把七个阶段从后往前列一遍,标出哪一段 FAIL、哪几段因为上游熔断而 SKIP,并给出根因、复现命令和回滚方式。