AIKernel.NET
version: 0.1.1.1 / status: Active / edition: Release / published: 2026-05-16 / updated: 2026-06-14

移行ガイド(Migration Guide)

本ガイドは、初期コンセプト版(v0.0.0)から、正典化されたアーキテクチャ(v0.0.1、v0.0.2、v0.0.3)、v0.0.4 の DSL / History ROM contract 抽出、および v0.0.5 の contract-surface purity cleanup、external Capability module contract、DynamicSLM Model ABI / SeedSLM discipline / distillation offload、HATL external cryptographic operator contract 準備、governance admissibility gate / trajectory vocabulary、Semantic Compilation DTO vocabulary へ移行するための手順を定義します。

同期された 0.1.1 公開リリースラインでは、NuGet と PyPI のパッケージファミリを同じバージョンで揃えてください。0.1.1 は Core、Control、Providers、Tools、WASM、CUDA、Demo の各サーフェスをまとめて公開するため、0.1.00.1.1 が混在する依存グラフは、検証が終わるまで stale として扱います。

0.1.1.1 では GitHub release workflow は不要です。この更新は、すでに公開済みの public package line に対する additive contract expansion です。既存 0.1.1 consumer は、新しい domain contract を opt-in で利用しない限りコード移行は不要です。 0.1.1.1 の package boundary は .NET / NuGet のみです。この line では PyPI package を build / publish せず、Python wrapper は同期済み 0.1.1 package line のまま維持します。次の公式 v0.1.2 正典シリーズでは、NuGet と PyPI の package family を同期して公開する前提です。

CTG contract vocabulary は 0.1.1.1 package line の公開前に正規化されました。 council vote carrier は CouncilVote、finite vote value は CouncilVoteValue、 gate decision は discrete-only、CanonReference は正規化された pointer shape を使います。

0. v0.1.1.1 Additive Contract Expansion

0.1.1.1 では、adapter、runtime control、process control、replay、 observability、diagnostics、operator strategy、profiles、telemetry、 metrics、HUD signal、overlay annotation、CTG governance carrier の semantic interface、DTO、enum を追加します。

0.1 互換性

  • 既存 public method signature は変更しません。
  • 既存 public enum value は削除・rename しません。
  • 新規 interface は opt-in とし、機械的な expansion suffix ではなく semantic name を使います。
  • 新規 descriptor / snapshot DTO field は optional です。
  • 新規 domain enum は Unknown = 0 を持ち、未知値は fail-closed に扱います。

0.2 Consumer Action

既存 consumer は現在の API 利用を維持できます。新しい surface が必要な consumer は、 ../architecture/19.DOMAIN_CONTRACT_SURFACE-v0.1.1.1-jp.md に記載された semantic interface と DTO domain を opt-in で参照してください。 CTG 固有の guidance は ../architecture/20.CANONICAL_TRAJECTORY_GOVERNANCE-v0.1.1.1-jp.md../architecture/21.CTG_DEVELOPER_THEORY-v0.1.1.1-jp.md../design/CTG_CONTRACT_MODEL-v0.1.1.1-jp.mdCTG_DEVELOPER_GUIDE-v0.1.1.1-jp.md も参照してください。固定された論文参照は ../papers/12-canonical-trajectory-governance/README.md です。

0.3 CTG DTO / Enum 正規化

公開前の CTG draft contract を参照していた場合は、0.1.1.1 package を利用する前に 次の名前と値へ更新してください。

Draft shape Published contract shape
DTO carrier としての CouncilVoteValue CouncilVote
CouncilVoteKind enum CouncilVoteValue enum
GateDecisionKind.Accepted / Rejected / Vetoed / Inconclusive GateDecisionKind.Allow / Deny
TrajectoryGateDecisionKind.Accepted / Rejected / Vetoed / Inconclusive TrajectoryGateDecisionKind.Continue / Halt
RejectReasonKind の operational draft name SafetyViolationEthosVetoFailClosedImplicitDeny などの PascalCase canonical taxonomy
metadata を含む CanonReference CanonIdPathSectionAnchorContentHash の正規化 pointer

これらの補正は canon、council、gate、reject-policy の意味を変更しません。 DTO、enum、serialization shape を公開前に揃えるためのものです。

local development package version は次を使います。

0.1.1.1-dev<build-number>

1. 根本的な変更点

v0.0.1 では、決定論(Determinism)非推論型ガバナンス を軸に、全体設計が再編されました。

  • Namespace の厳格化:
  • AIKernel.Models は廃止され、Routing / Rom / Rules へ責務分割されました。

  • DTO の純粋化:
  • DTO 層からロジックとカスタム例外を排除し、データ契約に限定しました。

  • 信頼チェーンの導入:
  • ROM 処理は、IRomCanonicalizer を経由してから ISemanticHasher で検証する流れへ統一されました。

2. インターフェースの代替マッピング

旧語彙から新語彙への置換ルールです。

旧インターフェース (v0.0.0) 新インターフェース (v0.0.1) 移行ポイント
IPromptSigner ISemanticHasher + IPromptSignatureProvider 署名のみの発想から、正準化 + 意味ハッシュ + 署名検証の連鎖へ移行。
IContextSerializer (廃止) IKernelContextIContextSnapshot に責務を再配置。
IRoutingDecisionEngine IModelVectorRouter モデル名中心の選択から、能力ベクトル中心の決定へ移行。
IPromptRuleSet IPolicy / IRuleEngine ルール集合の曖昧運用を廃止し、決定論的ポリシー評価へ移行。

3. 推奨移行ステップ

  1. Namespace の修正:
  2. 物理ディレクトリ構造に合わせて using を更新します。

  3. 例外処理の移動:
  4. DTO 層の例外前提実装を廃止し、Provider/Kernel 実行層で Fail-Closed を実装します。

  5. ROM 処理の修正:
  6. ハッシュ計算の前に必ず IRomCanonicalizer.Canonicalize() を呼び出します。

  7. テストの再整備:
  8. Use-Case 駆動テストを、UC-xx と対応 Interface に再マッピングします。

4. 検証チェックリスト

  • Abstractions が外部 SDK 型をシグネチャに露出していない。
  • Dtos がロジックや例外型に依存していない。
  • IRomDocument -> IRomCanonicalizer -> ISemanticHasher の順序が守られている。
  • IPdp 判定経路に LLM 推論を含めず、Indeterminate => Deny を保証している。

5. v0.0.2 への移行: Vfs 命名規約の統一

v0.0.2 では、.NET Framework Design Guidelines に合わせて、3 文字以上の頭字語を単語として扱います。これにより、VFS は identifier 上では Vfs に統一されます。

この変更は、namespace、project/package 名、docs 上の公開表記に影響する破壊的変更です。

5.1 置換マッピング

旧表記 新表記 備考
AIKernel.VFS AIKernel.Vfs Namespace / project / NuGet package 名を統一。
AIKernel.VFS.csproj AIKernel.Vfs.csproj ProjectReference と solution entry を更新。
VFS Vfs コード上の identifier と package/docs の正規表記。
ProviderID ProviderId Id は 2 文字語として Id に統一。
IROMCanonicalizer IRomCanonicalizer 3 文字 acronym を PascalCase の単語として扱う。

既存の IVfsProvider, IVfsSession, VfsProviderHealth, VfsEntry など、すでに Vfs 表記になっている型名はそのまま維持します。

5.2 移行手順

  1. using AIKernel.VFS;using AIKernel.Vfs; に変更します。
  2. .csproj / .slnx の参照を AIKernel.Vfs/AIKernel.Vfs.csproj に変更します。
  3. NuGet package 参照がある場合は、AIKernel.VFS から AIKernel.Vfs へ変更します。
  4. README、設計ドキュメント、運用ドキュメントに残る VFS 表記を Vfs に統一します。
  5. 移行例を除き、case-sensitive 検索で VFS, AIKernel.VFS, ProviderID, IROMCanonicalizer が残っていないことを確認します。

6. v0.0.2 への移行: Vfs Capability Contract

本節は Issue #4 [RFC] Interface Segregation for VFS: Transitioning to Capability-Based Abstractions に対応します。

v0.0.2 では、Vfs の権限を monolithic contract ではなく capability interface として表現します。

6.1 新規 capability interface

Capability 用途
IVfsEntryInfo Vfs entry に共通する識別情報と metadata。
IReadableVfsFile ファイル内容の読み取り。
IWritableVfsFile file-level mutation が成立する場合の書き込み。
INavigableVfsDirectory ディレクトリの列挙と階層移動。
IReadableVfsSession session 経由の読み取りと存在確認。
IWritableVfsSession session 経由の書き込み。
IDeletableVfsSession session 経由の削除。
INavigableVfsSession session 経由のディレクトリ取得。
IQueryableVfsSession provider 定義 query の実行。

6.2 互換 contract

既存の IVfsFile, IVfsDirectory, IVfsSession は互換合成 contract として残ります。

  • IVfsFileIReadableVfsFile を継承します。
  • IVfsDirectoryINavigableVfsDirectory を継承し、従来の IVfsFile / IVfsDirectory 戻り値を維持します。
  • IVfsSession は readable / writable / deletable / navigable / queryable / async-disposable capability を合成します。

このため、既存の IVfsSession 前提の実装はすぐに全置換する必要はありません。ただし、新規実装や標準 provider では、必要最小限の capability interface へ依存を縮小することを推奨します。

6.3 実装側の移行指針

  • 読み取り専用 provider は IReadableVfsSession のみを実装し、IWritableVfsSessionIDeletableVfsSession を実装しません。
  • 書き込み不能な provider に placeholder の WriteFileAsync を実装して NotSupportedException を投げる設計は避けます。
  • 呼び出し側は操作前に必要な capability interface を確認し、不足している場合は副作用を開始する前に拒否します。
if (session is not IWritableVfsSession writable)\n{\n    // Deny before side effects begin.\n    return;\n}\n\nawait writable.WriteFileAsync(path, content);

7. v0.0.2 への移行: Provider / Security Capability Contract

Issue #4 以降、capability-based contract は Vfs だけでなく、単一インターフェースが複数の権限面を抱えていた provider / security abstraction にも適用します。

7.1 Provider Lifecycle Contract

IProvider は互換合成 contract として残しつつ、provider identity、capability metadata、availability、lifecycle、health を個別に表現できるようにします。

Capability 用途
IProviderIdentity Provider Id、表示名、version。
IProviderCapabilitySource 静的または動的な provider capability metadata。
IProviderAvailabilityProbe 可用性確認。
IProviderLifecycle 初期化と終了処理。
IProviderHealthProbe health check の報告。

7.2 Provider Router Contract

IProviderRouter は互換合成 contract として残しつつ、retrieval、cache、registry の責務を分離します。

Capability 用途
IProviderMaterialRetriever 単一または複数 source から Material Context を取得。
IMaterialCacheReader cache から Material Context を読み取り。
IMaterialCacheWriter cache へ Material Context を書き込み。
IProviderRegistry provider の登録、解除、列挙。

読み取り専用 cache adapter は IMaterialCacheReader のみを実装し、cache write や provider registry capability を公開しません。

7.3 Tool Access Validation

IToolAccessValidator は互換合成 contract として残しつつ、権限チェックを capability interface に分割します。

Capability 用途
IToolExecutionAccessValidator ツール実行の検証。
IFileReadAccessValidator ファイル読み取りの検証。
IFileWriteAccessValidator ファイル書き込みの検証。
INetworkAccessValidator ネットワークアクセスの検証。
IEnvironmentAccessValidator 環境変数アクセスの検証。
ISystemCommandAccessValidator システムコマンド実行の検証。
IPermissionLifecycleValidator 権限の有効期限・ライフサイクル検証。
IPermissionConstraintValidator 実行時制約の検証。

呼び出し側は、対象操作に必要な最小の validator capability に依存します。必要な capability が存在しない場合は、実行開始前に deny として扱います。

7.4 Event Bus Contract

IEventBusIProvider、event publishing、broadcast、subscription registry capability を合成する互換 contract として残ります。

Capability 用途
IEventPublisher event の publish。
IEventBroadcaster すべての subscriber への broadcast。
IEventSubscriptionRegistry subscribe、unsubscribe、subscriber count の確認。

購読専用 adapter は IEventSubscriptionRegistry のみを実装し、publish / broadcast capability を公開しません。

7.5 Task / Scheduler Contract

ITaskManagerIScheduler は互換合成 contract として残しつつ、実行、制御、結果参照、schedule 権限を分離します。

Capability 用途
IPipelineRegistrar pipeline の登録。
IPipelineExecutor 登録済み pipeline の実行。
ITaskExecutor 個別 task の実行。
IPipelineExecutionController pipeline execution の pause、resume、cancel。
IPipelineExecutionResultReader pipeline execution result の参照。
IScheduledJobReader scheduled job の参照と列挙。
IJobScheduler job の schedule。
IScheduledJobCanceller scheduled job の cancel。
IScheduledExecutionResultReader scheduled job execution result の参照。

観測専用 component は result-reader や job-reader capability に依存し、execution や cancellation 権限を受け取らないようにします。

7.6 Tokenizer Contract

ITokenizer は互換合成 contract として残しつつ、tokenization、counting、decoding、statistics、model support、NPU cardinality の責務を分離します。

Capability 用途
ITokenizerIdentity tokenizer profile Id と name。
ITextTokenizer text から token への変換。
ITokenCounter token materialization を公開しない token count。
ITokenDecoder token から text への decode。
ITokenizerStatisticsProvider tokenizer statistics の参照。
ITokenizerModelSupport model support の確認。
IPhysicalCardinalityAdvisor logical token count から physical cardinality への変換。
IPaddingInfoProvider padding information の参照。

Budget estimator は通常 ITokenCounter に依存し、hardware alignment が必要な場合のみ IPhysicalCardinalityAdvisor を併用します。

7.7 Signature Trust Store Contract

ISignatureTrustStore は互換合成 contract として残しつつ、trust resolution、revocation、expiry、chain verification、trusted-anchor lookup、health probing を分離します。

Capability 用途
ISignerTrustResolver signer trust score の解決。
IKeyRevocationChecker key revocation の確認。
IKeyExpiryReader key expiry の参照。
ICertificateChainVerifier certificate chain の検証。
ITrustedAnchorReader trusted anchor の参照。
ITrustStoreHealthProbe trust store 到達性の確認。

health check 専用の処理は ITrustStoreHealthProbe に依存し、trust resolution や revocation 権限を受け取らないようにします。

7.8 Kernel Facade Contract

IKernel は最上位 facade の互換合成 contract として残しつつ、execution、analysis、preprocessing、provider routing、governance access を個別に表現できるようにします。

Capability 用途
IKernelVersionProvider kernel version の参照。
IKernelContextExecutor unified context contract の実行。
IKernelAttentionAnalyzer orchestration attention pollution の解析。
IKernelMaterialPreprocessor Material Context の正規化・構造化。
IKernelExpressionPreparer Expression Context の準備。
IKernelProviderRouterAccessor Provider Router へのアクセス。
IKernelGuardAccessor Guard へのアクセス。
IKernelPdpAccessor PDP へのアクセス。

Application code は必要な kernel capability のみに依存します。IKernel は composition root や facade-level orchestration に限定して使います。

7.9 RAG Provider Contract

IRagProviderIProvider、検索、index mutation capability を合成する互換 contract として残ります。

Capability 用途
IRagSearchProvider RAG material の検索。
IRagIndexWriter index document の追加・更新。
IRagIndexDeleter index document の削除。
IRagIndexManager clear など index 全体の管理操作。

読み取り専用 RAG provider は IRagSearchProvider のみを実装し、provider lifecycle metadata が必要な場合に IProvider を併用します。書き込み・削除・clear capability を実装して NotSupportedException を投げる設計は避けます。

8. v0.0.2 検証チェックリスト

  • using AIKernel.VFS; が残っていない。
  • ProjectReference / solution entry が AIKernel.Vfs/AIKernel.Vfs.csproj を参照している。
  • 移行例を除き、公開 docs / README / csproj metadata に VFS, ProviderID, IROMCanonicalizer 表記が残っていない。
  • 読み取り専用 Vfs 実装が mutation capability を公開していない。
  • 未対応 capability が NotSupportedException ではなく、実行前の deny として扱われている。
  • 読み取り専用 RAG provider が index mutation capability を公開せず、IRagSearchProvider に限定されている。
  • Provider/router の依存先が、可能な限り identity、lifecycle、retrieval、cache、registry capability に縮小されている。
  • Event の依存先が、可能な限り publisher、broadcaster、subscription registry capability に縮小されている。
  • Task / scheduler の依存先が、可能な限り execution、control、result reader、job reader、scheduler、canceller capability に縮小されている。
  • Tokenizer の依存先が、可能な限り counter、tokenizer、decoder、statistics、model support、cardinality、padding capability に縮小されている。
  • Signature trust の依存先が、可能な限り trust resolver、revocation checker、expiry reader、chain verifier、anchor reader、health probe capability に縮小されている。
  • Kernel の依存先が、可能な限り execution、analysis、preprocessing、provider-router access、guard access、PDP access capability に縮小されている。
  • Tool access validation の依存先が、可能な限り必要最小の capability interface に縮小されている。

9. v0.0.2 への移行: Contract Purity

本節は Issue #8 Contract Purity に対応します。

Contract は immutable view / descriptor のみを表現します。mutation、validation、transformation、canonicalization、hashing、extraction、analysis の責務は、明示的な service interface へ移動します。

9.1 Contract object から削除された member

Contract 削除 member 代替 service interface
IMaterialContract Normalize, Structurize, ExtractEssentialContent, ValidateQuarantine IMaterialNormalizer, IMaterialStructurizer, IEssentialMaterialExtractor, IMaterialQuarantineValidator
IUnifiedContextContract ValidateAll, ValidateLayerSeparation, DetectPollution, CalculateSignalToNoiseRatio IUnifiedContextContractValidator, ILayerSeparationValidator, IAttentionPollutionDetector, ISignalToNoiseRatioCalculator
IOrchestrationContract Validate, CalculateSignalToNoiseRatio IOrchestrationContractValidator, ISignalToNoiseRatioCalculator
IExpressionContract ValidateIsolation, CanApplyAfterInference IExpressionIsolationValidator, IExpressionApplicationGate

9.2 新規 Material processing service

Service 用途
IMaterialNormalizer material を新しい MaterialContextDto として正規化。
IMaterialStructurizer contract を変更せず structured material data を生成。
IMaterialCanonicalizer canonical material text を生成。
IMaterialHashProvider material hash を計算。
IEssentialMaterialExtractor orchestration-safe な essential content を抽出。
IMaterialQuarantineValidator material quarantine state を検証。

Contract 実装は自分自身を変更しません。変換は新しい DTO/value または派生表現を返します。

10. v0.0.2 への移行: Capability-Driven Providers

本節は Issue #9 Capability-Driven Providers に対応します。

Provider contract は optional operation を明示的な capability interface として公開します。既存の広い interface は互換合成 contract として残ります。

10.1 Model Provider Capability

Capability 用途
ITextGenerationProvider GenerateAsync による text generation。
IStreamingGenerationProvider StreamGenerateAsync による streaming text generation。
IQuestionAnsweringProvider AnswerAsync による直接 question answering。
IModelProvider すべての model capability と IProvider を合成する互換 contract。

text-only provider は ITextGenerationProvider のみを実装し、streaming や question answering を実装しているように見せません。

10.2 Embedding Provider Capability

Capability 用途
ITextEmbeddingProvider 単一 text embedding。
IBatchEmbeddingProvider batch embedding。
IEmbeddingDimensionProvider embedding dimension metadata。
IEmbeddingProvider すべての embedding capability と IProvider を合成する互換 contract。

10.3 Provider Capability Metadata

Capability 用途
IProviderOperationCapabilities 静的な operation / data-type support。
IProviderConnectionCapabilities concurrency / rate-limit metadata。
IProviderCapacityVectorSource 静的 capacity vector。
IDynamicProviderCapacitySource constraint-dependent dynamic capacities。
IProviderProfileSource capability profile metadata。
IQuantizationSupport quantization support check。
IProviderCapabilities すべての provider capability metadata を合成する互換 contract。

Router は、実際に必要な capability interface によって provider を選択します。

11. v0.0.2 への移行: Security and Policy Separation

本節は Issue #10 Security & Policy Separation に対応します。

Security contract は、decision、enforcement、registry、validation、failure handling、audit category の責務を分離します。必要な権限が存在しない、または indeterminate の場合、呼び出し側境界で fail closed として扱います。

11.1 Guard Capability

Capability 用途
IGuardEvaluator execution / context-access check。
IResourceAccessGuard read/write resource check。
IGuardEnforcer guard decision を強制し fail-closed action を返す。
IGuardFailureHandler failure-mode handling と fail-closed action。
IGuard 互換合成 contract。

11.2 PDP Capability

Capability 用途
IPolicyDecisionPoint 決定論的 access decision evaluation。
IPolicyRegistry policy registry の add/remove operation。
IPolicySource registered policy の参照。
IPolicyDecisionEvaluator unified context に対する policy evaluation。
IPdp 互換合成 contract。

11.3 Rules Engine Capability

Capability 用途
IRuleRegistry prompt rule の register / read / delete / list。
IRuleEvaluator rule evaluation。
IPreExecutionRuleValidator pre-prompt context validation。
IPostExecutionRuleValidator post-prompt context validation。
IRulesEngine 互換合成 contract。

11.4 Audit Capability

Capability 用途
IAuditEventWriter generic audit event logging。
IExecutionAuditLogger execution event logging。
IGuardAuditLogger guard event logging。
IPipelineAuditLogger pipeline event logging。
IProviderAuditLogger provider event logging。
ITransferTraceLogger transfer trace logging。
IAuditLogger 互換合成 contract。

12. v0.0.2 への移行: Sandbox and Validator Isolation

本節は Issue #11 Sandbox & Validator Isolation に対応します。

Execution、file transfer、cleanup、observation、validation、store mutation、context-buffer access を capability interface として分離します。既存の広い interface は互換合成 contract として残ります。

12.1 Tool Sandbox Capability

Capability 用途
IToolSandboxIdentity sandbox identity。
IToolExecutor sandbox 内での tool execution。
IToolFileUploadSink sandbox への file upload。
IToolFileDownloadSource sandbox からの file download。
IToolSandboxCleanup sandbox state の cleanup。
IToolResourceUsageSource sandbox resource usage の参照。
IToolSandbox 互換合成 contract。

12.2 ROM Validator Capability

Capability 用途
IRomSchemaValidator ROM schema validation。
IRomLinkageValidator ROM linkage validation。
IRomTypeConsistencyValidator ROM type consistency validation。
IRomCircularReferenceValidator ROM circular reference detection。
IRomValidator 互換合成 contract。

12.3 Store / Collection / Compute Capability

Capability 用途
IConversationSnapshotWriter conversation snapshot の保存。
IConversationSnapshotReader conversation snapshot の参照。
IConversationBranchLister conversation branch の列挙。
IConversationSnapshotDeleter conversation snapshot の削除。
IContextFragmentCollection context fragment の参照。
IPhaseBufferCollection phase buffer の参照。
IComputeCardinalityAdvisor cardinality advice。
IComputePaddingAdvisor padding strategy / overhead advice。
IQuantizationAdvisor quantization advice。
IComputeShapeOptimizer constraint-based shape optimization。

Read-only store や schema-only validator は、実際にサポートする capability のみを実装します。

13. v0.0.2 から v0.0.3 への移行: 依存レイヤ修正

v0.0.3 では、Vfs contract 周辺の package 依存グラフを修正します。

v0.0.4 では、この互換 facade は置き換え済みです。v0.0.4 以降へ直接移行する場合は、14.6 に従い、個別の AIKernel.Vfs package/project を削除してください。

v0.0.3 の主な変更は、Vfs interface contract の所有元が AIKernel.Abstractions になったことです。v0.0.3 でのみ、個別の AIKernel.Vfs package は type forwarding による互換 facade として機能しましたが、contract 定義そのものの所有元ではなくなりました。v0.0.4 以降では、その個別 package/project は削除します。

13.1 目標レイヤ構造

Phase-1 の期待される依存方向は次の通りです。

AIKernel.Enums -> (none)\nAIKernel.Dtos -> AIKernel.Enums\nAIKernel.Contracts -> AIKernel.Enums, AIKernel.Dtos\nAIKernel.Abstractions -> AIKernel.Dtos, AIKernel.Enums\nAIKernel.Vfs -> AIKernel.Abstractions

禁止される依存方向は次の通りです。

AIKernel.Abstractions -> AIKernel.Vfs\nAIKernel.Abstractions -> AIKernel.Core\nAIKernel.Abstractions -> Providers

13.2 移動された Vfs Contract

以下の contract は AIKernel.Vfs project から AIKernel.Abstractions project へ移動しました。

Contract 新しい所有元 互換性
IVfsProvider AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IVfsSession AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IReadableVfsSession AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IWritableVfsSession AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IDeletableVfsSession AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
INavigableVfsSession AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IQueryableVfsSession AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IVfsCredentials AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IVfsFile, IVfsDirectory AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IReadableVfsFile, IWritableVfsFile AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
INavigableVfsDirectory AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IVfsEntryInfo AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
IVfsQuery, IVfsQueryResult AIKernel.Abstractions AIKernel.Vfs が type-forwarding。
VfsAuthenticationFailedException v0.0.4 で削除 v0.0.3 では facade 対象でしたが、v0.0.4 では runtime/Core adapter 側で失敗を扱います。

公開 namespace は互換性のため AIKernel.Vfs のままです。変更されたのは assembly/package レイヤでの所有関係です。

13.3 ProjectReference の更新

ProjectReference は次のように更新します。

AIKernel.Abstractions.csproj\n- <ProjectReference Include="..\AIKernel.Vfs\AIKernel.Vfs.csproj" />\n\nAIKernel.Vfs.csproj\n- <ProjectReference Include="..\AIKernel.Dtos\AIKernel.Dtos.csproj" />\n+ <ProjectReference Include="..\AIKernel.Abstractions\AIKernel.Abstractions.csproj" />

Vfs contract だけを利用する application project は、AIKernel.Abstractions を直接参照できます。v0.0.3 に固定され、互換 facade が必要な project は AIKernel.Vfs を参照できましたが、v0.0.4 以降の consumer はその個別 package/project を削除してください。

13.4 NuGet Package の更新

package reference を更新する場合は、次のように揃えます。

<PackageReference Include="AIKernel.Abstractions" Version="0.0.3" />\n<PackageReference Include="AIKernel.Vfs" Version="0.0.3" />

AIKernel.Abstractions 0.0.3AIKernel.Vfs 0.0.2 を混在させないでください。互換 facade は、Vfs contract 型が 0.0.3 の Abstractions assembly から提供されることを前提にします。

13.5 Source Migration 手順

  1. 公開 namespace は引き続き有効なため、既存の using AIKernel.Vfs; は維持します。
  2. AIKernel.Abstractions -> AIKernel.Vfs の直接 ProjectReference を削除します。
  3. contract のみを定義する library は、AIKernel.Vfs ではなく AIKernel.Abstractions への依存を優先します。
  4. runtime/provider package が Vfs contract を実装する場合、v0.0.4 以降の package graph では AIKernel.Abstractions を参照します。
  5. v0.0.3 専用の互換 build では、type-forwarding metadata が一貫して出力されるよう、すべての package を再ビルドします。

13.6 検証コマンド

次を実行します。

dotnet build src\AIKernel.NET.slnx\ndotnet test src\tests\AIKernel.Abstractions.Tests\AIKernel.Abstractions.Tests.csproj --no-build

ProjectReference graph が次の形であることを確認します。

AIKernel.Abstractions -> AIKernel.Dtos, AIKernel.Enums\nAIKernel.Vfs -> AIKernel.Abstractions\nCYCLE CHECK: OK (no ProjectReference cycles)

加えて、AIKernel.Abstractions.csprojAIKernel.Vfs への参照が残っていないことを確認します。

14. v0.0.3 から v0.0.4 への移行: DSL / History ROM Contract 抽出

v0.0.4 では、AIKernel.Core 内で先行して増えていた公開境界候補を AIKernel.NET の contract package に昇格します。これにより、外部 Capability module、Server host、WASM client、今後の Core package が同じ interface surface を共有できます。

このリリースでは、AIKernel.AbstractionsAIKernel.CoreAIKernel.Common に依存しない構造を維持します。Core 実装で Result<T>ResultStep<TState,TValue> を使っている場合は、以下の DTO contract surface へ adapter 変換してください。

14.1 新しい DTO 領域

領域 追加 DTO
AIKernel.Dtos.Time KernelTimestamp
AIKernel.Dtos.Dsl DslDocument, PipelineNode, PipelineRootNode, StepNode, CallCapabilityNode, LoopNode, LoopUntilNode, SuspendNode, DslPipelineValue, DslPipelineState, DslPipelineExecutionContext, DslPipelineExecutionResult, DslRomMetadata, DslRomSnapshot
AIKernel.Dtos.History ChatHistoryRomRecord, ChatHistoryRomOptions, HistoryRomMetadata, HistoryRomSnapshot

14.2 新しい Abstraction 領域

領域 追加 contract
AIKernel.Abstractions.Time IKernelClock
AIKernel.Abstractions.Dsl IKernelPipeline, IDslPipelineCompiler, IDslCapabilityRegistry, IDslRomRegistry, IDslRomStore
AIKernel.Abstractions.History IChatHistoryRomExporter, IHistoryRomRegistry, IHistoryRomStore

14.3 Core Adapter 向け破壊的移行ポイント

Core 側実装は、下流 consumer に Core 専用の DSL、History ROM、clock contract 参照を要求しない形へ移行してください。 DslNodeTypes は DSL node type string の canonical vocabulary を定義します。parser は CapabilityCallSuspendForApproval のような論文・例の alias を受け付けてよいですが、保存や replay hash 前に CallCapabilitySuspend へ正規化してください。

推奨置換は次の通りです。

Core-local concept v0.0.4 public contract
AIKernel.Core.Time.IKernelClock AIKernel.Abstractions.Time.IKernelClock
AIKernel.Core.Time.KernelTimestamp AIKernel.Dtos.Time.KernelTimestamp
Core DSL IR records AIKernel.Dtos.Dsl records
Core DSL pipeline interface AIKernel.Abstractions.Dsl.IKernelPipeline
Core DSL ROM registry interface AIKernel.Abstractions.Dsl.IDslRomRegistry
Core DSL ROM store class boundary AIKernel.Abstractions.Dsl.IDslRomStore
Core History ROM registry interface AIKernel.Abstractions.History.IHistoryRomRegistry
Core History ROM store class boundary AIKernel.Abstractions.History.IHistoryRomStore

14.4 曖昧な Interface 名の変更

v0.0.4 では、共有 package surface として広すぎた public interface 名を整理します。

削除 / 改名された contract 置換先
AIKernel.Abstractions.Kernel.IKernelExecutor AIKernel.Abstractions.Kernel.IKernelContextExecutor
AIKernel.Abstractions.Governance.ChatChain.IResult AIKernel.Abstractions.Governance.ChatChain.IChatTurnVerificationResult
AIKernel.Abstractions.Governance.ChatChain.ISemanticHasher AIKernel.Abstractions.Governance.ChatChain.IChatTurnSemanticHasher
AIKernel.Abstractions.Scheduling.IExecutionResult AIKernel.Abstractions.Scheduling.IScheduledExecutionResult

AIKernel.Abstractions.Execution.IKernelExecutorAIKernel.Abstractions.Rom.ISemanticHasher は変更しません。改名対象は、facade / chat-chain / scheduling 専用でありながら、実行境界や ROM 概念と名前衝突していた contract です。

Core 実装が内部で AIKernel.Common.Results.Result<T> を使い続ける場合、package 境界では次のいずれかへ変換してください。

  • 成功時は DTO 戻り値
  • 失敗時は host が採用する fail-closed exception / result adapter

AIKernel.Common が安定 package として公開されるまで、AIKernel.NET の contract package は Result<T> を公開しません。

14.5 NuGet Package 更新

package set は必ず揃えてください。

<PackageReference Include="AIKernel.Abstractions" Version="0.0.4" />\n<PackageReference Include="AIKernel.Dtos" Version="0.0.4" />\n<PackageReference Include="AIKernel.Enums" Version="0.0.4" />

AIKernel.Abstractions 0.0.4AIKernel.Dtos 0.0.3 を混在させないでください。DSL、History ROM、time contract は v0.0.4 の DTO surface を前提にします。

14.6 AIKernel.Vfs package の削除

v0.0.4 では、個別の AIKernel.Vfs 互換 package/project を削除します。 Vfs contract は引き続き AIKernel.Abstractions から利用でき、公開 namespace は AIKernel.Vfs のままです。

移行手順:

  1. application、provider、test project から PackageReference Include="AIKernel.Vfs" を削除します。
  2. Vfs contract を利用する project では PackageReference Include="AIKernel.Abstractions" Version="0.0.4" を追加または維持します。
  3. using AIKernel.Vfs; は維持して構いません。namespace は引き続き正しいです。
  4. local source build では AIKernel.Vfs/AIKernel.Vfs.csproj への project reference を削除します。

14.7 Interface-only contract package

v0.0.4 では AIKernel.AbstractionsAIKernel.Contracts の interface-only 化方針を導入します。 DTO、enum、例外型、factory、parse helper、runtime behavior はこれらの contract package へ配置しません。

v0.0.5 では、この規則の強制を完了し、contract surface に物理的に残っていた DTO、enum、例外実装を削除します。v0.0.5 以降へ直接移行する場合は 15 章も参照してください。

v0.0.4 では、DSL、History ROM、time contract の抽出に合わせてこの所有ルールを導入しました。 代表例として、AIKernel.Contracts.ValidationResultAIKernel.Dtos.Context.ValidationResult へ、 AIKernel.Abstractions.Vfs.VfsCredentialsAIKernel.Dtos.Vfs.VfsCredentials へ移動します。

残りの Abstractions-local DTO、DTO enum 重複、contract-package exception の v0.0.5 cleanup 詳細は 15 章を参照してください。

14.8 検証コマンド

次を実行します。

dotnet build src\AIKernel.NET.slnx\ndotnet test src\tests\AIKernel.Abstractions.Tests\AIKernel.Abstractions.Tests.csproj --no-build\ndotnet pack src\AIKernel.NET.slnx --no-build

ProjectReference graph が次のままであることを確認します。

AIKernel.Enums -> (none)\nAIKernel.Dtos -> AIKernel.Enums\nAIKernel.Contracts -> AIKernel.Enums, AIKernel.Dtos\nAIKernel.Abstractions -> AIKernel.Dtos, AIKernel.Enums\nCYCLE CHECK: OK

15. v0.0.4 から v0.0.5 への移行: Contract Surface Purity Cleanup

v0.0.5 では、AIKernel.AbstractionsAIKernel.Contractsinterface-only 原則を完了します。 v0.0.4 の抽出後も contract package 内に物理的に残っていた DTO、enum、例外実装を削除します。

15.1 削除された Abstractions-local DTO

代わりに DTO package の型を使用してください。

削除された型 置換先
AIKernel.Abstractions.Context.ContextAssemblyRequest AIKernel.Dtos.Context.ContextAssemblyRequest
AIKernel.Abstractions.Context.ContextAssemblyScope AIKernel.Dtos.Context.ContextAssemblyScope
AIKernel.Abstractions.Context.ContextAssemblyDecision AIKernel.Dtos.Context.ContextAssemblyDecision
AIKernel.Abstractions.DtoContracts.Execution.GeneratedPrompt AIKernel.Dtos.Execution.GeneratedPrompt
AIKernel.Abstractions.DtoContracts.Execution.KernelExecutionRequest AIKernel.Dtos.Execution.KernelExecutionRequest
AIKernel.Abstractions.DtoContracts.Execution.PromptGenerationRequest AIKernel.Dtos.Execution.PromptGenerationRequest
AIKernel.Abstractions.DtoContracts.Kernel.KernelRequest AIKernel.Dtos.Kernel.KernelRequest

15.2 削除された DTO enum 重複

代わりに enum package の型を使用してください。

削除された型 置換先
AIKernel.Dtos.Execution.ExecutionStatus AIKernel.Enums.ExecutionStatus
AIKernel.Dtos.Execution.PromptMessageFormat AIKernel.Enums.PromptMessageFormat
AIKernel.Dtos.Execution.PromptOverflowPolicy AIKernel.Enums.PromptOverflowPolicy

15.3 contract package から削除された例外型

以下の例外実装は AIKernel.Abstractions から export されなくなります。

  • ContextAssemblyException
  • ContextAssemblyGovernanceException
  • PromptGenerationException
  • PromptTokenBudgetExceededException
  • UnsupportedPromptCapabilityException
  • VfsAuthenticationFailedException

これらの例外または result/failure adapter 型は、AIKernel.Core などの runtime package 側で所有してください。

15.4 削除された曖昧な ChatChain interface

以下の旧 interface は、共有 contract surface で simple name が曖昧だったため削除されます。

削除された型 置換先
AIKernel.Abstractions.Governance.ChatChain.IResult AIKernel.Abstractions.Governance.ChatChain.IChatTurnVerificationResult
AIKernel.Abstractions.Governance.ChatChain.ISemanticHasher AIKernel.Abstractions.Governance.ChatChain.IChatTurnSemanticHasher

AIKernel.Abstractions.Rom.ISemanticHasher は ROM semantic hash contract として維持されます。

15.5 Package 更新

contract package set は必ず揃えてください。

<PackageReference Include="AIKernel.Abstractions" Version="0.0.5" />\n<PackageReference Include="AIKernel.Dtos" Version="0.0.5" />\n<PackageReference Include="AIKernel.Enums" Version="0.0.5" />\n<PackageReference Include="AIKernel.Contracts" Version="0.0.5" />

AIKernel.Abstractions 0.0.5AIKernel.Dtos / AIKernel.Enums 0.0.4 を混在させないでください。

15.6 DynamicSLM / SeedSLM / HATL / governance / Semantic Compilation vocabulary contract 準備

v0.0.5 では、将来の external Capability module、DynamicSLM capability module、SeedSLM discipline surface、HATL external cryptographic operator、pre-inference governance admission evidence、trajectory governance evidence、Semantic Compilation descriptor 向けに runtime を持たない contract を追加します。 既存 consumer には source-compatible な追加ですが、capability-modular SLM artifact、HATL-backed trust layer、Semantic DSL admission evidence、semantic compiler runtime artifact を扱う Core / Provider 実装は新しい namespace を対象にしてください。

領域 新しい public surface
AIKernel.Abstractions.Capabilities ICapabilityModuleRegistry, ICapabilityModuleInvoker
AIKernel.Abstractions.Governance ICriticalOperationGate, IComputationalComplexityGate
AIKernel.Abstractions.DynamicSlm IDynamicSlmModelAbiProvider, IDynamicSlmModuleRegistry, IDynamicSlmPipelineContextFactory, IDynamicSlmPipelineStep<TInput,TOutput>, IDynamicSlmAsyncPipelineStep<TInput,TOutput>, IDynamicSlmAsyncPipeline, IDynamicSlmPipelineBuilder, IDynamicSlmFailure, IDynamicSlmCapabilityGraphResolver, IDynamicSlmCompatibilityVerifier, IDynamicSlmLineageVerifier, IDynamicSlmPayloadLoader, IDynamicSlmScheduler, IDynamicSlmCapabilityGapDetector, IDynamicSlmCapabilityGraphEvolutionPlanner, IDynamicSlmDistillationPlanner, IDynamicSlmDistillationJobScheduler, IDynamicSlmBackgroundDistillationService, IDynamicSlmArtifactPublisher, ISeedSlmDisciplineVerifier, IDynamicSlmDelegationPlanner, IDynamicSlmThoughtArtifactSink, IDynamicSlmMemoryPlacementPlanner
AIKernel.Abstractions.Hatl IHatlLedgerStore, IHatlAnchorPublisher, IHatlAnchorVerifier, IHatlDigitalDeedResolver, IHatlCryptographicOperator
AIKernel.Dtos.Capabilities CLI executable、managed assembly、native ABI、DSL ROM、remote endpoint capability 境界向けの CapabilityModuleDescriptorCapabilityInvocationRequestCapabilityInvocationResult
AIKernel.Dtos.DynamicSlm semantic profile、capability graph、execution profile、lineage、payload descriptor、pipeline context/result/failure/trace metadata、resolved subgraph、placement plan、capability gap、graph update plan、metadata 付き distillation request/plan、distillation job descriptor、offload request、fallback strategy、pipeline offload info、admission result、SeedSLM structural constraint、output discipline policy、delegation request、thought artifact、ReplayLog entry、trajectory metadata、adapter compatibility、neutrality、resident model descriptor、capability swap descriptor、memory placement metadata の Model ABI record
AIKernel.Dtos.Governance replay-compatible な pre-inference admission evidence を運ぶ AdmissibilityReplayRecordCriticalOperationProfileCriticalOperationGateResultTaskComplexityProfileModelExecutionBudgetComplexityGateResult、trajectory governance evidence を運ぶ SemanticEllipsoidDescriptorTrajectoryGovernanceScoreReportCandidateActionEvaluation
AIKernel.Dtos.Hatl ledger entry、anchor document、Digital Deed、public anchor receipt、verification result、BlockMAC request/result、ratchet step request/result、HATL metadata key
AIKernel.Dtos.SemanticCompilation semantic state snapshot、Semantic IR element、governed circuit descriptor、prototype space descriptor、semantic distance report、deterministic synthesis descriptor、semantic transition descriptor
AIKernel.Enums Capability module / invocation primitive、DynamicSLM payload、accelerator、distillation offload / fallback selection / strict output / delegation / thought dump / memory placement を含む pipeline stage、failure kind、capability relation、compatibility status、graph update、admission status、distillation job status、fallback kind、pipeline status、SeedSLM strict output / delegation / reasoning / base-state / hot-swap primitive、HATL anchor/deed/verification primitive、SemanticIrSlotAdmissibilityGateKindAdmissibilityDecisionKindTaskCostClassCriticalOperationRequirement

これらの contract は AIKernel.Common.Result<T> や Core runtime handle を公開しません。実装側は内部 Result pipeline を DTO / interface 境界へ adapter 変換してください。 LINQ SelectManyBindMap の実装は AIKernel.NET ではなく、AIKernel.Common または Core package が所有します。 distillation planning は load pipeline 内で実行できますが、distillation execution は IDynamicSlmDistillationJobScheduler または IDynamicSlmBackgroundDistillationService 経由で offload してください。pipeline は training work を待たず、Teacher / remote / cached fallback metadata によって継続する想定です。 SeedSLM discipline、delegation、thought-artifact、memory-placement contract も DTO/interface-only です。Core はこれらを ResultStep / ReplayLog / SemanticDelta pipeline へ adapter し、contract package に runtime behavior を入れないでください。 DynamicSlmModelAbiDynamicSlmPipelineContextDynamicSlmPipelineMetadata は SeedSLM 拡張 field を含みますが、SeedSLM state を渡さない caller 向けの constructor 互換性を維持します。欠落した SeedSLM field は runtime failure ではなく、contract metadata が存在しない状態として扱います。 HATL cryptographic operation も AIKernel.NET では contract-only です。Core/host 側で IHatlCryptographicOperator を AIKernel.RH ベース operator、hardware provider、または監査済み module に bind してください。 DTO の timestamp property は既定で DateTime.UtcNow を注入しません。Core/provider 実装は clock または semantic-state materialization 境界から決定論的 timestamp を明示的に設定してください。 Governance admission record も DTO/enum-only です。Core semantic compiler は AdmissibilityReplayRecord を自身の ResultStep / ReplayLog pipeline へ接続し、SemanticIrSlot は共有 G/T/C/B vocabulary としてのみ扱ってください。runtime graph executor ではありません。 Semantic Compilation DTO も contract-only です。prototype-space search、semantic distance evaluation、admissibility function、deterministic synthesis、graph execution は Core/runtime の責務に残します。

15.7 検証コマンド

次を実行します。

dotnet build src\AIKernel.NET.slnx -c Release\ndotnet test src\AIKernel.NET.slnx -c Release --no-build

以下を確認してください。

AIKernel.Abstractions exports interfaces only.\nAIKernel.Contracts exports interfaces only.\nAIKernel.Dtos exports no enums.\nAIKernel.Enums owns shared enums.\nCYCLE CHECK: OK

16. v0.1.0 への移行: MemoryRegion / MemoryMapper contract 抽出

v0.1.0 contract line では、OS 非依存の MemoryRegion / MemoryMapper surface を Core の暫定 API から AIKernel.NET contract package へ移動します。 Runtime package は OS 固有実装と Result-based adapter を保持し、共有 signature は Abstractions、DTO、Enum が所有します。

16.1 新しい contract ownership

Contract 領域 所有元
IMemoryRegion, IMemoryMapper AIKernel.Abstractions.Memory
MemoryRegionInfo AIKernel.Dtos.Memory
MemoryAccessMode AIKernel.Enums

16.2 移行手順

AIKernel.Core.Memory を public contract surface として使用していた consumer は、 AIKernel.NET contract package へ移行してください。

using AIKernel.Abstractions.Memory;\nusing AIKernel.Dtos.Memory;\nusing AIKernel.Enums;

Core / Kernel 実装は、内部の Result<T> pipeline をこれらの interface へ adapter して構いません。ただし、AIKernel.NET contract package から AIKernel.Common.Result<T> を公開しないでください。

16.3 Runtime adapter 指針

Runtime package は Core v0.0.x の Memory 型を transition-only implementation adapter として扱ってください。

暫定型 Contract replacement
AIKernel.Core.Memory.IMemoryRegion AIKernel.Abstractions.Memory.IMemoryRegion
AIKernel.Core.Memory.IMemoryMapper AIKernel.Abstractions.Memory.IMemoryMapper
AIKernel.Core.Memory.MemoryRegionInfo AIKernel.Dtos.Memory.MemoryRegionInfo
AIKernel.Core.Memory.MemoryAccessMode AIKernel.Enums.MemoryAccessMode

Contract の IMemoryMapper.Open は意図的に IMemoryRegion を直接返します。 Fail-closed な Result<T> composition は Core/Common runtime の責務に残し、 実装境界で adapter してください。

16.4 検証コマンド

次を実行します。

dotnet build src\AIKernel.NET.slnx -c Release\ndotnet test src\AIKernel.NET.slnx -c Release --no-build

AIKernel.AbstractionsAIKernel.DtosAIKernel.Enums のみに依存し、 AIKernel.DtosAIKernel.Enums のみに依存することを確認してください。

17. v0.1.0 への移行: Control / Routing contract ownership

v0.1.0 contract line では、Control Plane contract と provider-routing decision data も AIKernel.NET に移動します。Runtime behavior は Core または Control 実装 package に残します。

17.1 Control Plane contract

Contract 領域 所有元
IControlEngine, IExecutionGraph, IExecutionNode, INodeScheduler, IControlPolicy, IControlStateObserver AIKernel.Abstractions.Control
ControlExecutionRequest, ControlExecutionResult, ControlPolicyEvaluation, ControlStateSnapshot, ControlEnvelope AIKernel.Dtos.Control

AIKernel.Control.Core は duplicate contract definition を所有しません。 AIKernel.NET package を参照し、Control 固有の runtime adapter、emulator、 scheduler、diagnostics は実装 repository 側で提供してください。

17.2 Provider routing decision DTO 分離

KernelProviderRoutingDecisionAIKernel.Dtos.Routing が所有する純 DTO です。 Core は runtime behavior を extension/helper API として保持します。

旧責務 新しい所有元
Routing decision data AIKernel.Dtos.Routing.KernelProviderRoutingDecision
Routing reason/score data AIKernel.Dtos.Routing.RoutingReason, AIKernel.Dtos.Routing.RoutingScore
Factory helper AIKernel.Kernel.KernelProviderRoutingDecisionFactory
ApplyToRequest, ToMetadata AIKernel.Kernel.KernelProviderRoutingDecisionExtensions

移行例:

using AIKernel.Dtos.Routing;\nusing AIKernel.Kernel;\n\nvar decision = KernelProviderRoutingDecisionFactory.ForProvider(\n    "llm-low",\n    "gpt-mini",\n    providerTier: "low",\n    routeReason: "short-context");\n\nvar routedRequest = decision.ApplyToRequest(request);

17.3 Core DSL / History public surface cleanup

DSL / History ROM contract は既に以下が所有しています。

Contract 領域 所有元
DSL interface AIKernel.Abstractions.Dsl
DSL DTO AIKernel.Dtos.Dsl
History interface AIKernel.Abstractions.History
History DTO AIKernel.Dtos.History

Core は Result / ResultStep ベースの DSL / History runtime adapter を internal に 保持します。Consumer は AIKernel.NET contract を対象にし、runtime 実装は hosting registration 経由で取得してください。

17.4 ローカル開発バージョン運用

0.1.0 開発中は NuGet cache 衝突を避けるため、local package に第 4 セグメントを 使えます。

フェーズ PackageVersion FileVersion 用途
開発中 0.1.0.10.1.0.n 同期 ローカル契約検証・CI
RC 0.1.0-rc1 固定 リリース候補
公開版 0.1.0.0 固定 NuGet 公開・契約固定

公開前には package family を NuGet 公開用の release version に揃え、依存グラフ全体を 再検証してください。


変更履歴

  • v0.0.0 / v0.0.0.0: 初期ドラフト
  • v0.0.1 (2026-05-06): ドキュメント規約に基づくバージョン更新
  • v0.0.2 (2026-05-09): Issue #4 の Vfs capability contract 移行手順、Issue #7 の Vfs 命名規約統一、provider/security capability contract 指針、Issue #8 の contract purity 移行、Issue #9 の provider capability 移行、Issue #10 の security/policy separation 移行、Issue #11 の sandbox/validator isolation 移行を追加
  • v0.0.3 (2026-06-02): Vfs contract 所有元の Abstractions への移動、AIKernel.Vfs type-forwarding 互換、package reference 指針、循環依存検証手順を追加
  • v0.0.4 (2026-06-04): AIKernel.Core adapter 移行に向け、DSL pipeline、DSL ROM、History ROM、Kernel clock contract 抽出、ROM store contract、曖昧な interface 改名ガイド、AIKernel.Vfs package 削除手順、interface-only contract package 移行手順を追加
  • v0.0.5 (2026-06-05): Abstractions-local DTO/例外実装、DTO enum 重複、旧 ChatChain 曖昧 interface を削除し、external Capability module contract、DynamicSLM Model ABI / SeedSLM discipline / distillation offload / HATL external cryptographic operator / governance admissibility gate・trajectory / Semantic Compilation DTO vocabulary contract 準備を追加
  • v0.1.0 (2026-06-07): MemoryRegion / MemoryMapper、Control Plane、provider-routing DTO contract ownership を AIKernel.Abstractions、AIKernel.Dtos、AIKernel.Enums に追加し、Result-based runtime adapter と routing behavior は Core/Common に残す。
  • v0.1.1 (2026-06-10): Core、Control、Providers、Tools、WASM、CUDA、Demo の同期リリースラインに合わせ、パッケージファミリを 0.1.1 で揃える運用ルールを追加
Source: operations/MIGRATION_GUIDE-jp.md