---
title: "验证与错误处理"
description: "输入与路径校验、数值测试、时间限制和错误类型。"
eyebrow: "Reference"
---

## 验证项目 {#layers}

| 检查项目 | 检查内容 | 预期结果 |
| --- | --- | --- |
| 网络校验 | 腿、维度、output、trace / diagonal 结构 | 输入能建立合法网络 |
| 路径重放 | 每步节点、最终 root、精确指标 | 路径在该网络上合法 |
| 数值参考对照 | native / external 结果与小网络直接 einsum 对照 | 该 dtype 和输入下结果一致 |
| Benchmark 完成情况 | 计划运行总数、各类失败数量和进程退出状态 | 每次计划运行都有结果记录 |
| 结果一致性 | 运行标识、保存的路径、指标和验证记录 | 保存的结果与验证记录一致 |

> **测试与 Benchmark**
>
> 库的测试检查接口行为与数值结果；Benchmark 检查每次计划运行的结果记录与进程退出状态。

## 时间限制 {#deadline}

Auto 在搜索过程中检查协作式 `max_time` 限制。达到时间限制后，如果调用成功，返回的仍是一条完整候选路径。严格的进程超时需要外部 watchdog 或作业调度器。

## 错误类型 {#errors}

- Python 参数类型错误通常抛出 `TypeError`；网络、路径、权重无效或目标不可达通常抛出 `ValueError`。
- `PlanValidationError` 是 `ValueError` 的子类，用于执行计划、网络或数组未通过验证的情况。
- Rust 高层函数通过 `Result` 返回错误；低层函数的前置条件见其接口说明。
- Benchmark 的 wall-limit、worker-error、resource-ineligible 与 success 是运行结果标签，不是 Python 异常类型，分别记录其数量。
