Japanese version: IThoughtProcess (インターフェース仕様)
IThoughtProcess (Interface Specification)
1. Responsibility Boundary
IThoughtProcess is the boundary interface that owns the first stage of AIKernel's two-phase execution model: the Structure phase.
- Role:
- Non-role:
Analyze context and build intermediate logical structure (RawLogic) including task decomposition, constraint extraction, and solution planning.
Final user-facing expression generation belongs to IOutputPolisher. Implementations should not directly call provider APIs; reasoning must be handled through orchestration-layer abstractions.
2. Contract Signature
namespace AIKernel.Abstractions.Execution;\n\n/// <summary>\n/// Builds intermediate reasoning logic from contextual inputs.\n/// </summary>\npublic interface IThoughtProcess\n{\n /// <summary>\n /// Minimum model capability vector required by this thought process.\n /// </summary>\n ModelCapacityVector RequiredCapacity { get; }\n\n /// <summary>\n /// Builds intermediate logic from the orchestration context.\n /// </summary>\n /// <param name="orchestrationContext">Execution context including instruction, material, and history buffers.</param>\n /// <param name="ct">Cancellation token.</param>\n /// <returns>Constructed intermediate logic (`RawLogic`).</returns>\n Task<RawLogic> BuildLogicAsync(IContextCollection orchestrationContext, CancellationToken ct = default);\n}
Note: LogicConstructionException is a representative implementation-layer exception name. The current abstraction contract does not hard-code exception type names.
3. Related Use Cases
UC-02Structure phase execution:UC-29Task pipeline management:
Serves as the core for task decomposition and execution-plan construction.
Used as an intelligence unit when building DAG-style task pipelines.
4. Governance & Determinism
- Maintain reasoning purity:
- Fail-Closed:
BuildLogicAsync is expected to derive RawLogic from the input context with minimized side effects.
If instruction and material contain irreconcilable contradictions, terminate on the deny side instead of generating an uncertain plan.
5. Implementation Notes
- Declare capacity explicitly:
- Respect context isolation:
Properly defining RequiredCapacity allows IModelVectorRouter to select an optimal execution target.
Preserve orchestration buffer boundaries (instruction/material/history) to prevent attention pollution.
Changelog
- v0.0.0 / v0.0.0.0: Initial draft
- v0.0.1 (2026-05-06): Version upgrade aligned with documentation guidelines
architecture/interfaces/execution/IThoughtProcess.md