Skip to content

feat(service,host): a live read names its account; another's session is signed out - #4228

Merged
luke-agent[bot] merged 1 commit into
mainfrom
luke/live-same-user
Oct 20, 2026
Merged

luke-agent[bot] merged 1 commit into
mainfrom
luke/live-same-user

Conversation

@luke-agent

@luke-agent luke-agent Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Each live read now names the account it was started for, and a session of any other account is treated as signed out. This follows Neon's guide ("When the session changes"), rebased onto main without the Realtime-only shared socket.

  • Contract and service: every live procedure on main takes ?userId= (LIVE_USER_QUERY) and checks it first (sameUser): inbox, task board and agent transcript, and through them feat(service,host): hold a live read's poll until its rows move #4272's held polls. A session of any other account, or a read that names none, gets the same 401 as no session.
  • Clients: boardLive and agentTranscriptLive send the account and read that 401 as signed-out (LIVE_SIGNED_OUT).
  • Host: the board and transcript follows capture the account when they start and name it on every seal and poll. On signed out, liveRows ends the read instead of sealing or polling it again. The board's retry stops, and so does the transcript's reseal.

Tests:

  • Service: a mismatched or missing account gets 401, on a seal and on a poll.
  • Client: the board's live read sends the account and reads 401 as signed out.
  • Host: liveRows ends on signed out.

@vercel

vercel Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
luke-web Ready Ready Preview Oct 20, 2026 11:31pm UTC

Request Review

@luke-agent
luke-agent Bot added this pull request to stack #4231 October 20, 2026 21:35
@luke-agent
luke-agent Bot removed this pull request from stack #4231 October 20, 2026 21:46
@luke-agent luke-agent Bot changed the title feat(service,features,host): each live read names the account it was started for; another's session is signed out, and renews no more feat(service,host): a live read names its account; another's session is signed out (P2) Oct 20, 2026
@luke-agent
luke-agent Bot force-pushed the luke/live-same-user branch from ea8941d to e14cef4 Compare October 20, 2026 22:20
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-shared-socket branch from e95f277 to 9589265 Compare October 20, 2026 22:20
…started for; another's session is signed out, and renews no more

As Neon's guide says ("When the session changes"): the host sends the
account a follow started for (?userId=) with every seal, renewal and held
poll of the board's and the transcript's live reads; every live procedure
answers a session of any other account, or a read naming none, with the
same 401 as no session, which the clients read as signed out; and a read
signed out ends rather than being sealed or polled again.

Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
@luke-agent
luke-agent Bot changed the base branch from luke/neon-realtime-shared-socket to main October 20, 2026 23:27
@luke-agent
luke-agent Bot force-pushed the luke/live-same-user branch from e14cef4 to 56c8d05 Compare October 20, 2026 23:27
@luke-agent luke-agent Bot changed the title feat(service,host): a live read names its account; another's session is signed out (P2) feat(service,host): a live read names its account; another's session is signed out Oct 20, 2026
@luke-agent
luke-agent Bot marked this pull request as ready for review October 20, 2026 23:27

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 potential issue.

Devin Review

Comment thread packages/host/src/compose-tasks.ts Resolved
@luke-agent
luke-agent Bot enabled auto-merge October 20, 2026 23:35
@luke-agent
luke-agent Bot added this pull request to the merge queue Oct 20, 2026
Merged via the queue into main with commit f325960 Oct 20, 2026
13 of 20 checks passed
@luke-agent
luke-agent Bot deleted the luke/live-same-user branch October 20, 2026 23:55
luke-agent Bot added a commit that referenced this pull request Oct 21, 2026
taskWorkerTranscript names the account it is read for and refuses another
than the bearer's as signed out, as every other live read does since #4228;
the host's follow names the account it started for.

Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
luke-agent Bot added a commit that referenced this pull request Oct 21, 2026
taskWorkerTranscript names the account it is read for and refuses another
than the bearer's as signed out, as every other live read does since #4228;
the host's follow names the account it started for.

Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>

This branch was successfully deployed

1 active deployment
Preview — 56c8d05d Deployed Oct 20, 2026 by vercel[bot]
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