Skip to content

Commit e3fa130

Browse files
Keep lab previews out of production, fix minds SEO guard
Two deploy-hygiene fixes: - The landing-lab preview pages carry inline styles the CSP blocks and were never meant for production (they are gitignored, absent from a fresh checkout). Moved them to .lab-pages-archive/ so they no longer build into the deployed site. Restore into src/pages/lab/ to preview. - The greatest-minds positioning guard matched the singular "great mind", which appears in a genuine quote (Woolf, "the great mind is androgynous"). Tightened it to the plural collective framing so real quotes pass while the forbidden positioning is still caught.
1 parent 87f2ca0 commit e3fa130

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,10 @@ client/public/assets/
9191
# The First Exchange hero and the figure orbit were chosen and promoted into
9292
# the real pages (now tracked). The rejected hero variants, the interactive
9393
# library experiments, and the lab preview pages stay out of version control.
94-
marketing/src/pages/lab/
94+
# The lab preview pages moved to .lab-pages-archive/ so they no longer build
95+
# into production (they carry inline styles the CSP blocks); restore into
96+
# src/pages/lab/ locally to preview a variant.
97+
marketing/.lab-pages-archive/
9598
marketing/src/components/landing-lab/HeroListening.astro
9699
marketing/src/components/landing-lab/hero-listening.css
97100
marketing/src/islands/VoiceDeck.tsx

client/scripts/validate-seo.mjs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,11 @@ for (const f of files) {
6565
const inlineStyles = (html.match(/<[^>]+\sstyle="/g) || []).length;
6666
if (inlineStyles) hard.push(`${rel}: ${inlineStyles} inline style="" attribute(s) (CSP would block)`);
6767

68-
// 3. No forbidden "greatest minds" framing (locked positioning).
69-
if (/great(est)? minds?|gr(ö|oe)(ß|ss)te[nr]? (denker|geister)/i.test(dhtml))
68+
// 3. No forbidden "greatest minds" framing (locked positioning). Plural only:
69+
// the collective positioning claim is always plural ("greatest minds"). The
70+
// singular "great mind" occurs in genuine quotes (Woolf, "the great mind is
71+
// androgynous") and must not trip the guard.
72+
if (/great(est)? minds|gr(ö|oe)(ß|ss)te[nr]? (denker|geister)/i.test(dhtml))
7073
hard.push(`${rel}: forbidden "greatest minds / größten Denker" framing`);
7174

7275
// 4. Meta description: present, <=160, unique.

0 commit comments

Comments
 (0)