Commit Graph

52 Commits

Author SHA1 Message Date
d8aed7befe
tool: add execution context 2026-06-09 19:31:11 +09:00
9dcbd4c3e0
docs: reorganize developer documentation 2026-06-01 20:59:32 +09:00
e6c458021c
rename: adopt yoi identity 2026-06-01 18:49:23 +09:00
23f234d095
fix: preserve spawn event trace setting 2026-05-30 09:30:05 +09:00
e10b4ad4f0
refactor: move scope authority to pod store 2026-05-30 07:36:17 +09:00
211738132c
refactor: split pod metadata store 2026-05-30 07:16:50 +09:00
5de31a9be2
feat: add nix manifest profile foundation 2026-05-30 01:41:06 +09:00
e0caf7d17e
feat: type system reminder appends 2026-05-29 13:39:26 +09:00
4f1b17b9bf
pod: remind inactive task management 2026-05-29 13:23:01 +09:00
8416533695 feat: trace pre-stream lifecycle 2026-05-26 21:05:45 +09:00
be753099ae feat: surface llm retry and continuation state 2026-05-26 07:13:59 +09:00
65c399e6d9 fix: route worker history appends through callbacks 2026-05-24 06:44:19 +09:00
03e7795130 feat: rollback empty interrupted turns 2026-05-23 12:50:46 +09:00
fd1b06198e feat: add visible pod discovery tools 2026-05-23 12:04:45 +09:00
4795b6cb4a refactor: remove legacy plural log entries 2026-05-23 02:03:42 +09:00
1e0dc6566c feat: persist spawned pod registry 2026-05-22 23:30:02 +09:00
93c91e7c06 style: run cargo fmt 2026-05-22 22:03:27 +09:00
8a062b1a19 feat: add pod metadata store backend 2026-05-22 22:03:11 +09:00
a9340a8817 feat: live auto-fork の marker 形式を確定(seq 比較 + forked_from 記録)
方針: 末尾 entry-count 比較で検知し、元 Segment は immutable のまま
(terminal marker を書き戻さない)。fork lineage は新 Segment の
SegmentStart.forked_from に前向きに記録するため、log だけから辿れる。
過去 fork と対称で、nested fork も marker 位置の調停が不要。

- session-store ensure_head_or_fork に at_turn_index 引数を追加し
  新 Segment へ forked_from を記録
- pod ensure_segment_head の auto-fork も同様に forked_from を記録
  (at_turn_index = writer の現 turn_count)
- fork_at の doc に「元 Segment を mutate しない」invariant を明記
- test: nested past-fork が祖先を不変に保つ / Pod 並行 writer drift で
  auto-fork し forked_from を記録 / 元 Segment に marker が書かれない
2026-05-20 06:42:09 +09:00
0dfdd11921 update: session-grouping review follow-up
- PickerOutcome::Picked から未使用の session_id を除去(pod-cli が lookup_session_of で再解決)
- picker preview が singular AssistantItem も拾うように
- fs_store layout doc に migration(後方互換なし、旧 flat sessions は破棄)を明記
- TaskStore は Session-lifetime、ScopedFs/Tracker は Pod-process lifetime と用語整理
- Pod::session_id / from_manifest_spawned のコメント補強
2026-05-20 06:29:37 +09:00
5edc4d3b03 feat: Session(Segment 群の grouping)を導入
- SessionId 型を新設、各 SegmentStart に session_id を持たせる
- compaction / 内部 fork は同 SessionId を継承、fork() は新 Session を発行
- Store API を (SessionId, SegmentId) ベースに、FsStore layout は
  <root>/<session_id>/<segment_id>.jsonl に
- Store::list_sessions / list_segments(session_id) / lookup_session_of を追加
- restore_by_segment shim を session-store に提供(pod-cli --session で使用)
- SegmentState に SegmentLocation (session_id, segment_id) を保持し ArcSwap で更新
- RestoredState に session_id: Option<SessionId> を追加
- Picker は Session 単位に列挙、leaf segment を解決して resume
2026-05-20 06:17:56 +09:00
c2b55a498b update: 残存 Session 識別子の Segment 化(review follow-up)
レビュー指摘の通り、次の session-grouping-introduce で新 SessionId が
入る前に名称衝突を避けるため取り残しを掃除。

- PodError::Session{Empty,ScopeMissing} → Segment{Empty,ScopeMissing}
- ScopeLockError::SessionConflict → SegmentConflict
- Pod.session_state / SegmentState.set_session_id 系
- source_session_id / prev_session_id / ensure_session_head / short_session
- pod_cli の "Session ID:" 表示
- fs_store の sessions ローカル変数
2026-05-20 05:17:49 +09:00
22f5d02385 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
55c5ac4942 update: 旧用語コメントの掃除と KNOWN_ISSUES 追記
- 残存していた head_hash / SessionHead 言及コメントを 3 箇所更新
- FsStore::read_entry_count の O(n) 計測コストを KNOWN_ISSUES に登録
2026-05-20 04:53:33 +09:00
90e83bf2ae update: entry hash chain と session_head mutex を撤廃
- 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 依存を削除
2026-05-20 04:31:37 +09:00
79b8336a14 feat: Invoke marker と LlmCall callback を導入し AgentTurn セマンティクスを明確化
- protocol: InvokeKind enum、Event::InvokeStart / LlmCallStart / LlmCallEnd 追加
- llm-worker: Worker.llm_call_count と on_llm_call_start/end callback、turn_count を AgentTurn 数として doc 更新
- session-store: LogEntry::Invoke { ts, trigger } 追加 (replay は marker のみで state 不変)
- pod: run/run_for_notification 開始時に Invoke marker commit、PendingRun::RunForNotification(InvokeKind) で kind を伝搬
- pod ipc: sink + server で Invoke エントリーを Event::InvokeStart として broadcast
- tui: 新 Event 3種を no-op で受理 (UI 設計はチケット範囲外)
2026-05-15 07:04:26 +09:00
35fec78519 update: エントリの単数化のフォローアップ 2026-05-14 19:42:23 +09:00
988495cfea update: 書き込みの不要なasyncを削除 2026-05-14 19:16:48 +09:00
f9def2d5bb update: SystemItem1本化 2026-05-14 14:36:29 +09:00
e7064878c2 refactor: Podのメインループのリファクタリング 2026-05-14 03:27:49 +09:00
1803b0cf67 update: fmt + memoryに用いる言語の構成 2026-05-13 01:57:04 +09:00
a2aecbf029 update: memoryシステムの"Phase"表記を撤廃 2026-05-11 01:55:28 +09:00
60144c550a feat: パターンベースのツール権限制御を追加 2026-05-09 03:20:02 +09:00
75c573fed1 update: Reasoningコンテキスト管理のレビュー・対応 2026-05-04 23:05:08 +09:00
594671edc3 feat: Reasoningのコンテキスト管理の対応 2026-05-04 21:31:44 +09:00
b90291d5a0 fix: resume-scope-claim レビュー指摘対応 (deny セマンティクス doc・破損 snapshot の警告ログ) 2026-05-03 18:56:21 +09:00
4e48f35e55 feat: resume時のscope claimを過去の有効scopeに揃える 2026-05-03 17:12:36 +09:00
9ac127d607 chore: dev-depsの整理 2026-05-01 23:50:14 +09:00
99dc94416b chore: 依存パッケージの集約 2026-05-01 23:35:46 +09:00
d7bc7ab3dd ファイル参照を与えた際に自動的に読ませる実装 2026-04-30 21:58:10 +09:00
f31c58dccd cargo fmt 2026-04-29 23:20:25 +09:00
e3b36371e9 session-log-segments実装 2026-04-29 22:42:10 +09:00
8a9e3b4fe3 session-log-decouple-item実装 2026-04-29 22:24:18 +09:00
2b89bb6d2e resumeの実装 2026-04-28 18:52:58 +09:00
6fe19b84ce セッション関連の責務の分離 2026-04-28 15:43:34 +09:00
3d04f793de memoryを抽出する仕組みの実装 2026-04-28 12:58:33 +09:00
66c6edec3e システムプロンプトの実装 2026-04-15 02:44:42 +09:00
a0a9df11c0 cargo fmt 2026-04-14 03:13:36 +09:00
17d0430a4d usageデータの永続化実装 2026-04-13 07:09:05 +09:00
a05eec42d7 Compactの実装 2026-04-13 02:08:25 +09:00