diff --git a/AGENTS.md b/AGENTS.md index 85885f00..f10f7ecf 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -41,6 +41,38 @@ with heavy interactivity. First-paint section markup is still templ deliberate; do not clone it to new pages, and do not "fix" the dashboard without restoring a templ-partial fade path first. +## CSP discipline (hash-allow-listed script-src) — ALWAYS apply + +script-src carries a sha256 hash, not `'unsafe-inline'` (and never +`'unsafe-eval'` — the Alpine build is `@alpinejs/csp` for exactly this +reason; keep it in lockstep with alpinejs). The browser therefore +refuses, **silently at build/test time**, two authoring patterns: + +- **No inline `