Skip to Content

v0.1.78 — 11 Jun 2026

Bug Fix — Added SUPABASE_INTERNAL_URL support for server-side Supabase connections

Who is affected: Operators running BuildPad in Docker/Kubernetes or private network topologies where app servers should reach Supabase over an internal hostname instead of the public endpoint.

What was wrong

Server-side code paths (API routes, middleware, session helpers, and auth flows) always used NEXT_PUBLIC_SUPABASE_URL, which is browser-facing and may route through a public load balancer.

What changed

SUPABASE_INTERNAL_URL is now supported as a server-only override across server-side Supabase and auth paths. When set, server code uses the internal URL; when absent, behavior falls back to NEXT_PUBLIC_SUPABASE_URL.

Before / After

ScenarioBefore this fixAfter this fix
API route / middleware Supabase target❌ Always public URL✅ Uses SUPABASE_INTERNAL_URL when configured
Browser Supabase target✅ Public URL✅ Still public URL
Self-hosted internal network optimization❌ Not possible without code changes✅ Supported via env config

Bug Fix — Docs site hard reload no longer breaks due to early widget script execution

Who is affected: Users browsing the docs site who encountered broken hard reload behavior while menu navigation still worked.

What was wrong

The feedback widget script could execute before hydration and mutate the DOM that React expected, causing hard reload instability.

What changed

The widget script loading strategy was changed from beforeInteractive to lazyOnload, so script execution happens after hydration.

Last updated on