site: directory landing + The Mirror (chapter 02)

The face of learn.bztmon.com is now a chapter index: 01 The Exploded Cluster
(moved to /cluster) and 02 The Mirror (/mirror), with a forming-chapter ghost
slot. The Mirror ships rev 3 of the dossier - six curated plates fingerprinted
under /assets/, its scroll engine as an external fingerprinted script (CSP
script-src self holds), diagrams as inline SVG, replay panes from real
receipts. Assembler grows a shared document shell + per-page preflight gates;
build.sh inline-script check now covers every page.
This commit is contained in:
2026-08-24 21:28:09 +10:00
parent 7fd24d0343
commit 08e80d9f9f
11 changed files with 747 additions and 37 deletions
+11 -6
View File
@@ -21,7 +21,10 @@ for f in pilot/arc.tpl.html pilot/manifest-docker.json pilot/manifest-cluster.js
assets/dist/course-II-cluster.webp assets/dist/course-00-surround.webp \
assets/dist/course-III-node.webp assets/dist/course-III-pod.webp \
assets/dist/course-IV-traffic.webp assets/dist/course-V-orbit.webp \
assets/dist/intro-establishing.webp; do
assets/dist/intro-establishing.webp \
pilot/mirror.tpl.html pilot/mirror.js pilot/index.tpl.html \
assets/mirror/20.jpg assets/mirror/21.jpg assets/mirror/22.jpg \
assets/mirror/23.jpg assets/mirror/24.jpg assets/mirror/25.jpg; do
[[ -f "$f" ]] || { printf 'missing source: %s\n' "$f" >&2; exit 1; }
done
@@ -29,11 +32,13 @@ dist="$here/dist"
rm -rf -- "$dist"
node pilot/assemble-arc.mjs "$dist"
# No inline JS may survive into the served HTML, or the CSP silently kills the page.
if grep -oiE '<script[^>]*>' -- "$dist/index.html" | grep -qivE 'src='; then
printf 'index.html contains an inline <script> — CSP script-src self would block it\n' >&2
exit 1
fi
# No inline JS may survive into ANY served HTML, or the CSP silently kills the page.
for page in "$dist"/*.html; do
if grep -oiE '<script[^>]*>' -- "$page" | grep -qivE 'src='; then
printf '%s contains an inline <script> — CSP script-src self would block it\n' "$page" >&2
exit 1
fi
done
printf 'built %s\n' "$dist"
find "$dist" -type f -printf ' %-32P %8s bytes\n' | sort