fix(all): avoid double-registration when serving the composed env#10
Merged
Conversation
Browser testing surfaced a real bug: the compile-input store was named `.objectstack/installed-packages/` — the runtime's reserved live-install folder. `MarketplaceInstallLocalPlugin` auto-rehydrates that folder at boot, so every app got registered twice when serving `--artifact` (once by the composed env, once by rehydrate), logged as `id=undefined` / `Overwriting package: undefined`, which destabilized the dev server. Move the compile-input store to `.objectstack/marketplace-packages/` so the composed artifact is the single source of truth at serve time. Genuine marketplace installs in `installed-packages/` are still folded in if present. Verified: clean boot registers the env exactly once, no id=undefined; all 9 apps load and serve seed data from one runtime; helpdesk/todo dashboards render. - compile script: store → marketplace-packages; also ingest live installed-packages - add `pnpm clean` - README: document the rationale + business-user testing findings (partial zh-CN coverage, empty personal dashboards) and a Verified section Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Found during browser testing
Driving
objectstack dev allthrough the browser (login → all 9 apps → studio) surfaced a real bug.The compile-input store was named
.objectstack/installed-packages/— which is the runtime's reserved live-install folder.MarketplaceInstallLocalPluginauto-rehydrates that folder at boot, so when serving the composed--artifact, every app got registered twice:This redundant double-registration destabilized the dev server.
Fix
Move the compile-input store to
.objectstack/marketplace-packages/so the composed artifact is the single source of truth at serve time. A genuine marketplace install ininstalled-packages/is still folded into the compile if present.Verified
id=undefined/Overwriting package.Also documented (per-template, out of scope here)
pnpm clean; README gains a Verified section + the rationale.🤖 Generated with Claude Code