Uh oh!
There was an error while loading. Please reload this page.
fix(studio): authorable Automations + Interfaces-nav in a fresh package - #2198
Merged
Conversation
Dogfooding a brand-new package end-to-end surfaced two blocking dead-ends in
the pillar Studio:
- Automations pillar could not create a flow — a zero-flow package showed an
endless '加载中…' (loading conflated with empty) and had no create button.
Add a listed-state flag (real '还没有自动化' empty state) + a '+ 新建' inline
creator that saves a minimal start→end autolaunched skeleton draft and opens
it in the flow designer.
- Interfaces nav items could not be bound to a target AND silently failed to
save: the editor produced { label, object } (no id/type), which fails the
app spec's navigation union ('navigation.N: Invalid input'), so drafts never
persisted and published nav stayed empty. Render a StudioNavItemInspector
(right panel) with an object picker from the package's published ∪ draft
objects, emitting a spec-valid ObjectNavItem { id, type:'object',
objectName, label }; nav save drops unbound placeholders + backfills a
snake_case id.
Also fills in home.build.* / home.template.* i18n (en/zh) for the Home
builder-cover cards.
Verified end-to-end in the browser: designed 3 related objects → created a
flow → bound nav to objects → atomic publish → standalone app renders a
3-item sidebar with the application list and resolved lookups.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>The latest updates on your projects. Learn more about Vercel for GitHub. |
Uh oh!
There was an error while loading. Please reload this page.
Contributor
✅ Console Performance Budget
📦 Bundle Size Report
Size Limits
|
This was referenced Jul 3, 2026
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 freeto 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.
What
Dogfooding a brand-new package end-to-end in the browser (design objects → automations → interfaces → publish → use) surfaced two blocking dead-ends in the pillar Studio. Both are fixed here, plus a small i18n gap.
1. Automations pillar couldn't create a flow
A package with zero flows rendered an endless
加载中…(loading conflated with empty) and had no create affordance — automations could never be authored.listedflag → real empty state还没有自动化 — 点「新建」开始.+ 新建inline creator (label + identifier) that saves a minimal, validstart → endautolaunched flow skeleton as a draft and opens it in the flow designer.2. Interfaces nav items couldn't be bound to a target — and silently failed to save
Selecting a nav item showed no inspector, and the shape the editor produced (
{ label, object }, noid/type) failed the app spec's navigation union (navigation.N: Invalid input), so the draft never persisted and the published app navigation stayed empty.StudioNavItemInspectorin the right panel fornavSel, with a business-friendly object picker populated from the package's published ∪ draft objects.ObjectNavItem{ id (snake_case), type: 'object', objectName, label }.doNavSavedrops still-unbound placeholders and backfills a snake_case id, so one blank item can't fail the whole save.3. Home builder-cover i18n
Fills in
home.build.*/home.template.*(en/zh) so the "Build an app" / "Start with a template" cards resolve real strings.Verification
/apps/recruiting_apprenders a 3-item sidebar (申请/职位/候选人) and the application list with resolved lookups (张三 / 高级前端工程师 / 投递).@object-ui/app-shelltype-check clean; 964/964 app-shell tests pass.🤖 Generated with Claude Code