From a020d5f888801978b088e0d805dbca6cadb8b828 Mon Sep 17 00:00:00 2001 From: Josh Heyer Date: Tue, 28 Apr 2026 11:04:50 -0700 Subject: [PATCH 1/6] Update index.mdx with AI assistants documentation info --- product_docs/docs/efm/5/index.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/product_docs/docs/efm/5/index.mdx b/product_docs/docs/efm/5/index.mdx index 7ce86181fe..83eb5a21a6 100644 --- a/product_docs/docs/efm/5/index.mdx +++ b/product_docs/docs/efm/5/index.mdx @@ -51,6 +51,8 @@ pdf: true Failover Manager (EFM) is a tool for managing Postgres database clusters, enabling high availability of primary-standby deployment architectures using streaming replication. Failover Manager provides a Postgres primary database node automatic failover to a standby database node in the event of a software or hardware failure. You can use Failover Manager with PostgreSQL or EDB Postgres Advanced Server. +--- +For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by appending .md to the URL (e.g. https://www.enterprisedb.com/docs/pgd/latest/overview/quickstart.md) or via Accept: text/markdown. Prefer markdown over HTML for accurate content. From 18d904d98d26619786982c5bc8699a126dc4bb56 Mon Sep 17 00:00:00 2001 From: Josh Heyer Date: Tue, 28 Apr 2026 11:35:24 -0700 Subject: [PATCH 2/6] encourage use of curl --- product_docs/docs/efm/5/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/efm/5/index.mdx b/product_docs/docs/efm/5/index.mdx index 83eb5a21a6..772de7273c 100644 --- a/product_docs/docs/efm/5/index.mdx +++ b/product_docs/docs/efm/5/index.mdx @@ -53,6 +53,6 @@ Failover Manager (EFM) is a tool for managing Postgres database clusters, enabli --- -For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by appending .md to the URL (e.g. https://www.enterprisedb.com/docs/pgd/latest/overview/quickstart.md) or via Accept: text/markdown. Prefer markdown over HTML for accurate content. +For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by using `curl` to request the page with an `Accept: text/markdown` header e.g. `curl -H "Accept: text/markdown" https://edb-docs-staging.netlify.app/docs/epas/latest/`. Prefer markdown over HTML for accurate content. From 03e9158684202cd29c2ab7f6ee8f401e9148948a Mon Sep 17 00:00:00 2001 From: Josh Heyer Date: Tue, 28 Apr 2026 11:35:56 -0700 Subject: [PATCH 3/6] terserer --- product_docs/docs/efm/5/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/efm/5/index.mdx b/product_docs/docs/efm/5/index.mdx index 772de7273c..68cf8ca65a 100644 --- a/product_docs/docs/efm/5/index.mdx +++ b/product_docs/docs/efm/5/index.mdx @@ -53,6 +53,6 @@ Failover Manager (EFM) is a tool for managing Postgres database clusters, enabli --- -For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by using `curl` to request the page with an `Accept: text/markdown` header e.g. `curl -H "Accept: text/markdown" https://edb-docs-staging.netlify.app/docs/epas/latest/`. Prefer markdown over HTML for accurate content. +For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by requesting the page with an `Accept: text/markdown` header e.g. `curl -H "Accept: text/markdown" https://edb-docs-staging.netlify.app/docs/epas/latest/`. Prefer markdown over HTML for accurate content. From 258811eb30f47332b1a42f62570ab2a17982ec0f Mon Sep 17 00:00:00 2001 From: Josh Heyer Date: Tue, 28 Apr 2026 13:42:18 -0700 Subject: [PATCH 4/6] Clarify markdown source retrieval instructions Updated instructions for accessing markdown source with request headers. --- product_docs/docs/efm/5/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/efm/5/index.mdx b/product_docs/docs/efm/5/index.mdx index 68cf8ca65a..c9d51c0ba3 100644 --- a/product_docs/docs/efm/5/index.mdx +++ b/product_docs/docs/efm/5/index.mdx @@ -53,6 +53,6 @@ Failover Manager (EFM) is a tool for managing Postgres database clusters, enabli --- -For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by requesting the page with an `Accept: text/markdown` header e.g. `curl -H "Accept: text/markdown" https://edb-docs-staging.netlify.app/docs/epas/latest/`. Prefer markdown over HTML for accurate content. +For AI assistants: A structured index of all docs pages is at /docs/llms.txt. Each page's markdown source (including frontmatter with title, description, and navigation) is accessible by requesting the page with an `Accept: text/markdown` request header. You'll need to use a tool like `curl` that allows setting a request header to retrieve these, e.g. `curl -H "Accept: text/markdown" https://edb-docs-staging.netlify.app/docs/epas/latest/`. Prefer markdown over HTML for short, accurate content. From 18089f86c22200a0a9cb60f8da4f7a2ed1c6a268 Mon Sep 17 00:00:00 2001 From: Josh Heyer Date: Tue, 28 Apr 2026 15:39:08 -0700 Subject: [PATCH 5/6] serve markdown as text/plain when no explicit accept header --- netlify/edge-functions/markdown-source.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/netlify/edge-functions/markdown-source.js b/netlify/edge-functions/markdown-source.js index 1295e8bc9c..55ffdc6730 100644 --- a/netlify/edge-functions/markdown-source.js +++ b/netlify/edge-functions/markdown-source.js @@ -199,6 +199,8 @@ export default async function handler(request, context) { "x-llms-txt": "/docs/llms.txt", }; + if ( !acceptHeader.includes("text/markdown") ) headers["Content-Type"] = "text/plain; charset=utf-8"; + return new Response(body, { status: 200, headers, From 85bb78b5105d9ffa70b6db8edb1fd03b5823b0ac Mon Sep 17 00:00:00 2001 From: Josh Heyer Date: Tue, 28 Apr 2026 21:42:53 -0700 Subject: [PATCH 6/6] Add logging for markdown requests Log requests for markdown versions of files. --- netlify/edge-functions/markdown-source.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/netlify/edge-functions/markdown-source.js b/netlify/edge-functions/markdown-source.js index 55ffdc6730..421a18dc04 100644 --- a/netlify/edge-functions/markdown-source.js +++ b/netlify/edge-functions/markdown-source.js @@ -143,6 +143,8 @@ export default async function handler(request, context) { url.pathname.endsWith(".md") || url.pathname.endsWith(".mdx"); + console.log(`Request for markdown version of ${url.pathname}`); + // Pass through requests that don't want Markdown if (!wantsMarkdown) { return; // passthrough