feat(LUKE-47): integrate existing Codex sessions

Merged
DA
2mo ago
+813-3

Summary

  • Add a passive Codex session adapter in the Electron main process that reads bounded session metadata from Codex state using a read-only SQLite connection.
  • Register Codex beside the existing Claude Code adapter, with no provider controls exposed for independent active sessions.
  • Cover metadata-only observation, stale filtering, archived-thread filtering, missing state DB behavior, unavailable SQLite support, and Codex SQLite-home resolution.

Evidence

  • Platform-independent checks: ./scripts/check.sh passed after review fix
  • macOS Electron verification (./scripts/verify.sh): on the initial commit, portable checks passed locally, then screenshot packaging stopped with error: this command requires macOS in this Linux workspace; CI macOS app/evidence passed for the PR
  • Linux headless fixture screenshot: Expanded smoke fixture

Automated visual evidence

Download the deterministic macOS evidence · workflow run

  • Commit: 7a92f19e88376579afdc3292d61af1c3ce4f8efa
  • Scenario: smoke
  • Physical-notch check: not performed by CI

Physical-device evidence

  • Screenshot or screen recording: Linux headless expanded fixture screenshot attached above
  • Physical-notch check: not performed
  • Device/display configuration: Linux headless Chrome fixture harness, 620x520 expanded view

Notes

  • ./scripts/verify.sh could not complete canonical macOS screenshot evidence locally because this workspace is not macOS.
  • Local smoke read against the default Codex metadata path observed the current session as Codex: luke, working, with no controls.
  • Resolved Cursor Bugbot's SQLite state-home finding in 1d3953b.