---
title: 診断
description: 安定した TS コード、ソース範囲、理由、修正方法、モデルの lint ポリシーを確認します。
species: reference
---
# 診断

typesql のすべての診断に、安定したコード、ソース位置、理由が含まれ、機械的に修正できる場合は具体的な修正方法も示します。説明文は改善されることがあります。自動処理では `TS####` を識別に使ってください。

```text
TS0400 at 3:10: unknown column `amunt`
help: did you mean `amount`?
```

## コード一覧

| コード | 分類 |
|---|---|
| `TS0001`–`TS0007` | 字句解析、不正な文字、ドキュメントのサイズ |
| `TS0100`–`TS0105` | 構文解析、未対応の構文、深さ、不正なリテラル |
| `TS0200`–`TS0201` | 注釈消去の保証 |
| `TS0300`–`TS0301` | 不正な型式、または深すぎる型の入れ子 |
| `TS0400` | 不明な列 |
| `TS0401` | 型の不一致 |
| `TS0402` | `satisfies` の失敗 |
| `TS0403` | 無効なキャスト |
| `TS0404`–`TS0405` | 関数の引数の数または型 |
| `TS0406` | 再帰関数 |
| `TS0407` | 集合演算の列数 |
| `TS0408` | JSON の構造の不一致 |
| `TS0409` | 別名の列数 |
| `TS0410`–`TS0412` | マスクされた値のキャスト、比較、フロー |
| `TS0500`–`TS0501` | 対象へのコンパイル、または機能上の差異 |
| `TS0600`–`TS0609` | パッケージ参照、ロック、成果物、ハッシュ、形式、エクスポート、循環、名前の隠蔽、上限、未使用のインポート |
| `TS0700`–`TS0701` | 書き換え環境、または上限 |
| `TS0800`–`TS0803` | 論理ビュー環境、循環、上限、ドキュメント |

## 機械可読形式

診断は JSON でも返します。位置の正本はバイト範囲であり、表示時は 1 始まりの行番号と列番号に変換します。原因が別の場所にある場合は、補助ラベルが関連する宣言を示します。

## モデルの lint ポリシー

モデルの先頭 20 行のコメントで、登録済みの診断コードを再分類できます。

```sql
-- lint:
--   TS0400: allow
--   TS0609: deny
```

このブロックでは、重複のないコードを 1～16 個指定できます。`allow` は一致する診断を警告に下げ、`deny` はエラーに上げます。不明なコード、重複、不正な項目、複数のブロックがある場合は、モデルを拒否します。
