- HashedEntry / EntryHash / compute_hash / build_chain 撤去、JSONL は 1 行 1 LogEntry - SessionOrigin.at_hash → at_turn_index (TurnEnd 由来) に置換 - Pod 側 SessionHead mutex を ArcSwap<SessionId> + AtomicUsize の SessionState に置換 - ensure_head_or_fork は store の entry count と writer の append tally で判定 - session-store から sha2 / hex 依存、pod から parking_lot 依存を削除 |
||
|---|---|---|
| .. | ||
| examples | ||
| src | ||
| tests | ||
| build.rs | ||
| Cargo.toml | ||
| README.md | ||
pod
独立したエージェント実行単位「Pod」を実装するクレート。LLM ワーカーセッションをマニフェスト設定・ファイルスコープ制約と組み合わせ、Unix ソケット経由の双方向通信で操作可能にする。
公開型
コア
Pod<C, St>— LLM ワーカーセッション + マニフェスト + スコープのラッパー(run(),resume(),from_manifest())PodRunResult— 実行結果(Finished,Paused)PodError— エラー型
制御
PodController— Pod ライフサイクルを管理するアクター(spawn()でタスク起動)PodHandle— Pod への操作ハンドル(send(),subscribe())PodSharedState/PodStatus— 共有状態(Idle,Running,Paused)
ランタイム
RuntimeDir—$XDG_RUNTIME_DIR/insomnia/{pod_name}/配下のランタイムディレクトリ管理(ステータス・履歴のアトミック書き込み)SocketServer— Pod Protocol 用 Unix ソケットサーバー