Repository navigation
Releases: revertable/codex-session-observatory
Release list
Codex Session Observatory v2.1.0
This release adds Session / Transcript search and moves action feedback from the Status row into Toasts. Find past user requests across local sessions, or highlight and navigate matching content in the current transcript.
Session search
- Search the complete Session Navigator snapshot, including sessions beyond the pages currently loaded in the list. Support both plain
.jsonland compressed.jsonl.zstrecords. - Match only actual YOU messages using the existing parser's classification. Codex responses, tool calls, tool results, and metadata are excluded.
- Show matching sessions and their result count while retaining Flat / Hierarchical views, ordering, paging, and session selection.
- Keep the existing discovery boundary under
CODEX_HOME/sessions, including the existing exclusions for archives, Guardian reviews, and linked sources. - Report progress, completion, and unreadable files through Toasts. Ignore superseded searches so older results cannot replace a newer search.
- Submit an empty Session query to restore the complete list. Reload Sessions discovers current files and reapplies the last submitted query.
Transcript search
- Search rendered message bodies that pass the current Filters. Collapsed bodies become searchable when expanded.
- Highlight matches, scroll to the active result, and show the current position and total count. Repeating the same search advances to the next result and wraps after the last match.
- Match displayed Markdown text across inline formatting while preserving line and paragraph boundaries. Keep existing message nodes, link behavior, and Collection snapshots intact.
- Recompute results after filter, collapse, Refresh, theme, or session changes using the last submitted condition. Search preserves the existing filters and Collection state.
- Submit an empty Transcript query to clear its highlights and result position.
Shared SEARCH controls
- Replace the header's Status row with SEARCH, a Session / Transcript selector, a query input, and a magnifying-glass button.
- Keep one shared input across scope changes, with separate last-applied conditions and results for Session and Transcript. Editing or deleting the input, or switching scope, preserves existing results and highlights.
- Apply the input only when Enter or the magnifying-glass button is used. Searches use literal, case-insensitive substrings and ignore surrounding query whitespace.
- Use Ctrl+F to focus the Observatory input and select its existing text while retaining the chosen scope, in place of WebView2's default Find UI.
- Reserve a fixed result area with room for 999 / 999, keeping the input width stable as counts change. Preserve the 44px header row and the three-panel layout.
Toast feedback
- Show action results, progress, warnings, and errors at the bottom right, above the workspace. Hide the idle
Ready.message. - Distinguish Success, Info, Progress, Warning, and Error with status icons and accent colors. Progress uses an animated loading icon and respects reduced-motion preferences.
- Use dark Toasts for Terminal Style / DM Style (Dark) and light Toasts for Markdown Style / DM Style. Apply theme changes immediately to visible notifications.
- Use compact 360px cards with a close button. Allow long errors to wrap and scroll while keeping the panel layout unchanged.
- Dismiss Info and Success after 4 seconds, Warning after 8 seconds, and Error after 12 seconds. Keep active Progress visible until completion, and pause automatic dismissal during mouse or keyboard inspection.
- Preserve status priority, request tokens, and stale-response protection across copying, loading, search, and export operations.
Verification and compatibility
- Pass the complete automated verification: 76 frontend unit tests, 25 browser integration tests, 164 backend tests, and 10 Tauri tests, together with static checks and production builds. Two existing tests that require private local logs remain opt-in.
- Verify Session and Transcript search, filter updates, result navigation, and Ctrl+F in the Windows app using synthetic session records.
- Synchronize application versions and Windows executable metadata at 2.1.0. Remove the trailing period from the Terminal
[OK] Latest public versionnotice while preserving public-release comparison behavior. - Keep original JSONL records, transcript order, Collection copying, and the Worklog export format unchanged. Search runs locally without a persistent index or external search service.
This remains a portable Windows x64 release with no installer or automatic update behavior.
Code signing policy
See the Code signing policy. The policy is a draft for the SignPath Foundation application; code signing is not enabled. This release remains unsigned.
Codex Session Observatory v2.0.1
This release remembers your Flat / Hierarchical session view and updates frontend dependencies to resolve HIGH-severity security advisories.
Session Navigator preferences
- Save the selected Flat or Hierarchical view on this device and restore it when the app reopens.
- Load the restored Hierarchical view from the newly discovered session snapshot.
- Use Flat when no valid saved choice is available.
- Keep view switching available if the choice cannot be saved, with a warning in Status.
Dependency security
- Update Vite from 8.0.16 to 8.1.6, devalue from 5.9.2 to 5.9.4, and source-map-js from 1.2.1 to 1.2.2, together with the required Vite dependencies.
- Resolve the three HIGH-severity package findings reported by
npm audit; the updated dependency graph reports zero known vulnerabilities at release verification. - These updates cover development, build, and Svelte server-rendering dependencies. The desktop app continues to use a bundled client-rendered frontend.
Verification and compatibility
- Add regression coverage for saved view restoration, invalid values, and storage failures, including app remounts in a real browser.
- Keep original JSONL records, transcript order, Collection behavior, and the Worklog export format unchanged.
This remains a portable Windows x64 release with no installer or automatic update behavior.
Codex Session Observatory v2.0.0
v2.0.0 is a Major Update. Session Navigator, a three-panel workspace, and a redesigned reading and reuse workflow make this a substantial change to how you work with local Codex sessions.
Session Navigator
- Browse local sessions directly from the new Sessions panel, with Flat and Hierarchical views.
- Load additional Flat results as you scroll, or explore the session date folders.
- Open ordinary and ChatGPT Handoff sessions, including
.jsonl.zstcompressed records. - Reload the session list independently of the current Transcript and Collection.
- Use a session's context menu to Open, Open Containing Folder, or Export Worklog, including export without selecting that session.
- Show missing local title metadata as Untitled Session, with identifying information in a tooltip. Recent conversation activity emphasizes titles without reordering the list.
Three-panel workspace and desktop workflow
- Arrange Sessions / Transcript / Collection in one workspace with independent side-panel toggles and resizable boundaries.
- Use the available height consistently, with independent scrolling and Top/Bottom controls for each panel.
- Simplify the header around session information, Resume copying, appearance, filters, and common action feedback.
- Move Capture and Transcript Refresh into the Transcript header and streamline Collection controls.
- Separate the Loaded/Idle badge from Reset and consolidate action results, progress, warnings, and errors into the Status line.
- Update the default window to 1360×760, with a 1100×720 minimum.
Appearance and readability
- Add independent Text and Code selectors using fonts installed on Windows, with saved choices and a Default option.
- Use the allocated Transcript width consistently across Terminal, Markdown, DM, and DM Dark.
- Improve DM inline-code and role/timestamp contrast, shared typography, panel boundaries, and icon controls.
Session handling and responsiveness
- Stream plain and zstd-compressed JSONL through the existing parsing flow.
- Fix Refresh control reactivity while preserving Collection snapshots, source order, and panel state.
- Move blocking parse and Export file work away from the native window thread, with controlled file-operation concurrency.
- Preserve existing message DOM across filter changes using stable identities, including distinct duplicate messages.
- Reduce large-transcript DOM overhead by removing redundant ordinary-text wrappers while retaining full content and semantic rendering.
In recorded single-PC synthetic tests, sampled filter DOM reuse improved from 1/20 to 20/20 messages. A large Export's maximum native message-response probe delay fell from 326.8 to 3.4 ms; this measures responsiveness rather than Export throughput. In a separate Terminal test with 2,500 visible messages, HTML elements fell from 107,942 to 77,942, and the median initial-display time across three runs changed from 3,092.9 to 2,831.3 ms.
These are distinct measurements with different baselines, not combined or universal performance guarantees. Large-body redisplay costs remain, and overall application memory savings were not established for the final rendering change. Conditions, validation, and rejected approaches are documented in Performance History.
Compatibility and outputs
- Keep original JSONL records unchanged and preserve transcript order.
- Keep Collection separate from Capture Transcript and complete-session Worklog export.
- Retain existing Worklog format and overwrite safeguards.
This remains a portable Windows x64 release with no installer or automatic update behavior.
Codex Session Observatory v1.3.0
This release introduces the Collection Panel, improves Markdown rendering across all transcript themes, and refines the desktop reading experience.
Collection Panel
- Added a Collection Panel for gathering individual transcript messages.
- Added per-message + / ✓ controls to collect or remove messages.
- Preserved the original transcript order, regardless of selection order or timestamps.
- Added Copy All to copy collected messages together and Clear to reset selections.
- Preserved collection contents, selection indicators, and panel state across Refresh, filter changes, and theme changes.
- Reset the collection when loading another JSONL file or clearing the current session.
- Kept Collection independent of Capture Transcript and Export Worklog.
Markdown rendering
- Added shared Markdown rendering for user and Codex messages across all four themes.
- Improved headings, emphasis, lists, links, inline code, and fenced code blocks.
- Added Markdown table rendering with improved handling of wide content.
- Kept tool calls, tool results, and metadata in plain-text presentation.
- Reduced unnecessary DOM reconstruction through shared static rendering.
Transcript and desktop workflow
- Preserved existing transcript content during Refresh, including when reloading fails.
- Improved recognition of human requests, injected context, and structured Codex question replies.
- Added a compact Collection toggle beside the theme selector.
- Added Scroll to Bottom alongside the existing Top navigation.
- Refined Collection headers, message controls, local timestamps, and panel layout across all themes.
- Improved layout consistency across different window sizes.
Compatibility and behavior
- Preserved original JSONL files without modification.
- Kept Capture Transcript based on the current filtered, themed, and collapsed view.
- Kept Export Worklog based on the complete source session, independently of Collection selections.
- Maintained the existing Worklog export format and desktop integration.
This remains a portable Windows release with no installer or automatic update behavior.
Codex Session Observatory v1.2.1
This release adds transcript support for Codex user input questions introduced in recent Codex sessions.
User input questions
- Added support for Codex user input question events recorded in session JSONL.
- Displays structured Codex questions as normal Codex transcript messages.
- Preserves the original order of selectable options.
- Supports free-input questions without adding synthetic choices.
- Keeps user responses as independent user messages without inferring question-response relationships.
Compatibility
- Preserved existing ToolCall parsing and filtering behavior.
- Kept
request_user_input_asynctool calls available through the existing ToolCall view. - Avoided merging question events with nearby Codex messages based only on timestamp or content.
- Preserved existing transcript, Capture Transcript, and Worklog behavior.
- Maintained the existing public API and frontend data contract.
This remains a portable Windows release with no installer or automatic update behavior.
Codex Session Observatory v1.2.0
This release renames the application to Codex Session Observatory, adds per-message timestamps, and completes the application identity cleanup.
Per-message timestamps
- Added local date and time to individual transcript messages.
- Preserved original JSONL timestamps, including messages from sessions resumed on later dates.
- Applied timestamp display across Terminal, Markdown, and DM themes.
- Included timestamps in Capture Transcript.
- Kept messages without valid timestamps free of inferred dates or times.
Application identity and consistency
- Renamed the application from Codex JSONL Observatory to Codex Session Observatory.
- Updated executable names, portable package metadata, and project references.
- Updated the Tauri application identifier and Windows publisher metadata.
- Added a distinct notice for unpublished development versions.
- Refined the initial screen layout across all themes.
- Consolidated the shared timestamp formatter in TypeScript.
Worklog export compatibility
- Changed the Worklog generator identifier from
codex-jsonl-observatorytocodex-session-observatory. - Worklog bundles created by earlier versions cannot be refreshed in place by v1.2.0.
- Existing Worklog files remain unchanged when a refresh is rejected. Select a new export destination to create a Worklog with v1.2.0.
Using v1.2.0 or later is recommended for future Worklog exports and management.
This remains a portable Windows release with no installer or automatic update behavior.
Codex JSONL Observatory v1.1.3
This release adds lightweight update awareness and completes a round of consistency and maintenance work.
Update awareness
- Checks for newer public releases when the app starts.
- Shows an update notice only when a newer version is available.
- Opens the official GitHub Releases page for downloading.
- Update checks fail silently when offline or unavailable.
- No automatic download, installation, or background polling is performed.
Consistency and maintenance
- Aligned
Taskfiltering semantics across the application. - Updated project and portable package metadata for
1.1.3. - Removed obsolete scaffold and unused implementation remnants.
- Refreshed current documentation to match the application structure.
This remains a portable Windows release with no installer or automatic update behavior.
Codex JSONL Observatory v1.1.2
This release improves JSONL processing and transcript rendering while keeping existing workflows and compatibility intact.
JSONL processing
- Replaced whole-file eager loading with streaming JSONL processing.
- Added a typed fast path for known Codex envelopes while preserving fallback handling for legacy and unknown shapes.
- Reduced unnecessary intermediate allocations and cloning in the parsing and domain pipeline.
- Simplified Tauri serialization while preserving the existing frontend contract.
Transcript rendering
- Removed unnecessary full transcript remounts during filter changes.
- Preserved existing collapse and reset behavior through explicit transcript state handling.
Capture Transcriptnow generates output directly from transcript data instead of reading rendered DOM text.- Reduced unnecessary renderer teardown and recreation during filtering, reloads, and theme changes.
Maintenance
- Cleaned up implementation details introduced during the refactor.
- Updated architecture documentation to reflect the current parsing, session routing, transcript state, and capture flow.
- Replaced the default frontend README with project-specific development documentation.
- Updated application and package metadata for
1.1.2.
Existing filters, themes, Worklog export, Capture Transcript, session routing, and legacy JSONL fallback behavior remain compatible.
Codex JSONL Observatory v1.1.1
This release refines transcript-focused workflows and improves filter and refresh behavior.
Transcript experience
- The default transcript view now focuses on the core conversation with
YOUandCODEXenabled by default. - Visually emphasizes
YOUandCODEXwhile keeping tool and metadata filters available on demand. - Added a
Topaction for quickly returning to the top of the application. - Reduced redundant trailing spacing in the Terminal transcript view.
File and filter behavior
- Changed the selected JSONL path field to read-only; session files are selected through
Select JSONL. Refreshnow consistently reloads the currently selected JSONL file.- Fixed filter loading so Tool calls, Tool results, and Meta remain available when enabled after the initial load.
Existing themes, transcript filters, session loading, and Worklog workflows remain compatible.
Codex JSONL Observatory v1.1.0
This release adds session-aware transcript handling and improves how ChatGPT-originated context is separated from normal user conversation.
Session handling
- Detects Guardian review child sessions as specialized sessions instead of ordinary conversations.
- Allows opening a locally available parent session using its verified thread ID.
- Preserves referenced ChatGPT conversation provenance, including title and conversation ID.
Transcript and Worklog behavior
- Distinguishes human-authored requests from generated handoff tasks and injected ambient UI context.
- Keeps confirmed transport and context data out of the normal
[YOU]transcript flow. - Excludes cached ChatGPT conversation previews from transcripts and exported Worklog bodies.
- Preserves referenced-conversation metadata in Worklog indexes without exporting preview contents.
Maintenance
- Updated architecture and project documentation for the current Tauri desktop structure.
Existing transcript rendering, filters, themes, and Worklog workflows remain compatible.