You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Studio: read-only packages accept edit gestures client-side, fail only at server write #2259
Mirror of framework#2615 (P1), found by the Studio package-create UX dogfood (framework#2609, audit doc docs/audits/2026-07-studio-package-create-ux-dogfood.md). Reproduced against the pinned console build 7782698 at /_console/studio/com.example.showcase/data (source-loaded, Read-only badge shown).
What happens
On a read-only package:
"+ Add field" actually mutates the canvas — header count goes 16 → 17 fields and the Field properties panel opens on the new field_17.
"New object" opens the inline create form and lets the user fill it out.
Only when the eventual server write fires does the user learn the whole edit was futile — a 422 writable_package_required toast (whose copy is being fixed framework-side in framework#2625).
Expected
Client-side courtesy gating per ADR-0057 D10: when the active package is read-only, disable/hide Add field, New object, Save draft, Publish, and field-property inputs, with a tooltip like "Read-only package — create or switch to a writable package to edit". The server remains the authoritative gate; the client just shouldn't let users build up doomed local state.
Notes
The read-only signal is already available to the client — the package switcher and Studio landing both badge Read-only correctly.
Related polish: the read-only toast can fire twice for a single gesture.
Activity
Merge origin/main: adopt upstream #2263/#2271, keep nav scaffold + i1…