CodeBurn’s (v0.9.19) shared Pi/OMP JSONL discovery gate requires the first physical line of a transcript to be a {"type":"session"} record.
Oh My Pi can write a fixed-width title metadata slot before that header:
{"type":"title","v":1,"title":"…","updatedAt":"…","pad":"…"}
{"type":"session","version":3,"id":"…","cwd":"…"}
As a result, valid OMP transcripts were rejected during discovery and omitted from:
codeburn sessions --provider omp
Upstream context
The earliest public upstream source found for this physical title-slot format is seemingly can1357/oh-my-pi@0ce330a
- Authored: 2026-06-27 13:13 UTC
- Committed: 2026-06-28 05:27 UTC
- Introduced SESSION_TITLE_SLOT_ENTRY_TYPE = "title" and fixed-width first-line title metadata.
Expected behaviour
Discovery skips blank lines, malformed records, and non-session metadata, then accepts the transcript when it finds a type: "session" record.
Acceptance criteria
- OMP title-first JSONL transcripts are discovered.
- Blank lines before the session record do not prevent discovery.
- Message-only files with no session record remain excluded.
- Pi and OMP retain identical shared discovery behaviour.
CodeBurn’s (v0.9.19) shared Pi/OMP JSONL discovery gate requires the first physical line of a transcript to be a
{"type":"session"}record.Oh My Pi can write a fixed-width title metadata slot before that header:
{"type":"title","v":1,"title":"…","updatedAt":"…","pad":"…"} {"type":"session","version":3,"id":"…","cwd":"…"}As a result, valid OMP transcripts were rejected during discovery and omitted from:
Upstream context
The earliest public upstream source found for this physical title-slot format is seemingly can1357/oh-my-pi@0ce330a
Expected behaviour
Discovery skips blank lines, malformed records, and non-session metadata, then accepts the transcript when it finds a type: "session" record.
Acceptance criteria