
Image: AI generated
手綱のない馬
AIコーディングツールは速くなった。ログイン30秒。決済2分。MVPは3週間で出荷される。
3ヶ月後、崩壊する。
AIが決済ロジックを「整理」して割引計算を変える。リファクタリングの依頼で公開APIのフィールド名が変わる。新機能の追加で認証が壊れる。カーネギーメロンの研究(MSR 2026)によると、AIコーディングツール導入後、コードの複雑さは恒久的に41%増加する。Google DORA Report(2025)は、AI導入率が25%増加するごとに配信安定性が7.2%低下することを示している。
問題はAIが愚かなことではない。手綱がないことだ。
ハーネスは柵である
業界は「harness engineering」で応えた。リンター、フォーマッター、CI/CD、プロジェクト構造、コーディングガイドライン。エージェントを外に出さない柵だ。
柵は方向を定めない。エージェントが柵の中で何をしようと——既存のロジックを上書きしようと、型を変えようと、状態遷移をスキップしようと——リンターは通る。フォーマッターは通る。CIは通る。コードは「きれいだが間違っている」状態でプロダクションに届く。
鞍はつけた。騎手は乗った。しかし手綱がなければ、太ももで踏ん張って3ヶ月で落馬する。
Reins Engineering
Reins Engineeringとは、AIエージェントに決定論的な契約を与え、契約が破られたとき進行をブロックするエンジニアリングアプローチである。
3つの要素で構成される:
1. 決定論的フィードバック
エージェントに意見ではなく事実を与える。「これは変に見える」ではなく「41行目:フィールド名の不一致、期待値 ‘user_id’、実際値 ‘userId’」。sycophancyの余地がないフィードバック。TDADの研究(arxiv 2026)によると、手続き的な「TDDを実行せよ」という指示はリグレッションを悪化させ(6.08% → 9.94%)、一方で具体的なテストファイルをコンテキストに提供するとリグレッションが70%削減される(6.08% → 1.82%)。
2. 契約の固定(Ratchet Pattern)
検証が通ったら固定する。HurlテストはプレーンテキストでAPIの振る舞いを宣言し、CIで毎コミット実行される。通ったテストは削除できない。エージェントはコードを自由に変えられるが、振る舞いは変えられない。ドリフトは構造的に抑制される。
3. 意思決定と実装の分離
コードに混在する3つのもの——ユーザーの意思決定、ビジネスロジック、実装の詳細——を分離する。意思決定は宣言的な仕様(OpenAPI、DDL、状態遷移図)に置く。実装はAIが自由に生成する。AIが意思決定を詳細と間違えて上書きすることはできない。意思決定の生存がモデルサイズから独立する。
進化
Prompt Engineering → うまく言えばうまくいく
Context Engineering → 良いコンテキストを与えればうまくいく
Harness Engineering → 構造で囲い込む
Reins Engineering → 手綱で方向を示す
各段階は前の段階の限界から生まれた。プロンプトだけでは一貫性がなかった。コンテキストではエージェントの暴走を止められなかった。柵では境界内のドリフトを防げなかった。
Reins Engineeringは柵ではない——手綱だ。エージェントの自由を制約するのではなく、エージェントが目的地に到達することを保証する。
より大きなモデルが答えではない理由
「GPT-6が解決してくれる。」
解決しない。問題はモデルの知性ではなく、メディアにある。コードというメディアは意思決定と実装を区別しない。コードを読むどのモデルも、意思決定と詳細が同じテキストに混在しているのを見る。
4.5Bのローカルモデル(Gemma4)に決定論的フィードバック+サンプルコンテキストを与えると、SSOTをエラーゼロで編集する。フロンティアモデルが生のコードを編集するとドリフトが発生する。違いは構造であり、知性ではない。
モデルを変えるな。契約を追加しろ。
実証
yongolはReins Engineeringの実装である。10の宣言的仕様(SSOT)の整合性を287のルールで交差検証し、コードを生成する。
ZenFlowベンチマーク——マルチテナントのワークフロー自動化SaaS。32エンドポイント、14テーブル、47 Hurlリクエスト。11/11ステージ合格。機能追加でスピードは落ちなかった。既存のテストは一度も壊れなかった。
4.5Bのローカルモデルで動くバックエンドの生成に成功した。コスト$0。オフライン。Reinsはモデルサイズが残すギャップを埋める。
手綱のないハーネスはただの柵
AIはすでに十分強力だ。足りないのは方向だ。
柵を高く建てれば、エージェントはその中でより速くドリフトする。手綱を握れば、エージェントは目的地へ走る。
Reins Engineering——AIエージェントのための構造化された決定論的検証。
関連
- yongol — AIコーディングSaaSの竜骨 — Reins Engineeringの実装。
- Hurlがバイブコーディングのドリフトを止める — Hurl + Ratchetが APIの振る舞いを固定する。
- Ratchet Pattern — 決定論的検証とラチェット固定の理論。
- IFEval-Exploiting Ratchet Code — sycophancy biasを利用したフィードバックループ。
References
- Cursino, D. et al. (2026). “Speed at the Cost of Quality? The Impact of AI Coding on Software.” MSR 2026. arxiv.org/abs/2511.04427
- Google Cloud (2025). DORA Report 2025. cloud.google.com
- Wang, Z. et al. (2026). “TDAD: Test-Driven Agentic Development.” ACM AIWare 2026. arxiv.org/abs/2603.17973
- Karpathy, A. (2026). “From Vibe Coding to Agentic Engineering.” thenewstack.io