Skip to content

[Fix] Chat replies list every linked pull request - #3363

Draft
roomote-roomote[bot] wants to merge 1 commit into
developfrom
fix/bound-slack-pr-footer-3fmk8hpjcu2mo
Draft

roomote-roomote[bot] wants to merge 1 commit into
developfrom
fix/bound-slack-pr-footer-3fmk8hpjcu2mo

Conversation

@roomote-roomote

Copy link
Copy Markdown
Contributor

​Opened on behalf of @mrubens. View the task or mention @roomote-roomote for follow-up asks.

What changed

  • Limit chat reply footers to three inline pull request links.
  • Show the number of additional linked pull requests without expanding the footer indefinitely.
  • Keep Slack's sticky-footer detection compatible with the compact form so footer refresh and relocation continue to work.

Why this change was made

A Session can collect active pull requests from many attached tasks, causing every reply footer to repeat a long list of links. The footer should stay useful without turning ordinary replies into an unbounded status index.

Impact

Users still get direct access to the first three linked pull requests and can open the full Session in Roomote, while conversations with many linked pull requests remain compact. Sessions with three or fewer linked pull requests are unchanged.

@roomote-community

roomote-community Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

1 issue outstanding. See task

  • packages/communication/src/chat-messages.ts:325 truncates PR references that footer refreshes need to preserve unlinked PRs.

Reviewed e2ffa00

if (prLinks.length > 0) items.push(prLinks.join(', '));
const prs = linkedPrs ?? [];
const prLinks = prs
.slice(0, MAX_INLINE_THREAD_REPLY_PRS)

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.

The footer refresh path preserves PRs that have not yet been linked in the database by parsing every visible PR URL from the previous footer (mergeCarriedPullRequests). After this slice, a refresh can recover only the first three URLs; any fourth-or-later out-of-band PR is no longer in context.linkedPrs or the carried set, so the next refresh drops it and its N more PRs count. Preserve the omitted PR references somewhere refresh can rehydrate them, or avoid truncating the state-bearing footer representation.

This branch has not been deployed

No deployments
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