Skip to content

Expose live review URLs through private session locks - #35

Merged
rcosteira79 merged 2 commits into
mainfrom
feat/live-session-urls
Nov 2, 2026
Merged

rcosteira79 merged 2 commits into
mainfrom
feat/live-session-urls

Conversation

@rcosteira79

Copy link
Copy Markdown
Collaborator

An external tool could identify a saved review but could not reopen its live browser page without parsing CLI output. Publish reviewUrl and, for attached sessions, bridgeUrl in <session>.json.lock after the server starts listening.

Preserve the existing pid, ownership token, and startedAt fields and all stdout output. URL publication atomically replaces the lock with mode 0600, verifies ownership, and serializes with release so a late write cannot recreate a released lock. Normal shutdown removes the fields with the lock; readers ignore dead PIDs and resume replaces stale locks. The usage guide documents this contract for tools such as Herdr.

Validation: typecheck, 55 focused session-library/lifecycle tests, and a Chromium test against real CLI sessions. The browser regression discovers the URL from disk, loads the authenticated review, checks the attached bridge, verifies lock permissions and shutdown removal, and crashes/resumes a session to verify stale-lock replacement. It runs in CI's local browser group. No additional URL logging or session-list exposure is introduced.

@rcosteira79
rcosteira79 marked this pull request as ready for review November 2, 2026 20:27
@rcosteira79
rcosteira79 merged commit 4f14d57 into main Nov 2, 2026
14 checks passed
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.

1 participant