Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Evaluate: Tree-structured session storage (Pi pattern) for terraphim_persistence

オープン
#683 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
rust
領域
backend

調査の方向性

Start with terraphim_persistence (#637) and ADF session persistence (#639), then read the linked Pi session format. Prototype the id/parentId JSONL approach and compare parsing and storage for 1000+ entries against the current linear format. Document trade-offs and finish with an adopt, adapt, or reject decision.

索引モデルが issue の本文から書いたものです。

説明

enhancement

Parent Epic

#682 -- Evaluate Pi architectural patterns

Pattern

Pi (badlogic/pi-mono) uses tree-structured JSONL for session storage. Each entry has id and parentId fields, enabling in-place branching without creating new files. A visual /tree navigator lets users jump to any point and continue from there. All branches are preserved in a single file.

Current State

  • terraphim_persistence (#637-#642) plans to use Persistable trait + DeviceStorage with SQLite/redb backends
  • Claude Code uses linear JSONL with lossy auto-compaction (no branching within a session)
  • ADF session persistence (#639) captures Claude Code's --output-format stream-json output as linear JSONL
  • terraphim-agent sessions import reads linear JSONL from ~/.claude/projects/

Evaluation Questions

  1. Does tree-structured JSONL improve debugging and replay for ADF agent sessions? Current linear format loses context on compaction. Tree format preserves all branches.
  2. Is the id/parentId overhead justified? Each entry gains two fields. Measure storage and parse overhead for typical 500-2000 message sessions.
  3. Can tree structure coexist with Claude Code's linear format? terraphim-agent imports Claude Code sessions. If we adopt tree format internally, we need a conversion layer.
  4. Does the tree structure enable new capabilities? E.g., comparing different agent approaches on the same prompt, replaying from a checkpoint with different models.

Acceptance Criteria

  • Document trade-offs (storage overhead, parsing complexity, tooling requirements)
  • Prototype tree-structured session format for terraphim_persistence
  • Benchmark parse performance vs linear JSONL for 1000+ entry sessions
  • Decision: adopt, adapt, or reject with rationale

References

主要言語
Rust
スター
62
フォーク
5
平均マージ
2時間 27分
マージ済み PR(30日)
1

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

terraphim/terraphim-ai のほかの issue

terraphim/terraphim-ai の issue をすべて見る

似ている issue

Rust の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。