check_adr_tunnel
Check whether a vehicle may pass through a tunnel of a given ADR category ("A"–"E"). Provide hazmat and, when known, the load's ADR 8.6.4 tunnel restriction code (e.g. "B", "C5000D", "B/D", "none"). Applies the conservative worst-case reading: conditional clauses are assumed to apply, so a blocked answer may over-restrict but never under-restricts. No network access; answers instantly.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hazmat | Yes | Whether the vehicle carries dangerous goods at all. When false the ADR tunnel matrix does not apply and every tunnel is permitted. | |
| tunnel_code | No | ADR 8.6.4 tunnel restriction code of the load, e.g. "B", "C5000D", "B/D", or "(—)"/"none". Leave unset for a hazmat load of unknown code (conservatively treated as code B). | |
| tunnel_category | Yes | ADR category of the tunnel to check: "A", "B", "C", "D" or "E". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Why passage is forbidden (present only when blocked); cites the ADR 8.6.4 rule that applied. | |
| decision | Yes | Whether passage is allowed or blocked. | |
| explanation | Yes | Human-readable explanation of how the decision was reached, including the conservative worst-case reading. | |
| forbidden_tunnel_categories | Yes | ADR tunnel categories this load is forbidden from under the worst-case reading (conditional clauses assumed to apply). Empty when unrestricted. |