バンドル
テナントの統制された定義 — オントロジー型、ポリシー、Action Fabric のアクション、エージェントのメタデータ — を1つの contents バンドルにまとめ、キー単位でバージョン管理します。
Solution Pack は、オントロジー、ポリシー、Action Fabric のアクション、エージェントを、バージョン管理された署名付きで検証可能な1つのアーティファクトにまとめます。あるテナントからエクスポートし、レジストリへ公開し、別のテナントへは入口でハッシュと署名を検証したうえでインポートします。
canonicalize → sha256 contentHash → HMAC 署名 · verifyPack(hashOk + signatureOk)
エンタープライズAIの難所は、エージェントを1つ作ることではありません。ガバナンス付きのソリューションを、そのままの形で次のテナント、次のリージョン、あるいはエアギャップされたネットワークへ再展開することです。Solution Packs は、そのソリューションを第一級のアーティファクトにします。まとめて、署名して、ガバナンスをゼロから作り直すことなく再展開できます。
テナントの統制された定義 — オントロジー型、ポリシー、Action Fabric のアクション、エージェントのメタデータ — を1つの contents バンドルにまとめ、キー単位でバージョン管理します。
キー順に安定ソートされた JSON へ正規化し、sha256 の contentHash を算出したうえで HMAC 署名します。本番環境では署名シークレットが設定されていなければ署名を拒否します。
stable または beta チャネルで共有レジストリに公開します — 来歴は公開元テナントとともに記録され、インストール先は常に呼び出し元自身のテナントです。
インポート時は1行でも書き込む前に hashOk と signatureOk を再検証します。contents が改ざんされていればフェイルクローズし、部分適用は行われません。
パックは、中身のバンドルと、その完全性のエンベロープで構成されます。バンドルが定義を運び、エンベロープがそれを可搬かつ証明可能にします。
contents をキー順に安定ソートされた JSON にシリアライズし、バイト列を決定的にします — 同じ定義は常に同じハッシュ値になります。
正規化されたバイト列に対して sha256 を計算します。どのフィールドの変更でも — ポリシーの優先度1つ、プロパティ1つでも — ハッシュが変わります。
デプロイの署名シークレット(CORTEX_PACK_SIGNING_SECRET)で contentHash を HMAC-SHA256 します。verifyPack は hashOk と signatureOk を検証し、バンドルが改ざんされていれば hashOk が、シークレットが誤っていれば signatureOk が崩れます。
保存された contents を改ざんすると verifyPack は hashOk:false を返し、適用しようとしても 409 が返ります。この検証はオフラインで行われ、外部への通信は発生しません。
パックのインポートは、検証を先に行う2段階のフローです。importPreview は稼働中の定義に対するセクション単位の差分を返し、importApply は署名を再検証したうえで冪等にアップサートします——対象は自テナントのみです。
検証済みのパックをチャネルへ公開すれば、どの管理者も一覧から自テナントへインストールできます——署名の検証を経たうえで。テナント間の配布が成り立つのは、HMAC 署名がデプロイメントの署名シークレットを用いてコンテンツハッシュに対して行われるためで、あるテナントが公開したエントリは、別のテナントでも問題なく検証・インストールできます。
US Individual Tax パックは本日、署名済み・認定済みのバンドルとして提供中です。ハッシュと署名で検証し、自社テナントにインポートできます。Insurance Claims と KYC/AML は参照ブループリントです——オントロジー、ポリシー、アクション、エージェントは完全に仕様化されていますが、署名済みでインストール可能なパックはロードマップ上にあります。