Repository navigation
fix(canvas): correct comment Build links and metadata - #28
Open
lukasoppermann wants to merge 7 commits into
Open
lukasoppermann wants to merge 7 commits into
lukasoppermann wants to merge 7 commits into
Conversation
Open earlier comment Builds on the selected Hub, place the muted Build link next to the author, and align replies with the comment text. Remove the confusing pending target badge while preserving confirmed statuses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
There was a problem hiding this comment.
🟡 Changes recommended
The row restructuring loses unread announcements on button focus and blocks timestamp hover details.
2 open issues
What changed in this PR
Corrects canvas comment Build navigation and updates the shared Hub comment-row layout.
Changes:
- Open canvas Build links on the selected Hub in a separate tab.
- Move Build metadata beside authors, align reply counts, and remove the pending “Checking” badge.
- Update documentation, stories, types, and regression tests.
| File | Description |
|---|---|
| hub/docs/prototype-canvas.md | Documents links, layout, and status behavior. |
| hub/app/javascript/utils/review-comment/types.ts | Removes pending-status copy field. |
| hub/app/javascript/utils/review-comment/en.ts | Removes “Checking” copy. |
| hub/app/javascript/pages/prototypes-show-page/index.test.tsx | Updates copy fixture. |
| hub/app/javascript/features/review-thread-conversation/index.test.tsx | Updates copy fixture. |
| hub/app/javascript/features/review-comments-sidebar/types.ts | Adds optional Hub origin. |
| hub/app/javascript/features/review-comments-sidebar/index.tsx | Resolves absolute Build links. |
| hub/app/javascript/features/review-comment-row/types.ts | Updates row copy contract. |
| hub/app/javascript/features/review-comment-row/styles.css | Adjusts layout and row click target. |
| hub/app/javascript/features/review-comment-row/stories.tsx | Adds metadata layout examples. |
| hub/app/javascript/features/review-comment-row/index.tsx | Restructures metadata and selection control. |
| hub/app/javascript/features/review-comment-row/index.test.tsx | Covers status and Build-link behavior. |
| hub/app/javascript/features/review-comment-composer/index.test.tsx | Updates copy fixture. |
| hub/app/javascript/features/prototype-canvas-hub-panel/index.tsx | Supplies the selected Hub origin. |
| hub/app/javascript/features/prototype-canvas-hub-panel/comment-visibility.test.tsx | Covers canvas Build-link destinations. |
Review effort: Max
Add a full canvas sidebar preview with earlier Build links and varied reply counts. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
Place compact avatars beside author names, center unread dots against the comment body, and reduce emphasis on read authors. Restore unread button announcements and tooltip pointer targets with guarded row selection. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
Keep avatars above body-centered unread dots in a fixed gutter, align author and body text, and mute read comments without shifting their layout. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 616a126c-672b-420e-a62f-e54cdce52001
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.

Why
Comment Build links used a relative Hub path inside the separately hosted canvas. Clicking one reached the canvas server's JSON 404 instead of the Build page. This affects canvases connected to local or deployed Hubs.
What changes
Canvas comment links now open the original Build on the selected Hub in a separate tab. Earlier Build links appear in parentheses immediately after the author's name, with muted text and an underline only on hover. The shared Hub comment row uses the same layout and keeps its existing relative navigation.
Compact avatars and unread dots share a fixed left gutter. Each dot sits below its avatar, vertically centered against the comment text. Author names, comment bodies, and reply counts align beside the gutter, giving the body more room while retaining its three-line limit. Read comments keep the same positions, with muted author and body text and regular-weight names. The wider hover background includes the gutter.
Remove the confusing “Checking” badge as requested. It described a pending attempt to locate the comment's target in the preview, not whether the comment was saved. Confirmed target statuses and resolved-conversation badges remain unchanged. Row selection retains its disabled-state guard, unread focus announcements, and timestamp and unread-indicator tooltips.
Conversation menus now start with Mark as unread, using a solid dot icon, with a divider before Delete. Any repository reader can mark a conversation unread for themselves in Hub or the canvas, without changing other reviewers' state or inbox notifications. The conversation and drafts stay open; reopening marks the displayed activity read again. Replying, editing, reacting, and changing resolution retain their existing mark-as-read behavior. Failed unread changes show an error and can be retried from the menu.
A full-canvas Storybook preview shows earlier and current Build comments with zero, one, and two replies, using only in-memory fixtures. Its read and unread actions also stay in memory. The bundled plugin assets are updated with the source.
The screenshot uses synthetic Storybook data. The original reference URL redirected to another canvas, so the reported authenticated Build click could not be replayed. Authenticated destination loading and pointer-hover interaction remain unverified; the browser canvas has no hover action and the configured isolated Playwright MCP is unavailable in this runtime.