Skip to content

Fix trailing slash redirects on internal links#17

Merged
khaliqgant merged 2 commits into
mainfrom
fix/trailing-slash-internal-links
May 18, 2026
Merged

Fix trailing slash redirects on internal links#17
khaliqgant merged 2 commits into
mainfrom
fix/trailing-slash-internal-links

Conversation

@khaliqgant
Copy link
Copy Markdown
Member

Summary

  • Google Search Console flagged every-tool-ships-an-agent and notion-ships-the-primitives as "Page with redirect" — internal links pointed to /posts/slug without a trailing slash, causing 301 redirects under our trailingSlash: true Next.js config.
  • Added trailing slashes to all internal /posts/ and /market/ links across 19 MDX content files, 1 draft, 1 market landscape page, and 1 TSX component (app/market/page.tsx).
  • Regenerated public/llms-full.txt and public/posts/*.md to reflect the fixes.

Test plan

  • Verify build passes (npm run build)
  • Spot-check internal links on deployed preview — clicking should navigate directly without a visible redirect
  • After deploy, use "Request Indexing" in Google Search Console for the two flagged URLs

🤖 Generated with Claude Code

Google Search Console flagged two posts as "Page with redirect" because
internal links pointed to /posts/slug instead of /posts/slug/, causing
301 redirects under our trailingSlash: true config. Fixed all internal
/posts/ and /market/ links across 21 MDX files and 1 TSX component.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 18, 2026

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 2cce54be-141e-41f7-8c26-2dbc371a41fd

📥 Commits

Reviewing files that changed from the base of the PR and between 0689efc and f17f8f3.

📒 Files selected for processing (2)
  • content/posts/notion-ships-the-primitives.mdx
  • public/llms-full.txt

📝 Walkthrough

Walkthrough

This PR standardizes internal link URLs by adding trailing slashes across 20+ MDX post files and a Next.js page, and substantially enriches the public/llms-full.txt editorial document with clarifying paragraphs that map tools (PostHog Code, Notion, CodeRabbit, Slack, ChatGPT) and their implementations to the three-primitives architectural framework (inbox, clock, listener).

Changes

URL Normalization and Editorial Enrichment

Layer / File(s) Summary
App page and market landing link updates
app/market/page.tsx, content/drafts/four-repos-one-filesystem.mdx, content/market/proactive-agent-landscape.mdx
Next.js Market page and draft/market content files update internal links to include trailing slashes, with minor whitespace formatting adjustments in the market landscape page.
Post content link and text normalization
content/posts/agent-moves-first.mdx, content/posts/building-weekly-digest.mdx, content/posts/chatgpt-pulse.mdx, content/posts/every-tool-ships-an-agent.mdx, content/posts/forty-two-percent.mdx, content/posts/magical-agents.mdx, content/posts/notion-ships-the-primitives.mdx, content/posts/posthog-code.mdx, content/posts/push-breaks-too.mdx, content/posts/reactive-vs-proactive.mdx, content/posts/review-agent-three-acts.mdx, content/posts/the-genesis.mdx, content/posts/the-prompt-cant-save-you.mdx, content/posts/the-webhook-tax.mdx, content/posts/the-wish-list.mdx, content/posts/three-primitives.mdx, content/posts/what-proactive-agents-cost.mdx, content/posts/why-proactive-is-hard.mdx
MDX post files across the essay collection update internal post references to include trailing slashes, with minor punctuation and layout adjustments in selected posts.
Editorial expansion in llms-full.txt with three-primitives framework mapping
public/llms-full.txt
Substantive new paragraphs map PostHog Code, Notion, CodeRabbit, and other tools to the three-primitives framework (inbox, clock, listener), add explicit infrastructure and cost analysis, and update cross-links and timestamps.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

🐰 A trail of slashes marks the path so clear,
Each link now leads with trailing cheer—
The three primitives bloom throughout the text,
As inbox, clock, and listener connect!
Infrastructure and prose now intertwine.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ 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%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: adding trailing slashes to internal links to fix redirects caused by Next.js configuration.
Description check ✅ Passed The description provides relevant context about why the change was made (Google Search Console flagging redirect issues), which files were changed, and includes a test plan.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/trailing-slash-internal-links

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

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
app/market/page.tsx (1)

112-117: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Incomplete trailing-slash normalization in this page

Good fix here, but this file still links internally without trailing slashes at Line 132 and Line 231, which can reintroduce redirect hops under trailingSlash: true.

Suggested follow-up diff
-                  href={`/market/${p.slug}`}
+                  href={`/market/${p.slug}/`}
...
-                  href={`/market/startups/${s.slug}`}
+                  href={`/market/startups/${s.slug}/`}
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@app/market/page.tsx` around lines 112 - 117, This page still contains
internal <Link> hrefs that lack the required trailing slash (causing redirects
with trailingSlash: true); update the internal Link components in
app/market/page.tsx so all internal route href strings include a trailing slash
(e.g. change "/posts/three-primitives" to "/posts/three-primitives/" and any
other internal hrefs referenced in the file) ensuring every <Link> used in this
module points to the trailing-slash form.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@content/posts/notion-ships-the-primitives.mdx`:
- Line 60: Replace the plain-text external references with proper Markdown
links: change the occurrences of "Orbit", "Remy", and "the Gemini app" in the
paragraph (the same sentence mentioning Pulse) to linked forms pointing to their
canonical external URLs, matching how "Pulse" is already linked; ensure link
text and punctuation are preserved and that links follow the project's
external-link style (e.g., [Orbit](https://...), [Remy](https://...), [Gemini
app](https://...)).

---

Outside diff comments:
In `@app/market/page.tsx`:
- Around line 112-117: This page still contains internal <Link> hrefs that lack
the required trailing slash (causing redirects with trailingSlash: true); update
the internal Link components in app/market/page.tsx so all internal route href
strings include a trailing slash (e.g. change "/posts/three-primitives" to
"/posts/three-primitives/" and any other internal hrefs referenced in the file)
ensuring every <Link> used in this module points to the trailing-slash form.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 4e6db6d0-5c97-4788-accd-2bec9284d654

📥 Commits

Reviewing files that changed from the base of the PR and between 1643cb2 and 0689efc.

📒 Files selected for processing (22)
  • app/market/page.tsx
  • content/drafts/four-repos-one-filesystem.mdx
  • content/market/proactive-agent-landscape.mdx
  • content/posts/agent-moves-first.mdx
  • content/posts/building-weekly-digest.mdx
  • content/posts/chatgpt-pulse.mdx
  • content/posts/every-tool-ships-an-agent.mdx
  • content/posts/forty-two-percent.mdx
  • content/posts/magical-agents.mdx
  • content/posts/notion-ships-the-primitives.mdx
  • content/posts/posthog-code.mdx
  • content/posts/push-breaks-too.mdx
  • content/posts/reactive-vs-proactive.mdx
  • content/posts/review-agent-three-acts.mdx
  • content/posts/the-genesis.mdx
  • content/posts/the-prompt-cant-save-you.mdx
  • content/posts/the-webhook-tax.mdx
  • content/posts/the-wish-list.mdx
  • content/posts/three-primitives.mdx
  • content/posts/what-proactive-agents-cost.mdx
  • content/posts/why-proactive-is-hard.mdx
  • public/llms-full.txt

Comment thread content/posts/notion-ships-the-primitives.mdx Outdated
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

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

No issues found across 22 files

Re-trigger cubic

…mitives

Addresses CodeRabbit review comment: Orbit, Remy, and Pulse were plain
text in two paragraphs where the editorial guidelines require linked
external references.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 2 additional findings.

Open in Devin Review

@khaliqgant khaliqgant merged commit ba5432c into main May 18, 2026
1 of 2 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.

1 participant