Skip to content

feat(service,features): the task list is a live read - #3269

Merged
luke-agent[bot] merged 1 commit into
mainfrom
luke/neon-realtime-plan-list-service
Oct 21, 2026
Merged

luke-agent[bot] merged 1 commit into
mainfrom
luke/neon-realtime-plan-list-service

Conversation

@charleslpan

@charleslpan charleslpan commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Stack 2 · Task list and automations, piece 2. Stacked on #3265 (luke/neon-realtime-agent-status) → #4228 (luke/live-same-user).

What: the task list becomes a live read, live.tasks (GET /api/live/tasks), on the central live layer.

  • With LUKE_REALTIME off, as in production, it answers each statement's rows inline at the poll address, held until they move past the reader's after.
  • With Realtime on, it answers sealed statements.
  • It names the account it's read for, and sameUser refuses anyone else's session.

The two statements:

  • The tasks the account reaches, with the reader's pin and the owner's and assignee's names.
  • Every agent on those tasks and every agent with no task. Each row carries its newest turn, when its newest awaiting line was written, what it last published, and the members it names.

Shared builder: @luke/features/task-list-live (taskListOfLiveRows) builds exactly the held /api/plans?archived=include answer at an instant, using the shared status rule from #3265.

Tests:

  • A PGlite parity test runs both statements as raw SQL and checks the built list equals the held read for the owner, a teammate and an outsider. It covers every agent status, pins, archives, a PR and an assignee.
  • Both statements pass mutableFunctionsOf.
  • live-procedures.test.ts covers the procedure.

@vercel

vercel Bot commented Oct 17, 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 21, 2026 5:34am UTC

Request Review

@luke-agent
luke-agent Bot changed the base branch from main to luke/neon-realtime-agent-status October 17, 2026 01:11
@luke-agent luke-agent Bot closed this Oct 17, 2026
@luke-agent luke-agent Bot reopened this Oct 17, 2026
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-agent-status branch from b04b331 to 347414f Compare October 18, 2026 20:05
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from d753abf to 56e5b85 Compare October 18, 2026 20:12
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-agent-status branch from 347414f to d7f0b2f Compare October 18, 2026 21:24
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 56e5b85 to 53bc954 Compare October 18, 2026 21:24
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-agent-status branch from d7f0b2f to 47f6861 Compare October 19, 2026 18:52
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 53bc954 to 32caaed Compare October 19, 2026 18:52
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-agent-status branch from 47f6861 to 0fc86f5 Compare October 20, 2026 02:53
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 32caaed to 9d00d7a Compare October 20, 2026 02:53
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-agent-status branch from 0fc86f5 to b9b1845 Compare October 20, 2026 22:15
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 769d3f1 to cd74a39 Compare October 20, 2026 22:15
@luke-agent luke-agent Bot closed this Oct 20, 2026
@luke-agent luke-agent Bot reopened this Oct 20, 2026
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from cd74a39 to edc9dbb Compare October 20, 2026 22:25
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-agent-status branch from 0c13241 to 7e5d73f Compare October 21, 2026 00:25
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 1f696a9 to 6993fde Compare October 21, 2026 00:25
@luke-agent luke-agent Bot closed this Oct 21, 2026
@luke-agent luke-agent Bot reopened this Oct 21, 2026
Base automatically changed from luke/neon-realtime-agent-status to main October 21, 2026 00:45
@luke-agent
luke-agent Bot marked this pull request as ready for review October 21, 2026 01:05
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 6993fde to 688cffd Compare October 21, 2026 01:05
@luke-agent
luke-agent Bot enabled auto-merge October 21, 2026 01:05
devin-ai-integration[bot]

This comment was marked as resolved.

@luke-agent
luke-agent Bot disabled auto-merge October 21, 2026 01:17
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 688cffd to fbdea70 Compare October 21, 2026 01:20
@luke-agent
luke-agent Bot enabled auto-merge October 21, 2026 01:23
@luke-agent
luke-agent Bot disabled auto-merge October 21, 2026 01:23
@luke-agent
luke-agent Bot enabled auto-merge October 21, 2026 05:20
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from fbdea70 to 572ec39 Compare October 21, 2026 05:20
devin-ai-integration[bot]

This comment was marked as resolved.

GET /api/live/tasks (live.tasks) answers the task list for the account the
read names, as the other live reads do: with Realtime off, each statement's
rows inline at the poll address, held until they move past where the reader
last saw them, and sealed for Neon Realtime where it is on. The two
statements are the tasks the account reaches, with the reader's pin, the
owner's and the assignee's names, and every agent of them and with no task,
with its newest turn, when its newest awaiting line was written, what it last
published, and the members it names. The desktop builds the list from those
rows with taskListOfLiveRows at the instant it reads, by the shared status
rule. A PGlite test runs both statements as raw SQL and holds the built list
equal to the held read's for every member and none else, and both pass the
immutability helper.

Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
@luke-agent
luke-agent Bot force-pushed the luke/neon-realtime-plan-list-service branch from 572ec39 to 86fddc3 Compare October 21, 2026 05:30
@luke-agent
luke-agent Bot added this pull request to the merge queue Oct 21, 2026
Merged via the queue into main with commit da6e297 Oct 21, 2026
13 checks passed
@luke-agent
luke-agent Bot deleted the luke/neon-realtime-plan-list-service branch October 21, 2026 05:37

This branch was successfully deployed

1 active deployment
Preview — 86fddc39 Deployed Oct 21, 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