Plan 5a — examples + launch - #8
Merged
Merged
Conversation
…t Studio build + self-audit
Floor: at most 7 distinct failed gate numbers per example (>=41/48), at least three examples perfectly clean. Render-guarded like the other render tests.
… template Verbatim prompts from Hallmark's MIT test suite (site/_tests), attributed. Runner consumes pre-built candidate dirs (both skills' outputs), renders both at 5 viewports, scores both with the same engine, writes gallery verdicts. Execution is Plan 5b — protocol in test/compare/README.md.
ci.yml: pnpm frozen install, version-matched Chromium, typecheck, engine + gates, structural lint, render extension, Tier-3 example regression, and the env-guarded CLI render tests — all on every push/PR. release.yml: org convention (tag v* → gates → npm publish with NPM_TOKEN → GitHub Release), idempotent, render suites left to CI. package.json: pin playwright-core 1.62.0 + devDep playwright 1.62.0 (browser install), @types/node, scripts (typecheck/test:lint/test:render/test:examples), NOTICE ships in the npm files array. render.ts: type-only strict fixes (casts + widened pair types) — behavior unchanged, all suites green.
README: the thesis (prose gates vs executable gates), install, build/audit verbs, engine summary, the five examples with scores, the comparison story with the honesty clause, dev commands, release flow. engine/keystone.mjs: standalone CLI dispatcher (audit | check) wired as the npm bin.
- gallery template: add the #GALLERY mount the runtime script expects - release.yml: tag-guard the GitHub Release step (workflow_dispatch ref is a branch) - NOTICE: replace the /tmp license path with the upstream URL; README heading the NOTICE references now exists - brief 01: self-audit count 44 → 43 (matches the committed report); audit report notes the raw data dir is intentionally local-only - README: test count 273 → 275 (engine 162 + lint 103 + render 4 + examples 3 + CLI render 3) - run-comparison.mjs: candidate contract comment matches the scorer (style.css only) - examples.test.mjs: memoize one render per slug (5 Chromium runs, not 10) - engine/keystone.mjs: usage documents the gates alias; spawn errors surfaced - package.json: trailing EOF newline
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The launch slice. Five engine-verified example builds, the Tier-3 example regression, the comparison-harness tooling (executed in 5b), CI + release workflows, and the public-launch README. Merging flips the repo public and tags
v0.1.0.What's here
keystone-report.html, 5 viewport screenshots, and a brief.md with the full decision + vision-verdict trail.v*tag → gates → npm publish → GitHub Release.keystonebin (audit | check), NOTICE ships, playwright-core pinned 1.62.0.Verification
Post-merge launch sequence
flip public → tag
v0.1.0→ release.yml publishes → 5b executes the comparison gallery.