Skip to content

Site changelog#7735

Merged
mhartington merged 3 commits intomainfrom
site-changelog
Mar 31, 2026
Merged

Site changelog#7735
mhartington merged 3 commits intomainfrom
site-changelog

Conversation

@mhartington
Copy link
Copy Markdown
Member

@mhartington mhartington commented Mar 31, 2026

Summary by CodeRabbit

  • New Features

    • Site MDX support and enhanced changelog experience: dynamic release pages, previews/summaries, TOC, badges, improved MDX rendering (images, code blocks, links), and sitemap inclusion.
  • Documentation

    • Published 38+ detailed release notes covering Prisma ORM, Prisma Postgres, Pulse, Accelerate, Studio, Optimize, CLI/config changes, preview→GA promotions, examples, and ecosystem resources.

@vercel
Copy link
Copy Markdown

vercel bot commented Mar 31, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
blog Ready Ready Preview, Comment Mar 31, 2026 6:56pm
docs Ready Ready Preview, Comment Mar 31, 2026 6:56pm
eclipse Ready Ready Preview, Comment Mar 31, 2026 6:56pm
site Ready Ready Preview, Comment Mar 31, 2026 6:56pm

Request Review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 31, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ca43f5a4-123f-4e7f-bcaf-f37be3d4ebbc

📥 Commits

Reviewing files that changed from the base of the PR and between fbfd2f1 and 945c5d5.

⛔ Files ignored due to path filters (48)
  • apps/site/public/changelog/image-000a48b9be0569e18d23dd3c38c25fb2af113b9e-3840x1632-png-Screenshot-2025-10-31-at-3.56.59-PM.png is excluded by !**/*.png
  • apps/site/public/changelog/image-02452d28050185410c782423320d0f1319ab49e1-2804x952-png-Code-export-6-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-099c6f875c0d426fbbf032b406a94eb0fa1d8288-844x474-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-0e65ac228e56ab655cadd7cefc48e651489de118-2876x1672-png-Code-export-4-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-1b4d23d5d2d93055fe604b9767ae70064dd6b041-2470x1030-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-1c0bd6e424915af7872c687c800eeebaacf23e5c-1266x711-png-blog-pulse-GA-11.png is excluded by !**/*.png
  • apps/site/public/changelog/image-1c1347e1e24b43ebe2bc1134b8a6fe4ce1bc20b6-3304x1216-png-image-16-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-1ca84fbcd21cf4ba2965d4581c6b2e4ccbeba496-1688x948-png-slolin.png is excluded by !**/*.png
  • apps/site/public/changelog/image-310a6222b5ee7ac29147f87e2859629acfaee43e-2270x1208-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-371165fb1d2fee0df920c530104ed0fc34030dbf-3680x2382-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-4447786d03b362ef21329948b4c9d48d90ddbe9f-1200x630-png-blogpost-splitschema-4.png is excluded by !**/*.png
  • apps/site/public/changelog/image-4844dfbf758490d60359d55f99e0df65cdbd1dfa-2482x470-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-5bc2e336f20f34d93aa36c8afddda5c82f40343d-2976x1592-png-Code-export-3-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-5fc540292aa61c9d17742aa50eee4a6bf9aef81d-1040x522-png-Code-export-1-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-6643cd3fa55e6b2554f2256149a7ea9e62df3258-844x474-svg-blogpost-accelerate_autoscale-7.svg is excluded by !**/*.svg
  • apps/site/public/changelog/image-66fc05379af15d65fd3dd6d792c9a575db648895-844x474-png-blog-d1Launch-1.png is excluded by !**/*.png
  • apps/site/public/changelog/image-6796d74a842eae9429254e7ed11b483985ba4e50-1266x711-png-blog-prismapostgres-3.png is excluded by !**/*.png
  • apps/site/public/changelog/image-6cffc085cf7d479b2f7e0b5b2655f9d3cf433d5b-3248x2050-png-local-ppg-annotated.png is excluded by !**/*.png
  • apps/site/public/changelog/image-6d76b801c5663654db08e0045d8a034526434668-1800x948-png-meta-delivery-guarantees.png is excluded by !**/*.png
  • apps/site/public/changelog/image-6e96adf6edf9a2019424eba3ab11054927abc353-1668x1080-gif-reset-db.gif is excluded by !**/*.gif
  • apps/site/public/changelog/image-6f5fffc8528e9d079196ecbeca717908e0faba73-1212x720-gif-Warp.gif is excluded by !**/*.gif
  • apps/site/public/changelog/image-87ec0230728297f7b8e5535831beaa66f17b734a-2200x1236-jpg-GQv4JpCX0AEymn-.jpg is excluded by !**/*.jpg
  • apps/site/public/changelog/image-9a5f27696242c051a689abed3d4b7099a8145301-1200x674-png-hero-firewall-teal-1.5x.png is excluded by !**/*.png
  • apps/site/public/changelog/image-9a99ba8aa9c6b70479608f1693544eb1159acf22-1404x1080-gif-create-db.gif is excluded by !**/*.gif
  • apps/site/public/changelog/image-a1d1eef46c8bd17faf4c3174f087c2a479f98649-1328x570-png-nested-create.png is excluded by !**/*.png
  • apps/site/public/changelog/image-a2d1af619fb547bcc995ef12e208107bffafc97f-844x474-svg-blogpost-optimize-8.svg is excluded by !**/*.svg
  • apps/site/public/changelog/image-a3438ae7d08cb86d8ac9db19dc2ad2ac4edf2c4c-3070x1866-png-new_ui.png is excluded by !**/*.png
  • apps/site/public/changelog/image-a6312279b8aab81d7fcf21ad3308dd3a18710c7f-2724x1566-png-perf-graphs.png is excluded by !**/*.png
  • apps/site/public/changelog/image-a6a82eb9c6a5a6ab82a0d8073bf07032aa5d2fc9-2028x2082-png-pricing-calculator.png is excluded by !**/*.png
  • apps/site/public/changelog/image-aa243ddc8303046f9a564cf2dd74d7dacb76f007-2048x977-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-ac099c83eef7bbbc99e6c61cafcac07bb7bfab64-2470x1030-png-direct-tcp.png is excluded by !**/*.png
  • apps/site/public/changelog/image-ac94c9e2d1e3410fcbc4416fdea233ab8b817734-3248x2050-png-push-to-cloud-annotated.png is excluded by !**/*.png
  • apps/site/public/changelog/image-b1b89114767325fb79cf520f24b52a12ddc75422-3680x2382-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-b70ab6e5ad8096fba76c389f13b991a606de7f31-1200x630-png-og-changelog.png is excluded by !**/*.png
  • apps/site/public/changelog/image-bbb1e7f6b0f7bef3d318fac96652548cad0ef0b5-844x474-svg-blog-prisma-react-native.svg is excluded by !**/*.svg
  • apps/site/public/changelog/image-bd1a52263c6e36773fe0c4b003a81298d7f175f4-800x450-gif-create-db.gif is excluded by !**/*.gif
  • apps/site/public/changelog/image-cc9a77a2a38930dd4e9697a2a6342746d8d2932f-600x338-gif-Tweet-video.gif is excluded by !**/*.gif
  • apps/site/public/changelog/image-d08557fd614a1bcf64b7c3f55bd81d799443f426-2040x1618-png-image-2-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-d2c35b8243dd6f86ff9a353d5bb64ad79510920f-2836x981-png-Studio-component-LIGHT-4x.png is excluded by !**/*.png
  • apps/site/public/changelog/image-d524983761b9b4504198b546eaea9162ea0b4b97-1040x540-png-omit-code-example.png is excluded by !**/*.png
  • apps/site/public/changelog/image-d5c2d5f06095314aeceda56c7bd867e5859e468f-844x474-svg-blog-orm-edge-preview.svg is excluded by !**/*.svg
  • apps/site/public/changelog/image-d662ff0fc23bcf0134f8ffea26db749bd670c6d1-844x474-png-changelog-optimize.png is excluded by !**/*.png
  • apps/site/public/changelog/image-dbf4a5b41bff50451203b70220e81e27e1c722c1-1672x1872-png-Screenshot-2025-11-19-at-6.53.34-AM.png is excluded by !**/*.png
  • apps/site/public/changelog/image-f7a4f862f7f12d96c98eafef1b6bf0f2d0cac943-3740x1964-png-updated-1-.png is excluded by !**/*.png
  • apps/site/public/changelog/image-f94c7ac0283481bbc8177d30bb3bc92464f1ca33-844x474-png-image.png is excluded by !**/*.png
  • apps/site/public/changelog/image-fbd0fac24c691f6ebca2c4a85e19fc95196ae070-2080x848-png-image.png is excluded by !**/*.png
  • apps/site/public/og/og-changelog.png is excluded by !**/*.png
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (48)
  • apps/site/content/changelog/2024-03-13.mdx
  • apps/site/content/changelog/2024-04-03.mdx
  • apps/site/content/changelog/2024-04-25.mdx
  • apps/site/content/changelog/2024-05-15.mdx
  • apps/site/content/changelog/2024-06-06.mdx
  • apps/site/content/changelog/2024-06-27.mdx
  • apps/site/content/changelog/2024-07-18.mdx
  • apps/site/content/changelog/2024-08-08.mdx
  • apps/site/content/changelog/2024-08-29.mdx
  • apps/site/content/changelog/2024-09-26.mdx
  • apps/site/content/changelog/2024-10-17.mdx
  • apps/site/content/changelog/2024-11-07.mdx
  • apps/site/content/changelog/2024-11-28.mdx
  • apps/site/content/changelog/2024-12-19.mdx
  • apps/site/content/changelog/2025-01-09.mdx
  • apps/site/content/changelog/2025-01-30.mdx
  • apps/site/content/changelog/2025-02-20.mdx
  • apps/site/content/changelog/2025-03-13.mdx
  • apps/site/content/changelog/2025-04-10.mdx
  • apps/site/content/changelog/2025-05-01.mdx
  • apps/site/content/changelog/2025-05-19.mdx
  • apps/site/content/changelog/2025-06-05.mdx
  • apps/site/content/changelog/2025-06-17.mdx
  • apps/site/content/changelog/2025-07-02.mdx
  • apps/site/content/changelog/2025-07-17.mdx
  • apps/site/content/changelog/2025-07-30.mdx
  • apps/site/content/changelog/2025-08-13.mdx
  • apps/site/content/changelog/2025-08-27.mdx
  • apps/site/content/changelog/2025-09-10.mdx
  • apps/site/content/changelog/2025-10-08.mdx
  • apps/site/content/changelog/2025-10-22.mdx
  • apps/site/content/changelog/2025-11-05.mdx
  • apps/site/content/changelog/2025-11-19.mdx
  • apps/site/content/changelog/2025-12-03.mdx
  • apps/site/content/changelog/2025-12-17.mdx
  • apps/site/content/changelog/2026-01-21.mdx
  • apps/site/next.config.mjs
  • apps/site/package.json
  • apps/site/public/changelog/image-3591d625e8bce0c71d29d8cd0f026e5f8daf3f79-844x474-webp-TypedSQL-announcement-844x474.webp
  • apps/site/source.config.ts
  • apps/site/src/app/changelog/[...slug]/page.tsx
  • apps/site/src/app/changelog/layout.tsx
  • apps/site/src/app/changelog/page.tsx
  • apps/site/src/app/global.css
  • apps/site/src/lib/changelog-source.tsx
  • apps/site/src/lib/sitemap.ts
  • apps/site/src/lib/url.ts
  • apps/site/src/mdx-components.tsx

Walkthrough

Adds ~60+ changelog MDX release pages (2024-03-13 → 2026-03-13), integrates Fumadocs MDX into the Next.js site, and implements routing, MDX rendering, preview extraction, sitemap inclusion, MDX components, and related build script updates.

Changes

Cohort / File(s) Summary
Changelog content
apps/site/content/changelog/*.mdx (many new files: 2024-03-13.mdx2026-03-13.mdx)
Add numerous release-note MDX entries with YAML frontmatter and structured content for each release.
Next / MDX integration & package scripts
apps/site/next.config.mjs, apps/site/package.json, apps/site/source.config.ts
Enable Fumadocs MDX: wrap Next config via withMDX, add fumadocs-mdx dependency and postinstall/types scripts, and add Fumadocs releaseNotes collection + MDX/remark plugins.
Changelog routing & pages
apps/site/src/app/changelog/page.tsx, apps/site/src/app/changelog/[...slug]/page.tsx, apps/site/src/app/changelog/layout.tsx
Add changelog listing page, catch‑all release page with MDX rendering, metadata generation (generateMetadata), static params (generateStaticParams), and a minimal layout.
MDX rendering & UI components
apps/site/src/mdx-components.tsx, apps/site/src/app/global.css
Introduce getMDXComponents() merging icon, fumadocs-ui, and @prisma/eclipse components; override img → ImageZoom and pre → CodeBlock/Pre; add fumadocs UI CSS imports and .landing-h1 styles.
Changelog source & preview extraction
apps/site/src/lib/changelog-source.tsx
Add changelogSource (Fumadocs loader), getSortedReleaseNotes(), and getReleaseNotePreview(slug) which reads MDX, strips frontmatter/code, tokenizes paragraphs, normalizes, and truncates a preview string.
Sitemap & URL helpers
apps/site/src/lib/sitemap.ts, apps/site/src/lib/url.ts
Include changelog page URLs in sitemap (deduped) and change local fallback base URL to http://localhost:3000.
Miscellaneous site wiring
apps/site/src/lib/..., apps/site/src/app/* (new/updated imports/usage)
Small integration points to surface changelog pages and MDX features across site utilities.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • Site changelog #7735 — Appears to add the same changelog MDX pages and supporting site MDX/config/code; likely the primary related PR.
🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 16.67% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'Site changelog' is vague and generic, using non-descriptive terminology that doesn't convey the specific nature or scope of the changeset. Use a more specific title that describes the primary change, such as 'Add changelog infrastructure with Fumadocs MDX integration' or 'Implement release notes pages with 30+ changelog entries'.
✅ Passed checks (1 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

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


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@argos-ci
Copy link
Copy Markdown

argos-ci bot commented Mar 31, 2026

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Mar 31, 2026, 7:02 PM

Copy link
Copy Markdown
Contributor

@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: 3

Note

Due to the large number of review comments, Critical, Major severity comments were prioritized as inline comments.

🟡 Minor comments (30)
apps/site/content/changelog/2025-12-17.mdx-29-30 (1)

29-30: ⚠️ Potential issue | 🟡 Minor

Unnecessary escape characters will render literally.

Line 29 has backslash escapes that will display incorrectly:

  • \- at the start breaks the list item (should be -)
  • adapter-\{pg,neon,ppg\} will show literal backslashes

These are likely artifacts from a conversion process.

📝 Suggested fix
-\- [\#28849](https://github.com/prisma/prisma/pull/28849): fix(adapter-\{pg,neon,ppg\}): handle 22P02 error in Postgres
+- [\#28849](https://github.com/prisma/prisma/pull/28849): fix(adapter-{pg,neon,ppg}): handle 22P02 error in Postgres
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-12-17.mdx` around lines 29 - 30, Remove the
stray backslashes introduced in the changelog line: replace the leading "\- "
with a proper "- " list marker and change "adapter-\{pg,neon,ppg\}" to
"adapter-{pg,neon,ppg}" so the item renders correctly (look for the exact text
"adapter-\{pg,neon,ppg\}" and the leading "\- " in the line and remove the
escape characters).
apps/site/content/changelog/2024-04-25.mdx-25-27 (1)

25-27: ⚠️ Potential issue | 🟡 Minor

Malformed Markdown bold/italic syntax.

Lines 25 and 27 have extra asterisks that will render incorrectly:

  • Line 25: **omit**** Fields... has trailing ****
  • Line 27: ***per-query basis*****.** has *****

This appears to be a copy-paste artifact. The extra asterisks will either display literally or produce unexpected formatting.

📝 Suggested fix
-## **`omit`**** Fields From Prisma Client Queries (In Preview)**
+## `omit` Fields From Prisma Client Queries (In Preview)

-We're excited to announce Preview support for the `omit` option within the Prisma Client query options. The [highly-requested](https://github.com/prisma/prisma/issues/5042) `omit` feature now allows you to exclude fields that you don't want to retrieve from the database on a ***per-query basis*****.**
+We're excited to announce Preview support for the `omit` option within the Prisma Client query options. The [highly-requested](https://github.com/prisma/prisma/issues/5042) `omit` feature now allows you to exclude fields that you don't want to retrieve from the database on a **per-query basis**.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-04-25.mdx` around lines 25 - 27, Fix the
malformed Markdown in the changelog lines that mention `omit` and "per-query
basis" by removing the stray asterisks: locate the header containing "`omit`****
Fields From Prisma Client Queries (In Preview)" and the sentence containing
"per-query basis*****" and normalize them to valid Markdown (e.g., use
**`omit`** Fields From Prisma Client Queries (In Preview) and ***per-query
basis*** or plain emphasis as intended) so the bold/italic formatting renders
correctly.
apps/site/content/changelog/2024-08-29.mdx-36-36 (1)

36-36: ⚠️ Potential issue | 🟡 Minor

Fix malformed spacing around markdown link.

Line 36 has in[ our blog post.], which produces awkward rendering.

Suggested fix
-Learn more about how connection pooling helps your applications and some best practices for setting the connection limit in[ our blog post.](https://www.prisma.io/blog/introducing-auto-scaling-for-prisma-accelerate)
+Learn more about how connection pooling helps your applications and some best practices for setting the connection limit in [our blog post](https://www.prisma.io/blog/introducing-auto-scaling-for-prisma-accelerate).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-08-29.mdx` at line 36, The markdown text
contains a malformed link with no space before the link start ("in[ our blog
post.]"); update the sentence in the changelog entry (the line containing the
text "Learn more about how connection pooling helps your applications and some
best practices for setting the connection limit in[ our blog
post.](https://www.prisma.io/blog/introducing-auto-scaling-for-prisma-accelerate)")
by inserting a space before the "[" so it reads "in [our blog post.](...)" to
fix the rendering.
apps/site/content/changelog/2024-11-28.mdx-29-29 (1)

29-29: ⚠️ Potential issue | 🟡 Minor

Use HTTPS for outbound shortlink.

Line 29 uses http://pris.ly/i-want-tcp; switch to HTTPS to avoid insecure-link warnings and enforce transport security.

Suggested fix
-We're also gathering feedback on connecting to Prisma Postgres from your favorite database management tools, like TablePlus or PgAdmin. Let us know what you think here: [pris.ly/i-want-tcp](http://pris.ly/i-want-tcp).
+We're also gathering feedback on connecting to Prisma Postgres from your favorite database management tools, like TablePlus or PgAdmin. Let us know what you think here: [pris.ly/i-want-tcp](https://pris.ly/i-want-tcp).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-11-28.mdx` at line 29, Update the outbound
shortlink to use HTTPS instead of HTTP in the changelog text: replace
"http://pris.ly/i-want-tcp" with "https://pris.ly/i-want-tcp" where the
shortlink appears so the link is served securely (the string
"pris.ly/i-want-tcp" is the unique identifier to locate and update).
apps/site/content/changelog/2024-11-28.mdx-21-22 (1)

21-22: ⚠️ Potential issue | 🟡 Minor

Fix malformed UTM query separators in links.

At Lines 21-22, the URL query strings use ?utm_source=website?utm_medium=changelog; the second ? should be &.

Suggested fix
-- **Explore what's new**: Read the [launch blog](https://pris.ly/prisma-6?utm_source=website?utm_medium=changelog) to learn how Prisma has evolved, including tooling updates and new features for improved performance and flexibility.
-- **Upgrade guide**: Check the [migration guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6?utm_source=website?utm_medium=changelog) for instructions to upgrade your Prisma setup.
+- **Explore what's new**: Read the [launch blog](https://pris.ly/prisma-6?utm_source=website&utm_medium=changelog) to learn how Prisma has evolved, including tooling updates and new features for improved performance and flexibility.
+- **Upgrade guide**: Check the [migration guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6?utm_source=website&utm_medium=changelog) for instructions to upgrade your Prisma setup.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-11-28.mdx` around lines 21 - 22, The UTM
query parameters in the two links in the strings "**Explore what's new**" and
"**Upgrade guide**" are malformed (they use `?` twice); update both URLs so the
second query parameter uses `&` (change
`?utm_source=website?utm_medium=changelog` to
`?utm_source=website&utm_medium=changelog`) ensuring the launch blog link and
the migration guide link are corrected.
apps/site/content/changelog/2025-11-05.mdx-40-40 (1)

40-40: ⚠️ Potential issue | 🟡 Minor

Fix capitalization typo in sentence flow.

Line 40 has “Now You can…”, which reads like an accidental mid-sentence capitalization.

Suggested wording fix
- A frequently requested feature is to be able to use a [local Prisma Postgres database](https://www.prisma.io/docs/postgres/database/local-development) within our VS Code Extension without having to log in. In this release, we’re happy to share that this is now supported! Now You can work on your project without having to connect to the database remotely.
+ A frequently requested feature is to be able to use a [local Prisma Postgres database](https://www.prisma.io/docs/postgres/database/local-development) within our VS Code Extension without having to log in. In this release, we’re happy to share that this is now supported! Now you can work on your project without having to connect to the database remotely.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-11-05.mdx` at line 40, The sentence contains
an accidental mid-sentence capitalization: replace "Now You can work on your
project without having to connect to the database remotely." with "Now you can
work on your project without having to connect to the database remotely." in the
changelog entry (search for the exact string "Now You can work on your project
without having to connect to the database remotely." to locate and update it).
apps/site/content/changelog/2025-03-13.mdx-8-10 (1)

8-10: ⚠️ Potential issue | 🟡 Minor

Normalize tag casing to avoid split taxonomy buckets.

Lines 8-10 use lowercase tags, while other entries use title-cased product tags. If tags are used for filtering/grouping, this can fragment results.

Suggested normalization
 tags:
-  - "accelerate"
-  - "optimize"
-  - "mcp"
+  - "Accelerate"
+  - "Optimize"
+  - "MCP"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-03-13.mdx` around lines 8 - 10, The
changelog entry contains lowercase tag strings ("accelerate", "optimize", "mcp")
that will split taxonomy buckets; update those tag values to match the project's
title-cased tags (e.g., "Accelerate", "Optimize", "MCP") so they are consistent
with other entries and downstream filters; locate the three tag strings in the
changelog content and replace them with the title-cased equivalents.
apps/site/content/changelog/2024-10-17.mdx-25-27 (1)

25-27: ⚠️ Potential issue | 🟡 Minor

Use one settings location term consistently.

Line 25 says “Organization Settings” while Line 27 says “Workspace Settings.” Please align on one location label to prevent navigation confusion.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-10-17.mdx` around lines 25 - 27, The copy
uses two different location labels ("Organization Settings" and "Workspace
Settings") which may confuse users; pick one term and make both instances
consistent (e.g., replace "Organization Settings" or "Workspace Settings" so
both lines use the same label), updating the phrases in the paragraph that
reference where compliance and certification information can be found so they
match exactly.
apps/site/content/changelog/2025-10-22.mdx-44-44 (1)

44-44: ⚠️ Potential issue | 🟡 Minor

Correct typo in metrics description.

Line 44 says “insights into the follow”; this should be “insights into the following”.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-10-22.mdx` at line 44, Replace the incorrect
phrase "insights into the follow" with "insights into the following" in the
changelog entry (the sentence that currently reads "You can get insights into
the follow:") so the sentence reads "You can get insights into the following:";
update only that exact phrase in the content.
apps/site/content/changelog/2024-03-13.mdx-25-25 (1)

25-25: ⚠️ Potential issue | 🟡 Minor

Fix malformed bold markup in CTA lines.

Line 25, Line 35, Line 59, Line 67, and Line 73 contain unmatched or extra **, which can render visible asterisks or inconsistent emphasis on the page.

Suggested markdown cleanup
-**👉 Check out our announcement **[**blog post**](https://www.prisma.io/blog/prisma-pulse-in-general-availability) and [documentation](https://www.prisma.io/docs/pulse/) to learn more and get started.
+**👉 Check out our announcement** [**blog post**](https://www.prisma.io/blog/prisma-pulse-in-general-availability) and [documentation](https://www.prisma.io/docs/pulse/) to learn more and get started.

-**👉 **Learn more in our [blog post](https://www.prisma.io/blog/introducing-platform-environments), and take it for a spin.
+**👉 Learn more** in our [blog post](https://www.prisma.io/blog/introducing-platform-environments), and take it for a spin.

-**👉 **Read more in our [5.11.0 release notes](https://github.com/prisma/prisma/releases/tag/5.11.0).
+**👉 Read more** in our [5.11.0 release notes](https://github.com/prisma/prisma/releases/tag/5.11.0).

-**👉 **[prisma.io/partners](https://www.prisma.io/partners)
+**👉 [prisma.io/partners](https://www.prisma.io/partners)**

-🎥 [**Umami - The open source Google Analytics alternative**](https://www.youtube.com/watch?v=M6xryb2YFdo)** **
+🎥 [**Umami - The open source Google Analytics alternative**](https://www.youtube.com/watch?v=M6xryb2YFdo)

Also applies to: 35-35, 59-59, 67-67, 73-73

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-03-13.mdx` at line 25, Several CTA lines
contain unmatched or extra bold markers (e.g., the line containing "**👉 Check
out our announcement **[**blog
post**](https://www.prisma.io/blog/prisma-pulse-in-general-availability) and
[documentation](https://www.prisma.io/docs/pulse/) to learn more and get
started.")—remove or reposition the stray asterisks so Markdown bold is
balanced: either make the whole CTA bold (wrap the entire phrase once with
**...**) or remove the surrounding ** before the link so only the intended text
or link is emphasized; apply the same fix to the other affected CTA lines (the
lines matching the same pattern at the other occurrences) to eliminate visible
asterisks and ensure consistent emphasis.
apps/site/content/changelog/2024-03-13.mdx-49-49 (1)

49-49: ⚠️ Potential issue | 🟡 Minor

Use HTTPS for external links.

Line 49 and Line 79 use http:// URLs. Prefer https:// to avoid mixed-content/security downgrades in user-facing docs.

Suggested link updates
-**👉** Share your feedback with us via [Twitter](https://twitter.com/prisma) or [Discord](http://pris.ly/discord)
+**👉** Share your feedback with us via [Twitter](https://twitter.com/prisma) or [Discord](https://pris.ly/discord)

-Steven Tey shares his journey from leaving Vercel to launching his startup. Learn how [Dub.co](http://Dub.co) began as a passion project, its technology stack, and an in-depth look at its codebase.
+Steven Tey shares his journey from leaving Vercel to launching his startup. Learn how [Dub.co](https://dub.co) began as a passion project, its technology stack, and an in-depth look at its codebase.

Also applies to: 79-79

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-03-13.mdx` at line 49, Replace insecure
http:// external links with HTTPS in the changelog entry: update the Discord URL
string "http://pris.ly/discord" to "https://pris.ly/discord" (and any other
occurrences of "http://" noted at line 79) so the links use "https://". Locate
the literal link text in the changelog content (the line containing "Share your
feedback" and the other occurrence at line 79) and change the scheme only—leave
the rest of the link text unchanged.
apps/site/content/changelog/2024-08-08.mdx-30-30 (1)

30-30: ⚠️ Potential issue | 🟡 Minor

Clean up heading/formatting typos in the Pulse + Accelerate sections.

Line 30 has invalid nested ** sequences, and Line 38 says “examples projects” (should be “example projects”). Line 40 also has extra spacing inside bold text.

Suggested content fix
-🛠 **Resolved Pulse ****`.stream()`**** API Event Loss**
+🛠 **Resolved Pulse `.stream()` API event loss**

-## New Accelerate examples projects
+## New Accelerate example projects

-🔍 Dive into our latest example apps with **Nuxt.js**, **SolidStart**, and **SvelteKit **and learn how to implement Prisma Accelerate and apply effective cache strategies to speed up data retrieval.
+🔍 Dive into our latest example apps with **Nuxt.js**, **SolidStart**, and **SvelteKit** and learn how to implement Prisma Accelerate and apply effective cache strategies to speed up data retrieval.

Also applies to: 38-40

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-08-08.mdx` at line 30, Fix the malformed
markdown and typos: replace the heading fragment "🛠 **Resolved Pulse
****`.stream()`**** API Event Loss**" with properly nested/escaped bold and
inline code (e.g., "🛠 **Resolved Pulse `.stream()` API Event Loss**"), change
"examples projects" to "example projects", and remove extra spacing inside the
bold text on the affected line so bold markers are contiguous; update the
specific text occurrences (the heading containing `.stream()`, the sentence with
"examples projects", and the bolded line with extra spaces) accordingly.
apps/site/content/changelog/2025-01-30.mdx-36-36 (1)

36-36: ⚠️ Potential issue | 🟡 Minor

Fix the release notes version link.

Line 36 links to 6.2.0, but this page is for v6.3.0.

Suggested fix
-As always, [check out the release notes](https://github.com/prisma/prisma/releases/tag/6.2.0) for all the details.
+As always, [check out the release notes](https://github.com/prisma/prisma/releases/tag/6.3.0) for all the details.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-01-30.mdx` at line 36, Update the release
notes link text URL that currently points to
"https://github.com/prisma/prisma/releases/tag/6.2.0" (the "[check out the
release notes]" anchor) so it references the correct v6.3.0 tag; replace the
6.2.0 version in the URL with 6.3.0 to match the page version.
apps/site/content/changelog/2024-09-26.mdx-40-40 (1)

40-40: ⚠️ Potential issue | 🟡 Minor

Fix malformed inline code in section heading.

Line 40 includes a trailing space inside the code span: `strictUndefinedChecks `. This renders oddly in the heading.

Suggested fix
-## Introducing `strictUndefinedChecks `feature in Preview!
+## Introducing `strictUndefinedChecks` feature in Preview!
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-09-26.mdx` at line 40, The heading contains
a malformed inline code span "Introducing `strictUndefinedChecks `feature in
Preview!" where the code token has a trailing space; update the heading so the
code span is exact (use `strictUndefinedChecks`) and ensure there is a normal
space between the closing backtick and the word "feature" (resulting in
"Introducing `strictUndefinedChecks` feature in Preview!"); locate the heading
string and remove the extra space inside the backticks around
strictUndefinedChecks.
apps/site/content/changelog/2025-10-08.mdx-46-74 (1)

46-74: ⚠️ Potential issue | 🟡 Minor

Fix two copy issues: missing space and typo.

At Line 46, add a space after ...for flexibility): before “Learn more”.
At Line 74, “curios” should be “curious”.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-10-08.mdx` around lines 46 - 74, Fix two
copy issues in the changelog excerpt: insert a space between the closing
parenthesis and "Learn more" where the snippet reads "for flexibility):Learn
more" so it becomes "for flexibility): Learn more", and correct the typo
"curios" to "curious" in the sentence "If you’re curios, you can learn more...".
Locate and update the corresponding lines containing the exact strings "for
flexibility):Learn more" and "curios" to apply these edits.
apps/site/content/changelog/2025-08-27.mdx-51-51 (1)

51-51: ⚠️ Potential issue | 🟡 Minor

Fix grammar in the GA announcement sentence.

At Line 51, use “looking forward to seeing” instead of “looking forward to see”.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-08-27.mdx` at line 51, Update the GA
announcement sentence at Line 51 to correct the grammar: replace "looking
forward to see" with "looking forward to seeing" so the sentence reads "We’re
looking forward to seeing what you’re going to build with it!" Search for the
exact string "We’re looking forward to see what you’re going to build with it!"
in the file and make this single-word change.
apps/site/content/changelog/2025-01-09.mdx-53-53 (1)

53-53: ⚠️ Potential issue | 🟡 Minor

Polish the compound noun for readability.

Use “one-stop shop” instead of “one stop shop” in this sentence.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-01-09.mdx` at line 53, Update the compound
noun in the changelog sentence that currently reads "one stop shop" to the
hyphenated form "one-stop shop" in the entry that starts with "[A new guides
section of our docs] (...) that serves as your one stop shop for step-by-step
Prisma guides." Locate and edit that exact sentence in the 2025-01-09 changelog
entry and replace "one stop shop" with "one-stop shop" for correct readability.
apps/site/content/changelog/2025-04-10.mdx-73-73 (1)

73-73: ⚠️ Potential issue | 🟡 Minor

Fix likely broken docs anchor in the prisma-client docs URL.

At Line 73, early-acess appears misspelled and likely should be early-access.

Proposed fix
-📚 Learn more in the [docs](https://www.prisma.io/docs/orm/prisma-schema/overview/generators#prisma-client-early-acess).
+📚 Learn more in the [docs](https://www.prisma.io/docs/orm/prisma-schema/overview/generators#prisma-client-early-access).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-04-10.mdx` at line 73, Fix the misspelled
anchor in the docs URL by replacing "prisma-client-early-acess" with
"prisma-client-early-access" in the string
"https://www.prisma.io/docs/orm/prisma-schema/overview/generators#prisma-client-early-acess"
so the link points to the correct `prisma-client` docs anchor.
apps/site/content/changelog/2024-05-15.mdx-63-63 (1)

63-63: ⚠️ Potential issue | 🟡 Minor

Remove trailing whitespace from the BFG link URL.

At Line 63, the URL includes a trailing space (.../bfg ), which can produce a broken link.

Proposed fix
-👉 [Read up on the Prisma BFG framework](https://www.prisma.io/blog/bfg )
+👉 [Read up on the Prisma BFG framework](https://www.prisma.io/blog/bfg)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2024-05-15.mdx` at line 63, The markdown link
"Read up on the Prisma BFG framework" contains a trailing space at the end of
the URL ("https://www.prisma.io/blog/bfg "), which can break the link; edit the
link target in the changelog entry so the URL has no trailing whitespace (change
"https://www.prisma.io/blog/bfg " to "https://www.prisma.io/blog/bfg") so the
anchor renders correctly.
apps/site/content/changelog/2025-07-02.mdx-77-77 (1)

77-77: ⚠️ Potential issue | 🟡 Minor

Replace the placeholder docs URL before merge.

https://tbd is a broken/stale user-facing link.

Proposed fix
-Learn more about these new commands in the [docs](https://tbd).
+Learn more about these new commands in the [docs](<replace-with-final-doc-url>).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-07-02.mdx` at line 77, The changelog
contains a placeholder link "[docs](https://tbd)" that must be replaced before
merge; locate the markdown line containing the link text "[docs](https://tbd)"
and update the URL to the correct production documentation URL (or remove the
link and keep plain text if the docs are not yet available), ensuring the
visible link text and parentheses are preserved and that the final URL is valid
and user-facing.
apps/site/content/changelog/2025-08-27.mdx-72-72 (1)

72-72: ⚠️ Potential issue | 🟡 Minor

Clean up heading Markdown to avoid broken formatting.

The heading contains escaped/broken bold delimiters around --json and will render poorly.

Proposed fix
-## 🌟 **New ****`--json`**** flag for ****`npx create-db`**
+## 🌟 **New `--json` flag for `npx create-db`**
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-08-27.mdx` at line 72, The heading's
Markdown has broken/escaped bold delimiters around the `--json` flag; edit the
heading so the bold and inline-code are correctly nested (for example: ## 🌟
**New `--json` flag for `npx create-db`**) by removing the stray escape
characters/extra asterisks around `--json` and ensuring both `--json` and `npx
create-db` remain inline code while the whole phrase is wrapped in bold; update
the heading text containing `--json` and `npx create-db` accordingly.
apps/site/content/changelog/2025-07-02.mdx-47-47 (1)

47-47: ⚠️ Potential issue | 🟡 Minor

Fix malformed Markdown emphasis in the region list item.

The current asterisk nesting is broken and will render inconsistently.

Proposed fix
-- **`eu-central-1`****: Frankfurt (*****new!*****)**
+- **`eu-central-1`**: Frankfurt (**new!**)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-07-02.mdx` at line 47, The list item for the
region with the inline code "`eu-central-1`" has mismatched asterisks causing
malformed emphasis; update the line currently containing "-
**`eu-central-1`****: Frankfurt (*****new!*****)**" to a properly balanced
Markdown emphasis, for example "- **`eu-central-1`: Frankfurt (new!)**" so the
backticked region and the bold formatting are correctly closed.
apps/site/content/changelog/2025-04-10.mdx-50-110 (1)

50-110: ⚠️ Potential issue | 🟡 Minor

Normalize Markdown emphasis markers; several headings/bullets are malformed.

There are multiple over-escaped ** sequences that will render incorrectly (notably around prisma-client, “Ask Me Anything”, and “new song”).

Proposed fix
-#### **A modern and flexible ****`prisma-client`**** generator with ESM support (Early Access)**
+#### **A modern and flexible `prisma-client` generator with ESM support (Early Access)**

-- Watch this [****“Ask Me Anything” session on YouTube****](https://www.youtube.com/watch?v=bH4nla8Awzs) where our ORM engineering team answers all your questions and talks about upcoming improvements to Prisma ORM.
+- Watch this [**“Ask Me Anything” session on YouTube**](https://www.youtube.com/watch?v=bH4nla8Awzs) where our ORM engineering team answers all your questions and talks about upcoming improvements to Prisma ORM.

-- We not only cook software, we also cook music every once in a while 😉 Check out our new band “DBeastie boys” with their **new song **[**“No cold starts, just hot queries”**](https://x.com/prisma/status/1907768482000711714) 🎶🔥
+- We not only cook software, we also cook music every once in a while 😉 Check out our new band “DBeastie boys” with their **new song** [**“No cold starts, just hot queries”**](https://x.com/prisma/status/1907768482000711714) 🎶🔥
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-04-10.mdx` around lines 50 - 110, The
markdown contains over-escaped/malformed emphasis markers (extra `**` and stray
asterisks) that break rendering—fix by normalizing emphasis and code spans: use
backticks for code identifiers like `prisma-client` and `moduleFormat`, use
plain bold/italic only where intended (e.g., **A modern and flexible
`prisma-client` generator with ESM support (Early Access)**), remove duplicate
asterisks around “Ask Me Anything” and “new song”, and remove redundant escape
characters so headings and list bullets render correctly (search for the strings
"prisma-client", "Ask Me Anything", "new song", and the header line starting
with "A modern and flexible" to locate each instance).
apps/site/content/changelog/2025-08-13.mdx-20-20 (1)

20-20: ⚠️ Potential issue | 🟡 Minor

Grammar issue: "don't allows" should be "don't allow"

There's a subject-verb agreement error in this sentence.

📝 Suggested fix
-[Last release](https://pris.ly/release/6.13.0), we improved the robustness of [SQL views](https://www.prisma.io/docs/orm/prisma-schema/data-model/views) defined in the Prisma schema. Views are *virtual* tables that don't allows for defining foreign keys in the underlying database.
+[Last release](https://pris.ly/release/6.13.0), we improved the robustness of [SQL views](https://www.prisma.io/docs/orm/prisma-schema/data-model/views) defined in the Prisma schema. Views are *virtual* tables that don't allow for defining foreign keys in the underlying database.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-08-13.mdx` at line 20, Fix the subject-verb
agreement in the sentence that currently reads "Views are *virtual* tables that
don’t allows for defining foreign keys in the underlying database." by replacing
"don’t allows" with "don’t allow" so the sentence reads "Views are *virtual*
tables that don’t allow for defining foreign keys in the underlying database."
Make this change in the text block containing the sentence shown in the diff.
apps/site/content/changelog/2026-01-21.mdx-19-20 (1)

19-20: ⚠️ Potential issue | 🟡 Minor

Missing space after period

There's a missing space between sentences: "...selection.By default..." and "...speed).By default...". This affects readability.

📝 Suggested fix
-- [\#28976](https://github.com/prisma/prisma/pull/28976): Fast and Small Query Compilers
-We've been working on various performance-related bugs since the initial ORM 7.0 release. With 7.3.0, we're introducing a new `compilerBuild` option for the client generator block in `schema.prisma` with two options: `fast` and `small`. This allows you to swap the underlying Query Compiler engine based on your selection, one built for speed (with an increase in size), and one built for size (with the trade off for speed).By default, the `fast` mode is used, but this can be set by the user:We still have more in progress for performance, but this new `compilerBuild` option is our first step toward addressing your concerns!
+- [\#28976](https://github.com/prisma/prisma/pull/28976): Fast and Small Query Compilers
+We've been working on various performance-related bugs since the initial ORM 7.0 release. With 7.3.0, we're introducing a new `compilerBuild` option for the client generator block in `schema.prisma` with two options: `fast` and `small`. This allows you to swap the underlying Query Compiler engine based on your selection, one built for speed (with an increase in size), and one built for size (with the trade-off for speed). By default, the `fast` mode is used, but this can be set by the user. We still have more in progress for performance, but this new `compilerBuild` option is our first step toward addressing your concerns!
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2026-01-21.mdx` around lines 19 - 20, Fix the
missing space after a period in the changelog sentence containing the
`compilerBuild` description: locate the sentence fragment that reads "...swap
the underlying Query Compiler engine based on your selection.By default, the
`fast` mode..." and insert a space after the period so it becomes "...selection.
By default, the `fast` mode..."; similarly ensure any other instance like
"...speed).By default..." has a space after the period; update the
`2026-01-21.mdx` content around the `compilerBuild` text accordingly.
apps/site/content/changelog/2025-09-10.mdx-87-89 (1)

87-89: ⚠️ Potential issue | 🟡 Minor

Duplicate paragraph detected

Lines 87-89 contain the exact same text as lines 85-86. This appears to be an accidental copy-paste.

📝 Suggested fix - remove duplicate
 ## 📣 Rust-free Prisma ORM with Prisma Accelerate and Prisma Postgres

 With this release, the Rust-free Prisma ORM (Query Compiler) can now be used together with Prisma Postgres and also Prisma Accelerate. This means you can take advantage of connection pooling and caching while using the new TypeScript-based ORM architecture.

-With this release, the Rust-free Prisma ORM (Query Compiler) can now be used together with Prisma Postgres and also Prisma Accelerate. This means you can take advantage of connection pooling and caching while using the new TypeScript-based ORM architecture.
-
 To enable it, update your Prisma schema:
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-09-10.mdx` around lines 87 - 89, Remove the
accidental duplicate paragraph that repeats "With this release, the Rust-free
Prisma ORM (Query Compiler) can now be used together with Prisma Postgres and
also Prisma Accelerate. This means you can take advantage of connection pooling
and caching while using the new TypeScript-based ORM architecture." — keep only
a single instance of that sentence (remove the second occurrence present in the
diff) so the changelog no longer contains the repeated paragraph.
apps/site/content/changelog/2025-06-17.mdx-37-37 (1)

37-37: ⚠️ Potential issue | 🟡 Minor

Use descriptive alt text for these screenshots.

Right now assistive tech will read the asset filenames, which doesn't convey what each UI capture is showing. Please replace them with short descriptions, or use empty alt text if any of these images are purely decorative.

Also applies to: 45-45, 88-88

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-06-17.mdx` at line 37, The markdown image
currently uses the filename as alt text ("local-ppg-annotated.png"); change the
alt text in the image markdown (![local-ppg-annotated.png](...)) to a short
descriptive string that conveys the UI capture (e.g., "Preview of PPG annotation
panel showing X and Y") or use empty alt text ("![](...)") if decorative, and
apply the same change for the other images referenced at the same locations
(lines noted in the review) so assistive tech reads meaningful descriptions
instead of filenames.
apps/site/src/app/changelog/[...slug]/page.tsx-127-135 (1)

127-135: ⚠️ Potential issue | 🟡 Minor

Avoid identical metadata across the changelog pages.

The release notes added in this batch don't populate metaDescription, summary, or description, and this route also ignores per-entry ogImage. In practice, most of these pages will ship the same generic description and the same OG image instead of release-specific metadata.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/app/changelog/`[...slug]/page.tsx around lines 127 - 135,
Current code always falls back to a generic description and OG image for
changelog pages; update the createPageMetadata call to prefer per-entry metadata
before using the generic defaults. Use the existing page object fields (e.g.,
page.data.metaDescription, page.data.summary, page.data.description) but also
check any entry-specific image/OG fields (e.g., page.data.ogImage or
page.data.image or page.entry?.ogImage if present) and pass those into the
description and ogImage params of createPageMetadata so release pages use their
own metaDescription and OG image when available, otherwise fall back to the
generic strings (e.g., "Read the latest Prisma release notes." and
"/og/og-changelog.png").
apps/site/content/changelog/2025-11-19.mdx-59-59 (1)

59-59: ⚠️ Potential issue | 🟡 Minor

Give this entry one more proofreading pass.

There are several visible copy errors here (theres’s, PostgresSQL, get’s, has removed, highly-request, emuns) that will read rough on the live changelog.

Also applies to: 81-81, 131-138, 213-213

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-11-19.mdx` at line 59, Proofread and fix the
copy errors in the changelog entry: correct "theres’s" to "there's",
"PostgresSQL" to "Postgres" or "PostgreSQL" (choose consistent spelling),
"get’s" to "gets", "has removed" to "has been removed" or rephrase for tense
consistency, "highly-request" to "highly requested", and "emuns" to "enums";
apply the same proofreading and corrections to the other referenced sections
(lines with text fragments at 81, 131-138, and 213) to ensure consistent
spelling, punctuation, and tense across the document.
apps/site/content/changelog/2025-05-01.mdx-36-36 (1)

36-36: ⚠️ Potential issue | 🟡 Minor

Switch this release link to HTTPS.

This is the only link in the batch still using http://. Keeping it on HTTPS avoids an unnecessary insecure hop from an otherwise secure docs page.

🔒 Proposed fix
-The Prisma ORM keeps improving at a rapid pace! In the [6.7.0 release](http://pris.ly/release/6.7.0), we achieved a major milestone and published the first version of [Prisma ORM without Rust engines](https://www.prisma.io/blog/try-the-new-rust-free-version-of-prisma-orm-early-access).
+The Prisma ORM keeps improving at a rapid pace! In the [6.7.0 release](https://pris.ly/release/6.7.0), we achieved a major milestone and published the first version of [Prisma ORM without Rust engines](https://www.prisma.io/blog/try-the-new-rust-free-version-of-prisma-orm-early-access).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-05-01.mdx` at line 36, Update the Markdown
link target for the "[6.7.0 release]" anchor so it uses HTTPS instead of HTTP:
replace "http://pris.ly/release/6.7.0" with "https://pris.ly/release/6.7.0" in
the changelog entry text to remove the insecure hop while keeping the rest of
the link and surrounding content unchanged.
🧹 Nitpick comments (9)
apps/site/src/app/global.css (1)

28-37: Consider responsive typography for .landing-h1.

The fixed font-size: 60px won't scale on smaller viewports, which could cause horizontal overflow or awkward text wrapping on mobile devices. If this class is used on landing pages viewed across device sizes, a responsive approach would improve the experience.

💡 Optional: Use clamp() for fluid typography
 .landing-h1 {
     color: var(--color-foreground-neutral);
     font-variant-numeric: lining-nums tabular-nums slashed-zero;
     font-variation-settings: "wdth" 125;
     font-family: var(--font-sans-display);
-    font-size: 60px;
+    font-size: clamp(32px, 5vw + 1rem, 60px);
     font-style: normal;
     font-weight: 900;
     line-height: 120%;
 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/app/global.css` around lines 28 - 37, The .landing-h1 rule uses
a fixed font-size (60px) which will not scale on small viewports; update the
.landing-h1 CSS to use responsive typography (e.g., replace the fixed font-size
with a fluid approach such as clamp() or a relative unit like vw with sensible
min/max fallbacks, or add a small-media-query override) so headings scale across
device sizes and avoid overflow; modify the .landing-h1 rule (and any related
utility classes) to use the chosen responsive technique and ensure line-height
and font-variation-settings remain appropriate for the new sizing.
apps/site/src/lib/sitemap.ts (1)

124-133: Deduplicate merged pathnames and simplify Promise handling.

At Lines 124-133, Promise.resolve(...) is redundant, and the merged list should be deduped to avoid duplicate <url> entries when route sources overlap.

Suggested cleanup
-  const [pathnames, changelogEntries] = await Promise.all([
-    collectPageRoutes(APP_DIRECTORY),
-    Promise.resolve(
-      changelogSource.getPages().map((page) => page.url),
-    ),
-  ]);
-
-  const allPathnames = [...pathnames, ...changelogEntries];
+  const [pathnames, changelogEntries] = await Promise.all([
+    collectPageRoutes(APP_DIRECTORY),
+    changelogSource.getPages().map((page) => page.url),
+  ]);
+
+  const allPathnames = [...new Set([...pathnames, ...changelogEntries])];
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/lib/sitemap.ts` around lines 124 - 133, The merged pathname
list currently uses an unnecessary Promise.resolve around
changelogSource.getPages().map(...) and then concatenates pathnames and
changelogEntries without deduplication, which can produce duplicate <url>
entries; remove the Promise.resolve and change the merge of pathnames and
changelogEntries (variables pathnames, changelogEntries, and allPathnames) to
produce a deduplicated array (e.g., via a Set or Array.from(new Set(...)))
before returning so overlapping route sources do not create duplicate entries.
apps/site/content/changelog/2025-10-22.mdx (1)

11-14: Improve share copy to be specific to the release.

Current share content (“Look at this page: ”) reads like placeholder text and isn’t descriptive when shared externally.

Suggested update
 share:
   active: true
-  content: "Look at this page: "
+  content: "Prisma ORM v6.18.0 is out — prisma init now creates prisma.config.ts."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-10-22.mdx` around lines 11 - 14, The
share.content frontmatter currently uses placeholder text ("Look at this page:
"), which isn't descriptive; update the share.content value in the changelog
entry to a release-specific, human-readable sentence that includes the release
name or a brief summary (e.g., reference the release title/date or a short
highlight) so external shares are meaningful; locate the share.content key in
the same frontmatter block as share.active and replace the placeholder string
with the new descriptive message.
apps/site/src/mdx-components.tsx (1)

47-59: Let caller-provided MDX components override img/pre consistently.

Right now, Line 47 merges components before img, and pre is hard-overridden in the return object. That prevents consumers from overriding these keys through getMDXComponents(components).

Suggested merge-order refactor
 export function getMDXComponents(components?: MDXComponents): MDXComponents {
   const mdxComponents = {
     ...(icons as unknown as MDXComponents),
     ...defaultMdxComponents,
@@
-    ...components,
     img: ({ src, ...props }: ComponentProps<"img">) =>
       typeof src === "string" ? <ImageZoom {...props} src={src} /> : null,
   };

   return {
     ...mdxComponents,
     pre: ({ ref: _ref, ...props }) => (
       <CodeBlock {...props}>
         <Pre>{props.children}</Pre>
       </CodeBlock>
     ),
+    ...components,
   };
 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/mdx-components.tsx` around lines 47 - 59, The current merge
order prevents caller-provided components from overriding the defaults because
mdxComponents sets img and the return hard-overrides pre; change the merge so
caller `components` win: build defaults in `mdxComponents` without clobbering
user keys (e.g., only provide an `img` default when `components?.img` is
undefined or spread the default first and then spread `components` last), and do
the same for `pre` in the returned object (provide a default `pre` only if
`components.pre` is not present, or spread `components` after defaults). Update
references for the symbols `mdxComponents`, `components`, `img`, and `pre`
accordingly so caller-supplied components override the defaults.
apps/site/src/app/changelog/page.tsx (1)

20-28: Potential issue if entry.slugs is empty

If entry.slugs is an empty array, entry.slugs[0] will be undefined, causing getReleaseNotePreview to attempt reading a file path like content/changelog/undefined.mdx. While this is unlikely given the data source, adding a guard would make this more robust.

🛡️ Suggested defensive check
   const entriesWithPreview = await Promise.all(
     entries.map(async (entry) => ({
       entry,
       summary:
         entry.data.summary ??
         entry.data.description ??
-        (await getReleaseNotePreview(entry.slugs[0])),
+        (entry.slugs[0] ? await getReleaseNotePreview(entry.slugs[0]) : null),
     })),
   );
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/app/changelog/page.tsx` around lines 20 - 28,
entriesWithPreview can call getReleaseNotePreview(entry.slugs[0]) with
entry.slugs[0] being undefined if entry.slugs is an empty array; update the
mapping that builds entriesWithPreview to guard before calling
getReleaseNotePreview by checking entry.slugs && entry.slugs.length > 0 (or
entry.slugs?.[0]) and only await getReleaseNotePreview when a slug exists,
otherwise provide a safe default summary (e.g., '' or entry.data.description);
reference entriesWithPreview, getReleaseNotePreview, and entry.slugs when making
the change.
apps/site/content/changelog/2025-05-19.mdx (2)

21-21: Unusual markdown formatting with nested bold markers

The heading has redundant bold markers (****) around the inline code. This may render unexpectedly depending on the MDX processor.

📝 Cleaner formatting
-#### 💻 **Local development with Prisma Postgres via ****`prisma dev`**** (Early Access)**
+#### 💻 **Local development with Prisma Postgres via `prisma dev` (Early Access)**
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-05-19.mdx` at line 21, The MDX heading
contains redundant bold markers around the inline code (the sequence ****`prisma
dev`****) which can break rendering; edit the heading that starts with "Local
development with Prisma Postgres via `prisma dev` (Early Access)" and replace
the nested asterisks so the inline code is just `prisma dev` (e.g., remove the
extra **** before and after the backticks), keeping any desired surrounding
bolding consistent.

42-42: Same nested bold/code formatting issue

📝 Cleaner formatting
-#### 🦕 **Native Deno support in ****`prisma-client`**** generator (Preview)**
+#### 🦕 **Native Deno support in `prisma-client` generator (Preview)**
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/content/changelog/2025-05-19.mdx` at line 42, The heading contains
nested bold and code markers around `prisma-client` (the string "####
🦕 **Native Deno support in ****`prisma-client`**** generator (Preview)**")
which breaks markdown rendering; fix it by removing the nested bold around the
inline code and use a single bold wrapper with inline code instead—for example,
make the heading read with one pair of ** around the phrase and `prisma-client`
as inline code so the unique token `prisma-client` and the heading "Native Deno
support" are formatted correctly.
apps/site/src/lib/changelog-source.tsx (1)

39-46: Missing error handling for file read operation

If the MDX file doesn't exist for a given slug, readFile will throw an unhandled ENOENT error. This could cause the entire page to fail rendering. Consider adding error handling to gracefully return null when the file is missing.

🛡️ Suggested fix with error handling
 export async function getReleaseNotePreview(slug: string) {
   const filePath = path.join(
     process.cwd(),
     "content",
     "changelog",
     `${slug}.mdx`,
   );
-  const raw = await readFile(filePath, "utf8");
+  
+  let raw: string;
+  try {
+    raw = await readFile(filePath, "utf8");
+  } catch {
+    return null;
+  }
+  
   const body = raw.replace(/^---[\s\S]*?\n---\n?/, "");
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/lib/changelog-source.tsx` around lines 39 - 46, The
getReleaseNotePreview function currently calls readFile(filePath, "utf8")
without handling the case where the MDX file is missing; wrap the readFile call
in a try/catch around the code in getReleaseNotePreview, detect ENOENT (or
missing file) and return null for that case so the page can render gracefully,
while rethrowing or logging other unexpected errors; reference readFile,
filePath and getReleaseNotePreview when making the change.
apps/site/src/app/changelog/[...slug]/page.tsx (1)

104-110: Only render the TOC rail when there are headings.

This block is always rendered, so a changelog entry with an empty/missing TOC will still show an On this page panel with no items.

♻️ Suggested guard
-      <div className="max-md:hidden toc">
-        <div className="sticky top-24 max-h-[calc(100vh-6rem)] overflow-y-auto [&_a[data-state=inactive]]:text-foreground-neutral-weak! [&_a[data-state=active]]:text-foreground-neutral!">
-          <span className="text-shadow-foreground-neutral-reverse font-semibold text-md mb-4 mt-0 block">
-            On this page
-          </span>
-          <InlineTOC items={page.data.toc as TOCItem[]} className="px-0" />
-        </div>
-      </div>
+      {page.data.toc?.length ? (
+        <div className="max-md:hidden toc">
+          <div className="sticky top-24 max-h-[calc(100vh-6rem)] overflow-y-auto [&_a[data-state=inactive]]:text-foreground-neutral-weak! [&_a[data-state=active]]:text-foreground-neutral!">
+            <span className="text-shadow-foreground-neutral-reverse font-semibold text-md mb-4 mt-0 block">
+              On this page
+            </span>
+            <InlineTOC items={page.data.toc as TOCItem[]} className="px-0" />
+          </div>
+        </div>
+      ) : null}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/app/changelog/`[...slug]/page.tsx around lines 104 - 110, The
TOC rail is always rendered even when page.data.toc is empty; update the JSX
around the "On this page" rail to conditionally render the whole block only when
page.data.toc (cast as TOCItem[]) exists and has length > 0. Locate the block
that contains InlineTOC and the "On this page" span, check the TOC via
page.data.toc && (page.data.toc as TOCItem[]).length > 0 (or a helper hasTOC
function) and render the container div and InlineTOC only when that condition is
true so empty changelog entries don't show an empty panel.

Copy link
Copy Markdown
Contributor

@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: 9

🧹 Nitpick comments (11)
apps/site/content/changelog/2025-06-05.mdx (1)

24-30: Use prisma language identifier for schema syntax.

Consistent with the other changelog entries, this Prisma schema block should use prisma as the language identifier.

Suggested fix
-```typescript
+```prisma
 generator client {
   provider        = "prisma-client-js"  
   previewFeatures = ["queryCompiler", "driverAdapters"]  
   output          = "../generated/prisma"
 }
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-06-05.mdx around lines 24 - 30, Update the
fenced code block language tag from "typescript" to "prisma" for the Prisma
schema snippet containing the generator block (the block starting with
"generator client { ... }") so the snippet uses the correct prisma syntax
highlighting; simply change the opening triple-backtick language identifier to
prisma.


</details>

</blockquote></details>
<details>
<summary>apps/site/content/changelog/2025-05-01.mdx (1)</summary><blockquote>

`46-52`: **Use `prisma` language identifier for schema syntax.**

This is Prisma schema syntax, not TypeScript. Using the correct language identifier ensures proper syntax highlighting.



<details>
<summary>Suggested fix</summary>

```diff
-```typescript
+```prisma
 generator client {
   provider        = "prisma-client-js"
   previewFeatures = ["queryCompiler", "driverAdapters"]
   output          = "../generated/prisma"
 }
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-05-01.mdx around lines 46 - 52, The code
block showing the Prisma schema uses the wrong fenced-code language identifier
("typescript"); update the fenced block language to "prisma" so the generator
client { ... } block (the Prisma schema snippet including generator client,
provider, previewFeatures, output) uses prisma instead of typescript to
enable correct syntax highlighting.


</details>

</blockquote></details>
<details>
<summary>apps/site/content/changelog/2025-09-10.mdx (2)</summary><blockquote>

`91-97`: **Same issue: use `prisma` language identifier for schema syntax.**

This code block also shows Prisma schema syntax but uses `typescript` as the language identifier.



<details>
<summary>Suggested fix</summary>

```diff
-```typescript
+```prisma
 generator client {
   provider   = "prisma-client"
   output     = "../src/generated/prisma"
   engineType = "client"
 }
 ```
```
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-09-10.mdx around lines 91 - 97, The code
block currently labeled with the wrong language identifier ("typescript") should
be changed to use the Prisma syntax highlighter by replacing the block's
language tag with "prisma" for the schema snippet containing the generator block
(generator client { provider, output, engineType }); update the opening
triple-backtick fence so the block starts with ```prisma instead of

configuration.

44-57: Code block language identifier should be prisma or text, not typescript.

The generator configuration is Prisma schema syntax, not TypeScript. Using typescript as the language identifier may cause incorrect syntax highlighting and could confuse readers.

Suggested fix
-```typescript
+```prisma
 generator client {
   // Required
   provider = "prisma-client"
   output   = "../src/generated/prisma"

   // Optional
   engineType             = "client"
   runtime                = "nodejs"
   moduleFormat           = "esm"
   generatedFileExtension = "ts"
   importFileExtension    = "ts"
 }
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-09-10.mdx around lines 44 - 57, The fenced
code block containing the Prisma generator configuration (the block starting
with "generator client {") is marked as "typescript"; change the block's
language identifier to "prisma" (or "text") so the schema snippet is highlighted
correctly and not treated as TypeScript—update the opening fence from
typescript to prisma (or ```text) and leave the block contents (generator
client, provider, output, engineType, runtime, moduleFormat,
generatedFileExtension, importFileExtension) unchanged.


</details>

</blockquote></details>
<details>
<summary>apps/site/src/lib/changelog-source.tsx (1)</summary><blockquote>

`12-19`: **Consider adding defensive handling for invalid dates.**

If `left.data.date` or `right.data.date` is missing or malformed, `new Date(String(...)).getTime()` returns `NaN`, which can produce unpredictable sort results. Since this is content you control, it's likely fine, but a fallback would make this more robust.



<details>
<summary>Optional defensive approach</summary>

```diff
 export function getSortedReleaseNotes() {
   return [...changelogSource.getPages()].sort((left, right) => {
-    const leftDate = new Date(String(left.data.date)).getTime();
-    const rightDate = new Date(String(right.data.date)).getTime();
+    const leftDate = new Date(String(left.data.date)).getTime() || 0;
+    const rightDate = new Date(String(right.data.date)).getTime() || 0;

     return rightDate - leftDate;
   });
 }
```
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

```
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/lib/changelog-source.tsx` around lines 12 - 19, The sort in
getSortedReleaseNotes currently converts left.data.date and right.data.date to
timestamps but doesn’t guard against missing/malformed values; update
getSortedReleaseNotes to parse each date (e.g., Date.parse or new
Date(...).getTime()), check for NaN, and substitute a safe fallback timestamp
(such as 0 or Number.NEGATIVE_INFINITY) when left.data.date or right.data.date
is invalid so sorting remains deterministic; reference the variables
left.data.date and right.data.date and the function getSortedReleaseNotes when
making the change.
```

</details>

</blockquote></details>
<details>
<summary>apps/site/content/changelog/2025-05-19.mdx (1)</summary><blockquote>

`33-38`: **Code block language identifier should be `prisma` instead of `typescript`.**

The content inside these code blocks is Prisma schema DSL, not TypeScript. Using the correct language identifier improves syntax highlighting and reader comprehension.



<details>
<summary>Suggested fix</summary>

```diff
-```typescript
+```prisma
 datasource db {
   provider = "postgresql"  
   url      = "prisma+postgres://localhost:51213/?api_key=ey..."
 }
```

</details>

The same applies to the generator block at lines 46-52.

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-05-19.mdx around lines 33 - 38, Replace the
incorrect fenced-code block language label "typescript" with "prisma" for the
Prisma schema DSL blocks (the block containing "datasource db { provider =
"postgresql" ... }" and the generator block with "generator client { ... }")
so the blocks use ```prisma for proper syntax highlighting; locate the two
fenced blocks that wrap the datasource and generator definitions and update
their opening fence labels accordingly.


</details>

</blockquote></details>
<details>
<summary>apps/site/content/changelog/2025-07-30.mdx (1)</summary><blockquote>

`57-79`: **Code block language identifier should be `prisma` instead of `css`.**

This block contains Prisma schema DSL syntax. Using `css` as the language identifier will produce incorrect syntax highlighting. The `prisma` identifier is appropriate here.



<details>
<summary>Suggested fix</summary>

```diff
-```css
+```prisma
 datasource db {
   provider = "postgresql"
   url      = env("DATABASE_URL")
   schemas  = ["base", "shop"]
 }
```

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-07-30.mdx around lines 57 - 79, The fenced
code block currently uses the wrong language identifier "css"; change the
opening triple-backtick line to use "prisma" so the Prisma schema DSL (the
datasource db block and the model User and model Order declarations) get proper
syntax highlighting — i.e., replace css with prisma for the block
containing datasource db, model User, and model Order.


</details>

</blockquote></details>
<details>
<summary>apps/site/src/app/changelog/[...slug]/page.tsx (2)</summary><blockquote>

`97-103`: **Consider removing or documenting commented-out code.**

These commented sections for `BlogShare` and `FooterNewsletterForm` appear to be placeholder features. If they're planned for future implementation, consider adding a TODO comment explaining the intent. If they're not needed, removing them keeps the codebase clean.

<details>
<summary>🤖 Prompt for AI Agents</summary>

```
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/app/changelog/`[...slug]/page.tsx around lines 97 - 103, Remove
or document the commented-out BlogShare and FooterNewsletterForm blocks: either
delete the commented JSX if unused, or replace each comment with a concise TODO
that explains why it’s commented out, the intended future behavior (e.g.,
BlogShare expects prop desc and FooterNewsletterForm expects newsletterApiUrl),
and a tracking reference (issue/PR ID or owner) so future devs know when/how to
re-enable; update the surrounding component (page.tsx) to ensure no stale props
(desc, newsletterApiUrl) remain referenced if you remove the code.
```

</details>

---

`62-62`: **Redundant Date conversion.**

If `page.data.date` is already an ISO date string (which it appears to be from the MDX frontmatter like `"2025-08-13"`), converting it to a `Date` and back to `toISOString()` is redundant and potentially alters the format. Consider passing the date string directly to `formatDate` if it accepts string input.



<details>
<summary>Suggested simplification</summary>

```diff
-                  {formatDate(new Date(page.data.date).toISOString())}
+                  {formatDate(page.data.date)}
```

This assumes `formatDate` can handle the date string format from frontmatter. If it specifically requires ISO format, the current code is fine.

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

```
Verify each finding against the current code and only fix it if needed.

In `@apps/site/src/app/changelog/`[...slug]/page.tsx at line 62, The date is being
redundantly converted with new Date(...).toISOString() before formatting; update
the usage of formatDate to pass page.data.date directly (replace formatDate(new
Date(page.data.date).toISOString()) with a direct call using page.data.date) so
long as formatDate accepts the frontmatter date string, referencing the
formatDate function and the page.data.date value in the component.
```

</details>

</blockquote></details>
<details>
<summary>apps/site/content/changelog/2025-06-17.mdx (1)</summary><blockquote>

`53-67`: **Code block language identifier should be `prisma` instead of `typescript`.**

This block contains Prisma schema DSL syntax, not TypeScript. Using `prisma` as the language identifier will provide accurate syntax highlighting.



<details>
<summary>Suggested fix</summary>

```diff
-```typescript
+```prisma
 // Single-column shard key
 model User {
   id     String `@default`(uuid())
   region String `@shardKey`
 }
```

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-06-17.mdx around lines 53 - 67, The fenced
code block uses the wrong language identifier ("typescript"); change the opening
triple-backtick language tag to "prisma" so the Prisma schema DSL (the model
definitions for User and Customer and the @@shardKey/@shardKey attributes) gets
correct syntax highlighting—locate the block containing "model User" and "model
Customer" and replace typescript with prisma.


</details>

</blockquote></details>
<details>
<summary>apps/site/content/changelog/2025-12-03.mdx (1)</summary><blockquote>

`31-39`: **Use `shell` or `bash` instead of `npm` for code block language identifier.**

The `npm` identifier isn't a standard syntax highlighter. Using `shell` or `bash` will provide proper highlighting for command-line instructions.



<details>
<summary>Suggested fix</summary>

```diff
-```npm
+```shell
 npm install `@prisma/extension-read-replicas`@latest
 ```

 For folks still on Prisma v6, install version `0.4.1`:

-```npm
+```shell
 npm install `@prisma/extension-read-replicas`@0.4.1
 ```
```

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @apps/site/content/changelog/2025-12-03.mdx around lines 31 - 39, Replace the
nonstandard code-fence language identifier "npm" with a proper shell highlighter
(e.g., "shell" or "bash") in the changelog entry so the command lines highlight
correctly; specifically update the opening fences for the two blocks that
currently read npm to shell (keeping the same fenced block content and
closing ``` unchanged) in the file apps/site/content/changelog/2025-12-03.mdx.


</details>

</blockquote></details>

</blockquote></details>

<details>
<summary>🤖 Prompt for all review comments with AI agents</summary>

Verify each finding against the current code and only fix it if needed.

Inline comments:
In @apps/site/content/changelog/2025-01-09.mdx:

  • Line 29: Replace the insecure http link in the markdown text by updating the
    URL "http://kapa.ai" to use HTTPS ("https://kapa.ai") so the external link in
    the sentence mentioning kapa.ai is served over TLS; locate the inline link text
    that currently reads kapa.ai and change it to
    kapa.ai.

In @apps/site/content/changelog/2025-06-05.mdx:

  • Line 22: Fix the typo in the changelog sentence that currently reads "there
    are no more know major issues" by changing "know" to "known" in the paragraph
    that mentions adding the queryCompiler and driverAdapters preview feature
    flags to your generator; update the single word so the sentence reads "there
    are no more known major issues."

In @apps/site/content/changelog/2025-07-02.mdx:

  • Line 92: In the sentence that begins "It unveils how we modernized the 25 year
    old PostgreSQL protocol..." update the compound modifier "25 year old" to the
    hyphenated form "25-year-old" so it reads "25-year-old PostgreSQL protocol";
    locate this exact phrase in the article text and apply the hyphenation to the
    compound modifier.
  • Line 72: Replace the awkward transition sentence "This changes in this
    release:" with a tighter phrasing—either "This changes with this release:" or
    "In this release, this changes:"—so the line that currently reads "This changes
    in this release: You can now also stop local Prisma Postgres instances and
    remove them from your file system via the Prisma CLI:" becomes one of the
    suggested variants while preserving the rest of the sentence about stopping and
    removing local Prisma Postgres instances.

In @apps/site/content/changelog/2025-07-30.mdx:

  • Line 36: Change the sentence "Here’s an example Prisma Config file that
    specified custom locations for various project assets in and a seed script
    inside a db directory:" to present tense and remove the stray word "in" so it
    reads "Here’s an example Prisma Config file that specifies custom locations for
    various project assets and a seed script inside a db directory:"; update the
    text in the changelog entry so "specified" -> "specifies" and delete the extra
    "in".

In @apps/site/content/changelog/2025-11-05.mdx:

  • Line 32: Replace the unclear phrase "confirm that connection" in the sentence
    about appending pool=true with clearer wording—e.g., change it to "configure
    that connection" (or "use that connection") so the instruction reads: "Now, you
    can configure that connection to support connection pooling by appending the
    query parameter pool=true to the connection string." Ensure the updated
    sentence keeps the pool=true mention intact.

In @apps/site/content/changelog/2025-11-19.mdx:

  • Line 39: The Markdown line "**Generated Client and types move out of
    **node_modules" has an unclosed/incorrect bold marker; update the line so the
    bold formatting correctly surrounds the intended phrase and the inline code
    remains wrapped in backticks (e.g., place the closing ** after the phrase and
    ensure node_modules stays as inline code) so the Markdown renders correctly;
    locate and edit the line containing "Generated Client and types move out of" in
    the changelog entry to correct the bold and code markers.

In @apps/site/content/changelog/2026-01-21.mdx:

  • Line 39: Fix the missing space in the sentence that currently reads "(2^53 -
    1).This happens"—in the changelog paragraph mentioning relationJoins, BigInt,
    and JSON.parse replace that fragment with "(2^53 - 1). This happens" so there is
    a space after the period following the parenthetical.
  • Line 47: Fix the missing space after the period in the sentence that follows
    the ::numeric example inside the JSONB_BUILD_OBJECT explanation: change
    "::numeric.This ensures" to "::numeric. This ensures" (also scan for any
    similar missing-space occurrences around ::text, JSONB_BUILD_OBJECT, or
    BigInt mentions and add the missing space after periods).

Nitpick comments:
In @apps/site/content/changelog/2025-05-01.mdx:

  • Around line 46-52: The code block showing the Prisma schema uses the wrong
    fenced-code language identifier ("typescript"); update the fenced block language
    to "prisma" so the generator client { ... } block (the Prisma schema snippet
    including generator client, provider, previewFeatures, output) uses prisma instead of typescript to enable correct syntax highlighting.

In @apps/site/content/changelog/2025-05-19.mdx:

  • Around line 33-38: Replace the incorrect fenced-code block language label
    "typescript" with "prisma" for the Prisma schema DSL blocks (the block
    containing "datasource db { provider = "postgresql" ... }" and the generator
    block with "generator client { ... }") so the blocks use ```prisma for proper
    syntax highlighting; locate the two fenced blocks that wrap the datasource and
    generator definitions and update their opening fence labels accordingly.

In @apps/site/content/changelog/2025-06-05.mdx:

  • Around line 24-30: Update the fenced code block language tag from "typescript"
    to "prisma" for the Prisma schema snippet containing the generator block (the
    block starting with "generator client { ... }") so the snippet uses the correct
    prisma syntax highlighting; simply change the opening triple-backtick language
    identifier to prisma.

In @apps/site/content/changelog/2025-06-17.mdx:

  • Around line 53-67: The fenced code block uses the wrong language identifier
    ("typescript"); change the opening triple-backtick language tag to "prisma" so
    the Prisma schema DSL (the model definitions for User and Customer and the
    @@shardKey/@shardKey attributes) gets correct syntax highlighting—locate the
    block containing "model User" and "model Customer" and replace typescript with prisma.

In @apps/site/content/changelog/2025-07-30.mdx:

  • Around line 57-79: The fenced code block currently uses the wrong language
    identifier "css"; change the opening triple-backtick line to use "prisma" so the
    Prisma schema DSL (the datasource db block and the model User and model Order
    declarations) get proper syntax highlighting — i.e., replace ```css with
In `@apps/site/content/changelog/2025-09-10.mdx`:
- Around line 91-97: The code block currently labeled with the wrong language
identifier ("typescript") should be changed to use the Prisma syntax highlighter
by replacing the block's language tag with "prisma" for the schema snippet
containing the generator block (generator client { provider, output, engineType
}); update the opening triple-backtick fence so the block starts with ```prisma
instead of ```typescript to ensure correct highlighting for the generator client
configuration.
- Around line 44-57: The fenced code block containing the Prisma generator
configuration (the block starting with "generator client {") is marked as
"typescript"; change the block's language identifier to "prisma" (or "text") so
the schema snippet is highlighted correctly and not treated as TypeScript—update
the opening fence from ```typescript to ```prisma (or ```text) and leave the
block contents (generator client, provider, output, engineType, runtime,
moduleFormat, generatedFileExtension, importFileExtension) unchanged.

In `@apps/site/content/changelog/2025-12-03.mdx`:
- Around line 31-39: Replace the nonstandard code-fence language identifier
"npm" with a proper shell highlighter (e.g., "shell" or "bash") in the changelog
entry so the command lines highlight correctly; specifically update the opening
fences for the two blocks that currently read ```npm to ```shell (keeping the
same fenced block content and closing ``` unchanged) in the file
apps/site/content/changelog/2025-12-03.mdx.

In `@apps/site/src/app/changelog/`[...slug]/page.tsx:
- Around line 97-103: Remove or document the commented-out BlogShare and
FooterNewsletterForm blocks: either delete the commented JSX if unused, or
replace each comment with a concise TODO that explains why it’s commented out,
the intended future behavior (e.g., BlogShare expects prop desc and
FooterNewsletterForm expects newsletterApiUrl), and a tracking reference
(issue/PR ID or owner) so future devs know when/how to re-enable; update the
surrounding component (page.tsx) to ensure no stale props (desc,
newsletterApiUrl) remain referenced if you remove the code.
- Line 62: The date is being redundantly converted with new
Date(...).toISOString() before formatting; update the usage of formatDate to
pass page.data.date directly (replace formatDate(new
Date(page.data.date).toISOString()) with a direct call using page.data.date) so
long as formatDate accepts the frontmatter date string, referencing the
formatDate function and the page.data.date value in the component.

In `@apps/site/src/lib/changelog-source.tsx`:
- Around line 12-19: The sort in getSortedReleaseNotes currently converts
left.data.date and right.data.date to timestamps but doesn’t guard against
missing/malformed values; update getSortedReleaseNotes to parse each date (e.g.,
Date.parse or new Date(...).getTime()), check for NaN, and substitute a safe
fallback timestamp (such as 0 or Number.NEGATIVE_INFINITY) when left.data.date
or right.data.date is invalid so sorting remains deterministic; reference the
variables left.data.date and right.data.date and the function
getSortedReleaseNotes when making the change.
🪄 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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 27e8e6fc-c7f1-44b0-bc61-c1199a4c09f1

📥 Commits

Reviewing files that changed from the base of the PR and between 8355731 and fbfd2f1.

📒 Files selected for processing (33)
  • apps/site/content/changelog/2024-03-13.mdx
  • apps/site/content/changelog/2024-04-25.mdx
  • apps/site/content/changelog/2024-08-08.mdx
  • apps/site/content/changelog/2024-08-29.mdx
  • apps/site/content/changelog/2024-09-26.mdx
  • apps/site/content/changelog/2024-10-17.mdx
  • apps/site/content/changelog/2024-11-28.mdx
  • apps/site/content/changelog/2025-01-09.mdx
  • apps/site/content/changelog/2025-01-30.mdx
  • apps/site/content/changelog/2025-03-13.mdx
  • apps/site/content/changelog/2025-04-10.mdx
  • apps/site/content/changelog/2025-05-01.mdx
  • apps/site/content/changelog/2025-05-19.mdx
  • apps/site/content/changelog/2025-06-05.mdx
  • apps/site/content/changelog/2025-06-17.mdx
  • apps/site/content/changelog/2025-07-02.mdx
  • apps/site/content/changelog/2025-07-30.mdx
  • apps/site/content/changelog/2025-08-13.mdx
  • apps/site/content/changelog/2025-08-27.mdx
  • apps/site/content/changelog/2025-09-10.mdx
  • apps/site/content/changelog/2025-10-08.mdx
  • apps/site/content/changelog/2025-10-22.mdx
  • apps/site/content/changelog/2025-11-05.mdx
  • apps/site/content/changelog/2025-11-19.mdx
  • apps/site/content/changelog/2025-12-03.mdx
  • apps/site/content/changelog/2025-12-17.mdx
  • apps/site/content/changelog/2026-01-21.mdx
  • apps/site/src/app/changelog/[...slug]/page.tsx
  • apps/site/src/app/changelog/page.tsx
  • apps/site/src/app/global.css
  • apps/site/src/lib/changelog-source.tsx
  • apps/site/src/lib/sitemap.ts
  • apps/site/src/mdx-components.tsx
✅ Files skipped from review due to trivial changes (7)
  • apps/site/content/changelog/2024-08-29.mdx
  • apps/site/content/changelog/2025-04-10.mdx
  • apps/site/content/changelog/2025-10-22.mdx
  • apps/site/content/changelog/2025-08-27.mdx
  • apps/site/content/changelog/2025-12-17.mdx
  • apps/site/content/changelog/2024-09-26.mdx
  • apps/site/src/app/global.css
🚧 Files skipped from review as they are similar to previous changes (3)
  • apps/site/src/mdx-components.tsx
  • apps/site/src/app/changelog/page.tsx
  • apps/site/src/lib/sitemap.ts

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