Skip to content

fix: end the related commits' chain on a dot - #1257

Merged
mnapoli merged 1 commit into
dev-null-sh:productionfrom
jubianchi:fix/related-commits-end-dot
Oct 28, 2026
Merged

mnapoli merged 1 commit into
dev-null-sh:productionfrom
jubianchi:fix/related-commits-end-dot

Conversation

@jubianchi

@jubianchi jubianchi commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Summary

The last related commit under a thread trails its line down to the card's edge with no dot to end it. The list was rendered outside any graph canvas, so each card drew its own rail.

Changes

  • Related commits chain one after the other in a graph canvas of their own and end on a dot below the last one, as search results and a feed do.

Validation

  • New unit test: one canvas, no rail piece left showing, a single end dot in the last card.
  • tsc, lint, format, node tests (206) and Vitest (723) pass locally. No PHP change.
  • My Playwright suite for the graph, on the scenarios that open commit pages (static, thread-open, chain): 78/78 in Chrome.
  • Related commits come from the vector index, which is empty locally without an OpenAI key: for the screenshots, the related endpoint was stubbed with three real commits.

Visual evidence

Chrome, desktop, same data. Before: production. After: this branch.

Before After
Light before-related-light after-related-light
Dark before-related-dark after-related-dark

Device verification

macOS, Chrome through Playwright. No mobile interaction changes.

Independent review

Separate Claude agent, base fa8d5407, head 5b5ed3a7 (since then only a comment added to the test and the commit footer removed, now 0e84bcb4): CODE: PASS, VISUAL: PASS.

Limitations

None.

Summary by CodeRabbit

  • New Features
    • Related commits are now displayed in a graph view, with links showing how commits connect and a dot marking the end of the sequence. This makes the relationship between commits easier to follow than the previous plain list.

Related commits were listed below the thread's canvas, outside any, so
each card drew its own rail, and the last one trailed a line to its
card's edge with no dot to end it. They now chain one after the other in
a canvas of their own and end on a dot below the last one, as search
results and a feed do.
@coderabbitai

coderabbitai Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 08529169-8287-4de8-a43d-161f9afb17f4
Commits

Reviewing files that changed from the base of the PR and between fa8d540 and 0e84bcb.

Files selected for processing: 2
  • resources/js/components/related-commits.tsx
  • tests/Unit/StandaloneCommitGraphs.test.tsx

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.

Walkthrough

Related commits now render through a graph canvas. Each commit card receives its preceding lane and commit ID, and the final commit is marked with an end dot. A server-rendered test checks the graph output.

Changes: Related Commit Graph

Layer / File(s) Summary
Graph rendering and validation
resources/js/components/related-commits.tsx, tests/Unit/StandaloneCommitGraphs.test.tsx
RelatedCommits delegates rendering to RelatedCommitList, which wraps commits in GraphCanvas and marks the last commit with an end dot. The server-rendered test checks the canvas and rail output.

Priority: Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix

Possibly related PRs

Suggested reviewers: younes-io

Merge Risk: Minimal · up to 0e84b

The related-commit chain and endpoint have no identified merge-blocking issues.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat… Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely describes the main change: ending the related commits chain with a dot.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 1 functions across 2 files.

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@jubianchi
jubianchi marked this pull request as ready for review October 28, 2026 08:55

@mnapoli mnapoli left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

waiting on CI, beautiful

@mnapoli
mnapoli merged commit 9184f62 into dev-null-sh:production Oct 28, 2026
5 of 8 checks passed
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.

3 participants