From 74242ba5888ef9ed7c4e83d9e73299a0da93eec5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samy=20Pess=C3=A9?= Date: Fri, 29 Aug 2025 17:52:51 +0200 Subject: [PATCH 1/4] Rename to demo --- .../[siteData]/~gitbook/embed/{assistant-demo => demo}/route.ts | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/{assistant-demo => demo}/route.ts (100%) diff --git a/packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/assistant-demo/route.ts b/packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/demo/route.ts similarity index 100% rename from packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/assistant-demo/route.ts rename to packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/demo/route.ts From 5fedcd774d95d430cad222d973dd40aa8d989a7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samy=20Pess=C3=A9?= Date: Fri, 29 Aug 2025 17:57:31 +0200 Subject: [PATCH 2/4] Improve caching of script --- .../[siteData]/~gitbook/embed/script.js/route.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/script.js/route.ts b/packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/script.js/route.ts index ede1c1b9e6..be51d24e10 100644 --- a/packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/script.js/route.ts +++ b/packages/gitbook/src/app/sites/static/[mode]/[siteURL]/[siteData]/~gitbook/embed/script.js/route.ts @@ -1,5 +1,6 @@ import type { RouteLayoutParams } from '@/app/utils'; import { getAssetURL } from '@/lib/assets'; +import { buildVersion } from '@/lib/build'; import { getEmbeddableStaticContext } from '@/lib/embeddable'; import type { CreateGitBookOptions } from '@gitbook/embed'; import type { NextRequest } from 'next/server'; @@ -14,7 +15,6 @@ export async function GET( { params }: { params: Promise } ) { const { context } = await getEmbeddableStaticContext(await params); - const maxAge = 7 * 24 * 60 * 60; const initOptions: CreateGitBookOptions = { siteURL: context.linker.toAbsoluteURL(context.linker.toPathInSite('')), }; @@ -45,13 +45,13 @@ export async function GET( const load = function () { const style = document.createElement('link'); style.rel = 'stylesheet'; - style.href = ${JSON.stringify(getAssetURL('embed/index.css'))}; + style.href = ${JSON.stringify(getAssetURL(`embed/index.css?v=${buildVersion()}`))}; document.head.appendChild(style); const script = d.createElement('script'); script.type = 'text/javascript'; script.async = true; - script.src = ${JSON.stringify(getAssetURL('embed/index.js'))}; + script.src = ${JSON.stringify(getAssetURL(`embed/index.js?v=${buildVersion()}`))}; var latestScript = d.getElementsByTagName('script')[0]; latestScript.parentNode.insertBefore(script, latestScript); @@ -70,7 +70,7 @@ export async function GET( { headers: { 'Content-Type': 'application/javascript', - 'Cache-Control': `public, max-age=${maxAge}, immutable`, + 'Cache-Control': 'public, max-age=86400, stale-while-revalidate=604800', }, } ); From afaa97c748d4b48dc9a89101af5b563e0542e0d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samy=20Pess=C3=A9?= Date: Fri, 29 Aug 2025 17:58:14 +0200 Subject: [PATCH 3/4] Changeset --- .changeset/nervous-rivers-destroy.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/nervous-rivers-destroy.md diff --git a/.changeset/nervous-rivers-destroy.md b/.changeset/nervous-rivers-destroy.md new file mode 100644 index 0000000000..c5188363a7 --- /dev/null +++ b/.changeset/nervous-rivers-destroy.md @@ -0,0 +1,5 @@ +--- +"gitbook": patch +--- + +Fix embed script and assets being cached for too long From 73586229f9efb4b35771ca206685a16389470f29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samy=20Pess=C3=A9?= Date: Fri, 29 Aug 2025 17:58:49 +0200 Subject: [PATCH 4/4] Finish rename demo --- packages/gitbook/src/middleware.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/gitbook/src/middleware.ts b/packages/gitbook/src/middleware.ts index 68adeb813d..6c0acebbb7 100644 --- a/packages/gitbook/src/middleware.ts +++ b/packages/gitbook/src/middleware.ts @@ -552,7 +552,7 @@ function encodePathInSiteContent(rawPathname: string): { case 'sitemap-pages.xml': case 'robots.txt': case '~gitbook/embed/script.js': - case '~gitbook/embed/assistant-demo': + case '~gitbook/embed/demo': // LLMs.txt, sitemap, sitemap-pages and robots.txt are always static // as they only depend on the site structure / pages. return { pathname, routeType: 'static' };