Skip to content

Build Toward the Whole: PixelForge - #35

Merged
DaveHomeAssist merged 5 commits into
mainfrom
law/build-toward-the-whole
Sep 10, 2026
Merged

DaveHomeAssist merged 5 commits into
mainfrom
law/build-toward-the-whole

Conversation

@DaveHomeAssist

Copy link
Copy Markdown
Owner

Applies the Build Toward the Whole patch series.

Commits

  • Enforce ops-state.schema.json in the ops state generator and tests
  • Make the launcher to editor handoff real through a launch intent contract
  • Remove fabricated recent files from the launcher home page
  • Verify the deployed commit in the post deploy health gate
  • Align the user guide with session scoped keys and the Replicate proxy

Gate

npm test (Node 22) — 42 files, 300 passed — passing locally on this branch.

Not for merge yet.

The schema was published next to ops-state.json but nothing checked the
document against it. The generator could write any shape and a hand edit
would never be caught. Add a dependency free validator covering the schema
subset in use, make the generator refuse to write a non conforming state,
validate the committed ops-state.json in vitest, and expose ops:state and
ops:validate npm scripts so the generator is a first class command.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01656XvdqNAVojSPQBtLZAAt
…ract

The launcher wrote PixelForge.launchDraft.v1 to sessionStorage on Create In
Editor but nothing ever read it, so every preset, quick create card, and
template opened the default 1200 by 800 document. Introduce
src/launchIntent.js as the single contract: the launcher writes it, the
editor consumes it once on mount and opens the requested size. Template
cards now seed the draft with their dimensions instead of ignoring them.
Backgrounds the document model cannot fill yet are reported to the user
instead of being silently replaced.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01656XvdqNAVojSPQBtLZAAt
The production home route rendered four hardcoded project rows with fake
names, edit times, and sizes, and clicking any of them just opened the
editor. PixelForge has no recent files store, so the list now renders an
honest empty state. The row markup stays behind a recentFiles prop so a
real source of truth can feed it later without a redesign.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01656XvdqNAVojSPQBtLZAAt
The health job fetched the live page and its assets but had no way to tell
whether it was looking at the build that was just deployed or a stale one
still being served, so a failed or partial upload could pass on the strength
of the previous release. Vite now stamps index.html with the commit via a
pixelforge-build meta tag, the deploy workflow passes github.sha into both
the build and the health check, and the check fails when the served stamp
is missing or differs. Local runs without an expected stamp still work and
report the stamp as informational. The script is importable so its parsing
and enforcement are covered by vitest against a local http server.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01656XvdqNAVojSPQBtLZAAt
The guide still said keys live in local storage and never leave the
browser, and its setup steps omitted the CORS proxy that the H-1
remediation made mandatory, so a reader following it could never complete
a generation. Describe session storage, add the proxy step, and state
where each key actually travels.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01656XvdqNAVojSPQBtLZAAt
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@DaveHomeAssist
DaveHomeAssist merged commit a619ab6 into main Sep 10, 2026
1 check failed
@DaveHomeAssist
DaveHomeAssist deleted the law/build-toward-the-whole branch September 10, 2026 08:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants