yoi/crates/pod
Hare 0d7c37f673
update: SessionId / SessionStart / SessionOrigin 等を Segment 系名称へ
- Type/Function/Variantを Segment* 系へ統一
  - SessionId/SessionStart/SessionOrigin/SessionStartState/SessionState/SessionLogSink/SessionLockInfo
  - new_session_id / session_id / create_session* / list_sessions / lookup_session / update_session / find_by_session
  - protocol Event::SessionRotated → SegmentRotated、CompactDone.new_session_id → new_segment_id
- Module: session_log → segment_log / session → segment (file mv 含む)
  pod 側の session_log_sink → segment_log_sink も同様
- crate 名 (session-store)、CLI flag (--session)、ResumeWithSession (CLI tied) は据え置き
- session-tests/session_metrics_test 等の Store impl も追従
2026-05-20 05:06:04 +09:00
..
examples update: SessionId / SessionStart / SessionOrigin 等を Segment 系名称へ 2026-05-20 05:06:04 +09:00
src update: SessionId / SessionStart / SessionOrigin 等を Segment 系名称へ 2026-05-20 05:06:04 +09:00
tests update: SessionId / SessionStart / SessionOrigin 等を Segment 系名称へ 2026-05-20 05:06:04 +09:00
build.rs cargo fmt 2026-04-27 22:51:07 +09:00
Cargo.toml update: entry hash chain と session_head mutex を撤廃 2026-05-20 04:31:37 +09:00
README.md Remove Pod-ID 2026-04-11 14:18:49 +09:00

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 ソケットサーバー