Add 14 Jul 2026 meeting minutes and re-structure site pages into a clean hierarchy
Restructure pages into nested collapsible folders (+ 14 Jul minutes)
Summary
Reorganises the flat page list into nested section folders so the left sidebar becomes a set of collapsible groups instead of one long flat list, adds the 14 Jul 2026 meeting minutes, and fixes a latent React console-error bug on the document pages.
Page structure
- Trade documents moved under
app/docs/<slug>/(leaf slugs unchanged, e.g./docs/commercial-invoice/). - The
z-*narrative pages moved intogovernance/,architecture/,use-cases/,business-cases/,evidence/,implementation/,register/. - Each section's overview is now the folder's own
page.mdx, so/use-cases/is the overview. - The
z-prefix andtype: 'separator'sidebar grouping are gone; top-levelapp/_meta.jslists the sections and each folder has its own_meta.js. - Folders render as collapsible groups via the
sidebarconfig (defaultMenuCollapseLevel: 1,autoCollapse) on<Layout>inapp/layout.tsx.
URLs & redirects
- Every internal page link was rewritten to the new hierarchical paths;
scripts/restructure.mjsholds the single source-of-truth old→new map. -
public/_redirects301s every old flat URL (/commercial-invoice/,/z-meetings/, …) to its new path so external and bookmarked links survive on GitLab Pages.
Bug fix
-
components/JsonSchemaViewerShadow.jsx: the nested React root now uses a fresh container div per root and defers teardown, eliminating the dev StrictMode / fast-refreshcreateRoot()/unmount()console errors seen on/docs/pages (dev-only artifact, but a genuine lifecycle bug).
Content & docs
- Added the 14 Jul 2026 meeting minutes to
app/governance/meetings/. - Updated
CLAUDE.mdfor the newapp/docs/<slug>/page.mdxpage-location convention.
Verification
-
npm run buildpasses; all new routes generate and no old routes remain. - Built HTML and source contain no dangling links to old slugs.
- Manually verified every section in the dev server, including the
/docs/schema rendering with the console error resolved.