Skip to content

fix: recover from-scratch live builds + point data persona at Prisma (#181, #182)#183

Merged
suleimansh merged 1 commit into
mainfrom
suleimansh/fix/from-scratch-live-gap
Jul 3, 2026
Merged

fix: recover from-scratch live builds + point data persona at Prisma (#181, #182)#183
suleimansh merged 1 commit into
mainfrom
suleimansh/fix/from-scratch-live-gap

Conversation

@suleimansh

Copy link
Copy Markdown
Member

Fixes the two coupled from-scratch gaps that made the first full-scope live run end at Vike’s default "Welcome" page instead of the requested app.

#181 — data persona pointed at unpublished universal-orm

The flagship data persona told the agent to build the data layer on universal-orm, but @universal-orm/core 404s on npm, so a careful agent stalled sanity-checking the stack and produced nothing.

  • universalOrmModelerdataModeler (persona name data-modeler): now defaults to Prisma with concrete install/init steps (npm i -D prisma, npx prisma init, prisma migrate dev, prisma generate), keeps the same schema-first / derived-migrations / typed-query conventions, and allows the architect to pick another published SQL ORM.
  • Architect default no longer names an unpublished package; added "only choose installable packages".
  • Swept the remaining universal-orm references out of shipped source + the --fake demo + the example apps (they keyed workers by the old persona name, so the rename would have broken them — updated + tests re-run green).

#182 — loop could not recover an empty/unbuilt workspace

The full-fledged loop assumed an app already existed and only needed polishing; improvePrompt ("smallest changes / no unrelated features") actively blocked scaffolding when the real blocker was "no app exists yet".

  • Build step verifies output: if the workspace is still empty after the build turn, re-prompt once with a hard "create it from scratch" directive (scaffoldPrompt).
  • Improve step: switches to the scaffold directive when the workspace is empty, else keeps the (reworded) blocker-focused prompt.
  • Default --max-passes raised 3 → 5 so a from-scratch build has room to bootstrap an empty dir before polishing.
  • Empty-workspace detection ignores node_modules / lockfiles / dotfiles; gated to real drivers so the --fake flow stays deterministic.

Also

  • Dashboard + terminal end status now reads "finished" (orchestration ran to completion) instead of "done", so it does not read as production-grade next to the prototype/production-grade badge.

Verification

  • @gemstack/ai-autopilot 259 tests green, @gemstack/framework 55 (+5 new), both example suites green, full-repo test 20/20 and typecheck 20/20.
  • Compiled --fake end-to-end still runs deterministically to production-grade in 2 passes (now "Vike + Prisma").
  • Live from-scratch verification is a user-run (needs a real claude session + a fresh dir).

Changesets: @gemstack/ai-autopilot minor, @gemstack/framework minor.

Closes #181
Closes #182

…risma

The first full-scope live run only produced Vike's default "Welcome" page.
Two coupled from-scratch gaps:

#181: the flagship data persona told the agent to build on `universal-orm`,
which isn't installable (`@universal-orm/core` 404s on npm), so builds stalled
sanity-checking the stack. It now defaults to Prisma with concrete install/init
steps; the architect default no longer names an unpublished package. Persona
renamed `universalOrmModeler` -> `dataModeler`.

#182: the loop assumed an app already existed and only needed polishing. The
build step now verifies it produced files and hard re-prompts to scaffold from
scratch if the workspace is still empty; the improve step switches to a
"create the whole app" directive on an empty workspace; the default max-passes
is raised 3 -> 5. Also clarifies the end status ("finished", not "done").

Closes #181
Closes #182
@suleimansh suleimansh added bug Something isn't working enhancement New feature or request priority: high Should be addressed soon labels Jul 3, 2026
@suleimansh suleimansh self-assigned this Jul 3, 2026
@suleimansh suleimansh merged commit c79f567 into main Jul 3, 2026
2 checks passed
@suleimansh suleimansh deleted the suleimansh/fix/from-scratch-live-gap branch July 3, 2026 20:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request priority: high Should be addressed soon

Projects

None yet

1 participant