Skip to content

feat: list Codex sessions across default and Orca homes (#79) - #80

Merged
abruption merged 2 commits into
mainfrom
feat/79-multi-home-list
Sep 16, 2026
Merged

abruption merged 2 commits into
mainfrom
feat/79-multi-home-list

Conversation

@abruption

Copy link
Copy Markdown
Owner

Codex sessions in Orca/custom homes were absent from default listing unless callers already knew the home path. Default list now queries bounded default, CODEX_HOME, Orca and configured candidates on the destination and adds codexHome/stateDb to every Codex row. Explicit --codex-home remains single-home, including MCP destinations.

Closes #79. Stacked on #78, which is still open. Merge order: #76 → #77 → #78 → this PR; retarget this PR to main after #78 merges.

  • Preserve the same UUID in different homes; deduplicate canonical home aliases and sort Codex rows deterministically.
  • Expose discovery.codex.homes and inventory errors, retaining successful Codex/Claude results on partial failures. Explicit/environment/configured missing homes fail; absent optional candidates do not.
  • Automatic discovery with no Codex installation now returns not_installed and exit 0. Errors still return exit 1. The legacy top-level codexHome remains only for a single candidate without inventory errors; consumers should use row-level paths.
  • Preserve strict send/wake ambiguity handling and MCP's explicitly pinned home boundary. Update CLI help, README, JSON documentation and skill guidance.

Validation: 290 tests pass with MCP dependencies; standalone suite passes with two optional protocol tests skipped. New fixtures cover all candidate sources, duplicate UUIDs, aliases, explicit selection, missing/corrupt/unsupported DBs, invalid timestamps/configuration, enumeration/read/resolve failures, archived filtering, SSH source execution with destination environment, multi-host metadata and MCP isolation. Wheel/sdist build and diff checks pass.

Read-only live checks: local default home returns 19 sessions; SSH macbook returns 164 across default + two Orca homes. Explicit remote home returns only 25 sessions from that home. Adding a nonexistent local configured home preserves 19 valid rows and reports the missing home with exit 1. No messages sent, queue/state DB writes, runtime activation or release performed.

@abruption
abruption changed the base branch from feat/46-codex-wake to main September 16, 2026 10:59
@abruption
abruption merged commit 0ea0ca2 into main Sep 16, 2026
13 checks passed
@abruption
abruption deleted the feat/79-multi-home-list branch September 18, 2026 07:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: list Codex sessions across default, Orca, and configured homes

1 participant