diff --git a/AGENTS.md b/AGENTS.md index 7dc2264..110739b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -103,6 +103,11 @@ is a second implementation of the same contract and it has drifted twice with this suite.** CI runs it inside the `image` job, which already builds the image. +Locally it sets `reuseExistingServer`, so a container left running from an +earlier run answers on `:8099` and the suite passes against the **old** `dist/`. +Before trusting a green run: `docker ps --filter "publish=8099"`, remove +anything there, rebuild, then run it. + `npm audit --omit=dev --audit-level=high` must also stay clean; it gates CI. ## Repository conventions @@ -123,8 +128,11 @@ strong reason. ### Light only The marketplace has no dark mode: no theme toggle, no persisted theme, no `dark` -class, no dark palette. `src/utils/transform.js` actively strips a sub-app's -theme bootstrap and `dark` body class. Do not reintroduce any of it. +class, no dark palette. A sub-app's own theme bootstrap is removed twice: +`scripts/hoist-inline-scripts.js` deletes it while it is still inline, and +`src/utils/transform.js` strips any that survives, along with a `dark` body +class. Do not reintroduce any of it, and keep both halves — hoisting a bootstrap +instead of deleting it puts it beyond the reach of the transform. ### Sub-app HTML is untrusted input @@ -141,6 +149,9 @@ inline script found in a sub-app artifact into one. A change that introduces an inline script fails `tests/build-integrity.spec.js` before it can start breaking pages silently in production. +The check covers `