← חזרה לכל השלבים

prism-site — Stage 8 Knowledge

Closed: 2026-07-19

Pipeline: Research → Vision(P6) → Brand(P6) → [DesignSync skipped — see §3] → Spec → Architecture → Tasks → Implement → Review → Evaluation(P6) → Knowledge ✅

Live: https://prism-site-preview.pages.dev (production branch, Lighthouse 100/100/100/100)


1. What was built

PRISM's public one-pager — the factory's external surface. Glass Box aesthetic (near-black background, live governance feed rendered git-diff-style, portfolio cards with real status metadata). Zero JS shipped. Implemented as an OpenSpec change (prism-site-onepager), the first company property to go through the full OpenSpec discipline end-to-end.


2. What worked — promote to memory

OpenSpec as first-class change discipline

The proposal → spec → design → tasks → implement → archive loop produced a fully auditable paper trail. Every decision has a named artifact. The openspec archive command as the explicit change-close gate prevents the ambiguity of "was this actually done?" Promote: this is the standard for all future PRISM property changes.

JS-zero architecture for static marketing pages

A one-pager with no interactive requirements needs zero client-side JS. npm run build → Astro static output → 0 bytes JS gz → well under the 150KB budget gate. Lighthouse 100 across all four categories (locally, where there is no noindex header). Promote: for any marketing page with no interactivity, JS-zero is the default target — not 'minimal JS'.

Honesty check script

scripts/check-honesty.mjs scans built HTML for unsourced numeric/client claim patterns before deploy. Zero false positives on this build. Extractable as a shared step for any product with public-facing copy. Promote to memory/patterns/ when the second product uses it.

Governance feed sourced from live ledger

Every src/data/governance.ts entry traces verbatim to docs/prism-docs/02-GOVERNANCE/decision-ledger.md. Content stays in sync as long as the markdown files are the source of truth. The public-safe filter (English, ACCEPTED/RATIFIED, no seat/compensation detail) held through the honesty gate. Promote: real artifacts as content — not curated summaries.

Cloudflare Pages preview noindex — not a defect

--branch=preview deploys receive X-Robots-Tag: noindex automatically from CF. SEO score 58 on the live preview URL is CF's own behavior, not a source defect. Production deploy (main branch) would score 100. No workaround needed; document this in every review that runs against a preview URL.


3. What didn't work — don't repeat

DesignSync-lite silently skipped

The DesignSync (dashboard.html + mobile.html + tokens.html preview) stage was never produced. Vision and Brand P6 were approved, and implementation started the same evening. The audit (2026-07-17) caught this retroactively. Root cause: no hard gate between Brand P6 and the first implementation commit.

Corrective action (rule, now in effect): For every future product — no implementation commit without a DesignSync link in the pipeline.md. The link doesn't have to be a full Claude Design output; a Figma/HTML mockup deployed to a preview URL will suffice. The gate is the link existing, not the tool used.

P7 gate folded without a receipt

"Folded into OpenSpec change discipline" is a declaration, not a receipt. There is no named artifact that proves the P7 checklist ran. In future: the OpenSpec proposal.md should carry an explicit p7_equivalent section listing the pre-flight items, or the gate should be a named decision file.

openspec archive with unchecked items

The archive commit message claimed "11/11" but the archived tasks.md still showed 3 unchecked items. This is a honesty defect in the archive step. Future archive: run a diff between claimed completion and actual checkboxes before commit.


4. Files promoted / patterns to watch

Artifact Action
scripts/check-honesty.mjs patternMonitor — promote to memory/patterns/honesty-check-script.md when second product uses it
JS-zero architectureAlready in memory/patterns/ implicitly; explicitly name it when it diverges
DesignSync gate ruleImmediately in effect — not a future watch, a current rule
OpenSpec archive checklistAdd to openspec/CONTRIBUTING.md when that file exists

5. pipeline.md update


| Knowledge | lessons/knowledge.md | ✅ done | — | 2026-07-19 session close |