mirror second-pass close-out: retention diagram precision, evidence taxonomy, sourced Talos reboot claim, qualified failure matrix, Hub pull terminology, referrer completeness split, storage semantics, secret-rotation truth, table captions + scope + keyboard regions, all-lazy plates, en-AU, editorial reduction, extended gates

This commit is contained in:
2026-08-25 08:52:35 +10:00
parent 7f7035b98f
commit d443f9ad6b
6 changed files with 312 additions and 340 deletions
+16 -5
View File
@@ -141,7 +141,7 @@ const OG_IMG = SITE + heroUrls["__HERO_GITOPS__"];
// shared document shell: every page on the site gets the same head discipline
const shell = ({ title, desc, path, ogImg, scripts, bodyHtml }) => `<!doctype html>
<html lang="en">
<html lang="en-AU">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
@@ -178,7 +178,7 @@ const html = shell({
});
// ---- The Mirror (chapter 02): fingerprint its plates + its app script -------
const MIRROR_DESC = "A pull-through container registry taken apart: why a lab runs its own mirror, the chicken-and-egg loops inside it, and the scars that taught each rule.";
const MIRROR_DESC = "How a zot pull-through registry behaves under Talos and containerd: upstream routing, digest preservation, garbage collection, authentication rollout, failure modes, and the lab evidence behind each decision.";
let mirror = readFileSync(join(ROOT, "pilot/mirror.tpl.html"), "utf8");
const mirrorPlates = {};
for (const n of ["20", "21", "22", "23", "24", "25"]) {
@@ -186,10 +186,10 @@ for (const n of ["20", "21", "22", "23", "24", "25"]) {
mirrorPlates[n] = url;
const dims = jpegSize(buf);
if (!dims) throw new Error(`mirror plate ${n}: JPEG dimensions unreadable`);
// plate 20 is the page's first image (near the fold) -> eager/LCP; the rest lazy.
const load = n === "20" ? "eager" : "lazy";
// every plate sits below the fold (fact panel + contents precede the first scene),
// so all six lazy-load; intrinsic dims come from the actual bytes.
mirror = mirror.replace(`__M${n}__`,
`${url}" width="${dims.w}" height="${dims.h}" decoding="async" loading="${load}`);
`${url}" width="${dims.w}" height="${dims.h}" decoding="async" loading="lazy`);
}
const mirrorJs = readFileSync(join(ROOT, "pilot/mirror.js"));
const mirrorJsName = `mirror.${fp(mirrorJs)}.js`;
@@ -240,6 +240,11 @@ for (const [pg, doc] of [["cluster", html], ["mirror", mirrorHtml], ["index", di
// target the assertive phrasings and internal production jargon, not the topic words.
const mirrorBanned = [
[/never leaves the building/i, "retired absolute cache claim"],
[/SAY IT/, "removed rhetorical block resurfaced"],
[/HOMELAB CLAUSE/, "removed label resurfaced"],
[/Nothing on v2\.1\.17\/18 protects/, "over-broad retention annotation resurfaced"],
[/100 manifest requests per six hours/, "imprecise Hub limit phrasing"],
[/a tag is a suggestion, a digest is a fact/i, "retired slogan"],
[/up to twelve|twelve tries|12 attempts/i, "stale retry arithmetic (correct figure: sixteen)"],
[/plate-level/i, "internal production note leaked to readers"],
[/&middot; motion:/i, "art-direction caption leaked to readers"],
@@ -249,6 +254,9 @@ const mirrorBanned = [
for (const [re, msg] of mirrorBanned) if (re.test(mirrorHtml)) fail.push("mirror: " + msg);
const mirrorRequired = [
["zotregistry.dev", "primary zot references missing"],
["docs.docker.com/docker-hub/usage/pulls", "Docker Hub pulls reference missing"],
["v1alpha1", "Talos auth-reboot source link missing"],
["deleteUntagged", "blanket untagged lever discussion missing"],
["keepUntagged", "version-gated retention discussion missing"],
["/livez", "real health endpoints missing"],
['id="refs"', "references section missing"],
@@ -257,6 +265,9 @@ const mirrorRequired = [
];
for (const [needle, msg] of mirrorRequired) if (!mirrorHtml.includes(needle)) fail.push("mirror: " + msg);
must((mirrorHtml.match(/width="1600" height="872"/g) || []).length === 6, "mirror: expected six correctly-dimensioned plates");
must((mirrorHtml.match(/loading="lazy"/g) || []).length === 6, "mirror: expected all six plates lazy-loaded");
must((mirrorHtml.match(/<caption/g) || []).length === 5, "mirror: expected five table captions");
must(!/<th>(?!<)/.test(mirrorHtml.replace(/<th scope="col">/g, "")), "mirror: th without scope=col");
must(!/100vw/.test(mirrorHtml), "mirror: viewport-width unit reintroduces scrollbar overflow");
must(!mirrorHtml.includes("gsap"), "mirror: unexpected animation library reference");