
ヒント — これだけ知れば指示できる
コードを構造化し(第8講)、システムを構造化した(第9講)。残りはデータ。データが最も危険。コードのエラーはテストが、システムのエラーは/healthが捕まえる。データのエラーは誰も気づかない。3ヶ月後の四半期レポートで発見する。
エージェントに:「JSONBではなく明示的なカラムと制約でスキーマを作って。amountは0より大きく、statusは決められた値のみ許可。」
エージェントに:「このExcelをDBに入れて。DDLの制約を守ること。制約違反の行は別ファイルに出してレポート。」
エージェントに:「DDLを修正してyongol validateを通して。マイグレーションファイル生成、失敗したらロールバック。」
DBを知らないあなたがすべきことは「何を保存するか」を決めるだけ。
なぜこう指示すべきなのか
データはコードより先に腐る
コードのエラー → テストが捕まえる。システムのエラー → モニタリングが捕まえる。データのエラー → 誰も気づかない。
Agent Operable Dataの4条件
1. スキーマが宣言されている。 DDLがデータの契約。型、制約、関係が明示的。
2. 変換が検証可能。 マッピングルールが宣言的で、前後の不変量が検証可能。
3. 出所と時点が追跡される。 source、created_at、created_by。
4. データ変更にもラチェットが適用される。 DDL → validate → マイグレーション(up + down)→ staging → production(承認)。
スキーマは私が立てる法だ
第5講の「制約は契約だ」の原理がデータに直接現れる。スキーマは何が有効なデータで何がそうでないかを 定義(定義) する。NOT NULL、FOREIGN KEY、CHECK — この制約を通過しなければデータは保存されない。
法は正義(justice)ではなく定義(definition)だ。
スキーマのないデータは法のない社会。
同じパターン、異なるドメイン
| 第8講:コード | 第9講:システム | 第10講:データ | |
|---|---|---|---|
| 読めるか | filefunc | /health | DDL |
| 検証できるか | go test + tsma | CI/CD | DB制約 + Rego |
| 戻せるか | git revert | イメージロールバック | migration down |
すべて同じ構造:宣言し、検証し、固定し、永続する。
ビジョン
| 講 | 何を学んだか | 結果 |
|---|---|---|
| 1 | バイブコーディング | 「言えばコードが出る」 |
| 2 | なぜ壊れるか | ドリフト、コンテキスト消失、おべっか |
| 3 | どう防ぐか | Hurl、Git、CI/CD |
| 4 | 200エンドポイントの壁 | yongol — 宣言的SSOT |
| 5 | 手綱のあるAI | Reins Engineering 3本柱 |
| 6 | 固定して進む | Ratchet Pattern |
| 7 | おべっかを逆手に | IFEval |
| 8 | コードを構造化 | filefunc + tsma |
| 9 | システムを構造化 | Agent Operable System |
| 10 | データを構造化 | スキーマ = 法 |
言えば作ってくれる。 コードだけでなく、システムもデータも。 そのためには手綱があり、線路があり、法がなければならない。 その手綱と線路と法を設計するのがReins Engineeringだ。
関連記事
Reins Engineering 全講義
| 講 | タイトル |
|---|---|
| 第1講 | AIへの指示の仕方 |
| 第2講 | AIを信じない方法 |
| 第3講 | 壊れないアプリ |
| 第4講 | 決定をコードの外へ |
| 第5講 | 手綱のあるAI |
| 第6講 | 通過したら固定する |
| 第7講 | おべっかを逆手に |
| 第8講 | エージェントの工場 |
| 第9講 | コードを超えた自動化 |
| 第10講 | データの法 |
根拠資料出典
- E.F. Codd, “A Relational Model of Data for Large Shared Data Banks” (1970)
- OPA / Rego — 宣言的ポリシー言語
- yongol DDL → sqlc — スキーマから型安全コードまで断絶なし交差検証
- 法治主義(Rule of Law)原理 — 検証可能性、違反の定義、強制可能性