diff --git a/api/publish.ts b/api/publish.ts index c04fd49..970f792 100644 --- a/api/publish.ts +++ b/api/publish.ts @@ -38,6 +38,25 @@ import { buildSite } from './static-site'; /** The site's content. Parents before children, so the restore satisfies its own foreign keys. */ const CONTENT_TABLES = [ + /* + The page builder's own tables, and the reason they are FIRST. + + Parents before children: a section belongs to a page and a component to a section. `galleries` sits + below them because a gallery block names a set by id — carried in JSON rather than as a foreign + key, so nothing enforces the order, which is exactly why it is written down. + + They were missing until 2026-08-31, and the symptom was the whole point of this file: publish + copied every table it knew about, the build rendered production faithfully, and the home page came + out as the empty-page placeholder because production had the seeded layout and no content. Nothing + failed. The list is explicit so that a table added later is CONSIDERED — this is what it looks like + when one is not. + */ + 'pages', + 'sections', + 'components', + // The site's colours, faces and default gutter. A singleton, and production had no row at all — + // which reads as "the defaults" and is indistinguishable from a setting nobody has changed yet. + 'site_layout', 'home_content', 'home_gallery_media', 'about_content',