本当に実行できる AI ほど、硬い境界と信頼できる復旧が必要です。
1 つの job 契約が 3 種類の実行をカバーします。Python コードパッケージ、任意のシェルコマンド、自前のコンテナイメージ。大きな入力はファイルに溢れさせ、AI アプリケーションはゼロアダプテーションで統合できます。
各 job は専用の Pod で実行。非特権、読み取り専用のルートファイルシステム、capabilities を全て drop、seccomp はデフォルトで有効。ユーザーコードは信頼できないものとして扱われます。
5 段階の優先度 + プリエンプション可能な CRITICAL ジョブ + グローバル / テナントの並行クォータ + ホスト水位の三重バックプレッシャー。重要なタスクは並ばず、単一の部署が全体のキャパシティを占有することはありません。
コールバックは最適化、対帳はセーフティネット。30 秒ごとに Kubernetes から実状態を問い合わせるため、runner がクラッシュしても Pod が退去されても、タスクはハングせず終了状態へ到達します。
有向非巡回グラフで依存関係と並列性を表現。失敗したステップはその場で再実行でき(増分 / 全量)、上流の失敗は下流を素早くキャンセル——複雑なパイプラインを表現可能かつデバッグ可能に保ちます。
各 job の Pod には最小権限の MinIO 認証情報が注入され、コールバック URL には job 固有の HMAC トークンが付与されます。1 つの job が侵害されても、そのバケットに閉じ込められ、他の job を上書きすることはできません。
すべてのリソースはテナントに紐づき、テナントが特定できない場合は許可ではなく拒否します。サンドボックスの所有者 = job のテナントであり、他テナントへのアクセスは一律 404——権限昇格は静かに起こりません。
すべてのライフサイクル操作が監査されます。業務操作とイベントは同一トランザクションで outbox に落ち、CloudEvents が CI / 通知 / 課金へ非同期配信され、業務をブロックしません。
clone → 編集 → 自己テスト → push。パスポートゲートが編集領域をロックし、ビジュアル自己検証は実際のブラウザスクリーンショットをビジョンモデルで判定するもので、jsdom の推測ではありません。
実行レイヤーこそ、4 つの防御が実際に発動し、強制的に効力を発揮する場所です。
破壊的なコマンドを検出して承認を強制し、承認なしでは通過できません。
何を実行できるかは、AI の成長レベルに依存します。
K8s + unshare で、副作用を制御された境界内に閉じ込めます。
すべての実行を記録し、後から振り返り、責任を追跡できます。