Commit Graph

77 Commits

Author SHA1 Message Date
5ba4be1c9b
refactor: remove legacy plural log entries 2026-05-23 02:03:42 +09:00
bd32f704b4
feat: resume pods by name 2026-05-22 22:57:16 +09:00
8aca67c97c
style: run cargo fmt 2026-05-22 22:03:27 +09:00
3f3ead3b71
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
a6cc05f74c
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
d7ff25b6a7
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
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
d5dff6d17b
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
d0dbac109d
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
6e5b1482e6
update: エントリの単数化のフォローアップ 2026-05-14 19:42:23 +09:00
7520dcad87
update: 書き込みの不要なasyncを削除 2026-05-14 19:16:48 +09:00
fe9cecb51a
update: SystemItem1本化 2026-05-14 14:36:29 +09:00
350bb1afd8
fix: 実態にそぐわないEvent::Entryを実装した構造を訂正 2026-05-14 03:35:52 +09:00
0f76142993
refactor: Podのメインループのリファクタリング 2026-05-14 03:27:49 +09:00
7363b105f6
feat: handle directory file refs 2026-05-13 02:57:58 +09:00
eae0efb2c0
update: fmt + memoryに用いる言語の構成 2026-05-13 01:57:04 +09:00
e647d1a7c9
feat: client-crateの実装 2026-05-10 00:57:50 +09:00
16bd8e3a88
feat: compactのプログレス表示 2026-05-09 03:11:53 +09:00
c0c5eb9ad2
feat: TUIのmarkdown対応 2026-05-05 18:30:25 +09:00
0a83909f30
feat: Task表示のレビュー・修正 2026-05-04 17:28:39 +09:00
9072ac4e03
feat: TUI上に進行中のTaskを表示する実装 2026-05-04 17:06:02 +09:00
c48b99cfe3
feat: Pos処理の非同期化・Busy状態の削除 2026-05-04 15:52:27 +09:00
0be30052c1
feat: Podのステータスを厳密にし、同期漏れを防ぐ 2026-05-04 12:55:11 +09:00
1451998e0e
Merge branch 'tui-system-message-render' into develop 2026-05-04 12:10:17 +09:00
ac1a672973
feat: システムメッセージをTUIで表示させる 2026-05-04 12:04:09 +09:00
8be579dc3c
feat: tuiのトークン集計表示の修正 2026-05-04 00:01:37 +09:00
c214ea79d4
update: tuiからspawnする際にエラー詳細が落ちていた問題を修正 2026-05-03 21:47:54 +09:00
ee9c60bec2
Merge branch 'resume-scope-claim' into develop
# Conflicts:
#	TODO.md
2026-05-03 18:59:01 +09:00
c759307e40
feat: resume時のscope claimを過去の有効scopeに揃える 2026-05-03 17:12:36 +09:00
9010a920a4
feat: TUIに他Podからの通知を表示する 2026-05-03 12:45:05 +09:00
d9f55185f0
update: tuiの文字入力のCtrlブロックを追加 2026-05-03 00:44:38 +09:00
d8d802d120
fix: tuiからのPod作成の挙動を修正・開発時にcargo runでpodを起動する経路を実装 2026-05-02 02:13:30 +09:00
fa84d48c62
fix: SpawnPodの起動経路の問題・を修正 2026-05-02 01:09:57 +09:00
25b016f3da
feat(tui): マウスホイールでスクロールする実装 2026-05-01 23:14:16 +09:00
97f9b14ceb
bashツール実装 2026-05-01 18:14:13 +09:00
75c61bd3cb
TUI補完の細かい挙動修正 2026-04-30 14:38:03 +09:00
6788db1ef2
tuiの補完の実装 2026-04-30 12:46:48 +09:00
d2ee84775b
cargo fmt 2026-04-29 23:20:25 +09:00
010edf2c94
session-log-segments実装 2026-04-29 22:42:10 +09:00
1ab6dbcee3
session-log-decouple-item実装 2026-04-29 22:24:18 +09:00
119a73c112
tui-input-word-motionレビュー・半角カナに関する修正 2026-04-29 21:41:24 +09:00
862c38d7f7
tuiの単語単位Backspace 2026-04-29 21:31:19 +09:00
0ad3923932 tuiの単語境界カーソル移動実装 2026-04-29 21:23:29 +09:00
71434b9d8b scope-lock -> pod-registry 2026-04-29 20:01:32 +09:00
b9575f1534 tuiからセッションを復帰する経路の実装 2026-04-29 19:03:03 +09:00
e98a596235 不要なforkの削除 2026-04-28 20:19:50 +09:00
3c90729156 resumeの実装 2026-04-28 18:52:58 +09:00
d5d0e4124b tui-thinking-display修正 2026-04-28 16:22:45 +09:00
b192a3ce4e TUIにThinkingを表示する実装 2026-04-28 16:10:48 +09:00
7d0b639fa4 cargo fmt 2026-04-27 22:51:07 +09:00