---
title: "ref. diagnostics"
description: "Owner: the catalog spec (defs/catalog.ts). The status is the code's own; the exit comes from its category (CATEGORIES). A warning or info code never sets the status or the exit."
order: 38
---

# `ref.*` diagnostics

Owner: the catalog spec (`defs/catalog.ts`). The status is the code's own; the exit comes from its category (`CATEGORIES`). A warning or info code never sets the status or the exit.

| Code | Category | Severity | Status | Exit | Retry | Fix | Args |
|---|---|---|---|---|---|---|---|
| <a id="ref.inverse_ambiguous"></a>`ref.inverse_ambiguous` | schema | error | 400 | 2 | no | — | `target`, `refs` |
| <a id="ref.owner_invalid"></a>`ref.owner_invalid` | schema | error | 400 | 2 | no | — | `type`, `prop` |
| <a id="ref.required_cycle"></a>`ref.required_cycle` | schema | error | 400 | 2 | no | — | `cycle` |
| <a id="ref.required_set_null"></a>`ref.required_set_null` | schema | error | 400 | 2 | no | — | `prop` |
| <a id="ref.target_unknown"></a>`ref.target_unknown` | reference | error | 400 | 2 | no | — | `prop`, `target` |
| <a id="ref.unknown_field"></a>`ref.unknown_field` | reference | error | 400 | 2 | no | yes | `type`, `field`, `near` |
| <a id="ref.unknown_type"></a>`ref.unknown_type` | reference | error | 404 | 2 | no | yes | `name`, `near` |
