Skip to main content

deepstrike_core/runtime/
kernel.rs

1//! Stable host/kernel ABI.
2//!
3//! The public protocol, runtime dispatcher, and contract tests live in focused
4//! submodules so the wire contract can evolve independently from step execution.
5
6use serde::{Deserialize, Serialize};
7
8use crate::context::pressure::PressureAction;
9use crate::context::renderer::RenderedContext;
10use crate::context::task_state::TaskUpdate;
11use crate::context::token_engine::ContextTokenEngine;
12use crate::runtime::session::RollbackReason;
13use crate::scheduler::policy::SchedulerBudget;
14use crate::scheduler::state_machine::{LoopAction, LoopEvent, LoopStateMachine};
15use crate::types::agent::AgentRunSpec;
16use crate::types::capability::{CapabilityCommand, CapabilityDescriptor, CapabilityKind};
17use crate::types::message::{Message, ToolCall, ToolResult, ToolSchema};
18use crate::types::milestone::{MilestoneCheckResult, MilestoneContract};
19use crate::types::result::{LoopResult, SubAgentResult};
20use crate::types::signal::RuntimeSignal;
21use crate::types::skill::SkillMetadata;
22use crate::types::task::RuntimeTask;
23
24mod protocol;
25mod runtime;
26
27pub use protocol::*;
28pub use runtime::KernelRuntime;
29
30#[cfg(test)]
31mod tests;