Zion Boggan
repos/TreeTrace/test/fixtures/adapters/PROVENANCE.md
zionboggan.com ↗
67 lines · markdown
History for this file →
1
# Adapter fixture provenance
2
 
3
Each fixture below reproduces the real on-disk or export schema of the tool it
4
represents. Where the structure came from a real session or a real published
5
sample, the message text has been replaced with neutral placeholder content so
6
no private conversation is republished. The field shapes, key names, value
7
types, and nesting are kept exactly as the real format.
8
 
9
## codex-session.jsonl
10
- Format: Codex CLI rollout JSONL (`~/.codex/sessions/.../rollout-*.jsonl`).
11
- Source: a real Codex CLI session captured locally (cli_version 0.139.0).
12
- Scrubbing: message text, cwd, instructions, and turn context replaced with
13
  neutral placeholders. Event/record schema (`session_meta`, `turn_context`,
14
  `response_item` messages, `function_call`, `token_count`) is unchanged.
15
- Status: VERIFIED against the original real session.
16
 
17
## gemini-session.json
18
- Format: gemini-cli ChatRecordingService session JSON.
19
- Source: google-gemini/gemini-cli, memory-tests/large-chat-session.json
20
  (https://github.com/google-gemini/gemini-cli), Apache-2.0.
21
- Scrubbing: a short slice of the real file with message `content`, `thoughts`,
22
  and `toolCalls` text replaced with neutral placeholders. The `sessionId`,
23
  `projectHash`, `messages[].type`, `content`, `tokens`, `model`, and
24
  `toolCalls` shapes are unchanged.
25
- Status: VERIFIED. The full real file parses through the adapter (51 user
26
  prompts, 1334 model turns, model gemini-3-flash-preview).
27
 
28
## chatgpt-conversations.json
29
- Format: ChatGPT/OpenAI account export `conversations.json` (array of
30
  conversations, each with a `mapping` of node id to message node).
31
- Source: sanand0/openai-conversations, samples/seoul-weather-early-october.json
32
  (https://github.com/sanand0/openai-conversations), MIT.
33
- Scrubbing: real export structure kept (`mapping`, `author.role`,
34
  `content.content_type`, `content.parts`, `parent`, `children`,
35
  `create_time`); all message text and tool output replaced with placeholders;
36
  heavy per-node metadata trimmed to `model_slug` only.
37
- Status: VERIFIED. The original sample parses through the adapter.
38
 
39
## copilot-chatsession.json
40
- Format: VS Code GitHub Copilot Chat session JSON (version 3, `requests[]`).
41
- Source: Timcooking/VSCode-Copilot-Chat-Viewer, demo-chat.json
42
  (https://github.com/Timcooking/VSCode-Copilot-Chat-Viewer), MIT.
43
- Scrubbing: real `requesterUsername`, `responderUsername`, `requests[].message`
44
  (`text` + `parts`), and `response[].value` shapes kept; text replaced with
45
  neutral placeholders.
46
- Status: VERIFIED against the published demo session.
47
 
48
## cursor-export.json
49
- Format: Cursor exported-chat JSON, matching the cursor-history exporter's
50
  single-session JSON (`id`, `title`, `messages[].role/content/model/toolCalls`).
51
- Source: schema from S2thend/cursor-history src/core/types.ts and
52
  src/cli/formatters/json.ts (https://github.com/S2thend/cursor-history), MIT.
53
  Cursor stores chat in state.vscdb (SQLite); the adapter ingests the exported
54
  JSON because TreeTrace ships with zero runtime dependencies and cannot open
55
  SQLite. This fixture mirrors that exporter's output.
56
- Status: VERIFIED against the exporter's documented schema (no SQLite needed).
57
 
58
## grok-session.json
59
- Format: Grok CLI exported conversation JSON
60
  (`timestamp`, `model`, `messageCount`, `conversation[].role/content`), the
61
  xAI OpenAI-compatible message shape.
62
- Source: schema from lalomorales22/grok-4-cli lib/export.js `exportToJSON`
63
  (https://github.com/lalomorales22/grok-4-cli). The primary superagent-ai
64
  grok-cli stores history in SQLite (no JSON on disk), so this adapter targets
65
  the exported-JSON shape.
66
- Status: EXPERIMENTAL. Built to the exporter's documented JSON shape; not yet
67
  validated against a captured real Grok session on this machine.