GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||
GeezerVison is showing github.com — feat(coderd): key chat diff statuses by ref by DanielleMaywood · Pull Request #29001 · coder/coder Conversation
Contributor
SummaryA chat can now track more than one pull request. Each git ref that the agent reports gets its own row. The git panel shows one view per ref. ProblemThe Fix
Notes for review
Design decisions (from the investigation plan)
These were verified by a high-effort review pass, which also found and led to fixes for: the chat-wide acquisition bug, the pq infinity limitation, and the mixed-version rollout constraint. Generated by Coder Agents.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionschat_diff_statuses held one row per chat, so a chat could only track
one pull request at a time and a branch switch carried the previous
PR's URL onto the new branch's data.
Re-key the table to (chat_id, git_remote_origin, git_branch) so every
ref the agent reports keeps its own row. The worker polls only the
ref a chat most recently reported; older refs of the same origin are
frozen with a far-future stale_at and resume when reported again. The
worker also re-resolves a branch when its stored PR was merged or
closed, so a replacement PR is picked up.
The API keeps the existing diff_status field as the primary pick (the
most recently refreshed open PR) and adds diff_statuses with the full
list, plus changed_diff_status on diff_status_change events to name
the ref that changed. GET /chats/{chat}/diff accepts optional origin
and branch query parameters and no longer writes to the database on
read.
The git panel lists one view per tracked ref and fetches each ref's
diff with its selector.
Wire the per-ref view selection in GitPanel to the selected ref id instead of always showing the first ref. Show the server-picked primary PR in the chat top bar instead of a client-side pick that could disagree with the server rule. Move the per-ref event graft into mergeWatchedChatSummary so ref keying lives in one place. Drop unreachable fallback logic in PrimaryChatDiffStatus, the unused ChatDiffStatusRef helper, duplicated pubsub publish code, and a test recorder that was never asserted. Order the plural diff status query the same as the single-chat query. Tighten or delete comments that restated the code.
DanielleMaywood
force-pushed
the
feat/chat-multi-pr-tracking
branch
from
d9f6cc5 to
bdbdf0a
Compare
Contributor
All reactions
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page.
Contributor
Author
All reactions
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
ReviewersNo reviewsUh oh!
There was an error while loading. Please reload this page. AssigneesLabels
experimental
ProjectsMilestoneNo milestoneDevelopmentSuccessfully merging this pull request may close these issues. Uh oh!
There was an error while loading. Please reload this page. Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later. | ||
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |