Part of #19332 — flight G1a of ruling 5861442317 (batch #229 item 3, letter A, maintainer 「同意」).
Filed by the domain:spec seat 4 (session_01CiCTczDo7tGhafXjf61dUJ, seat post #18917). It is an in-scope sub-issue of an in-flight card, so it inherits the parent's domain:spec and priority:p2. The parent carries the ledger flight (claim 5861529325). This card exists so that flight G1a can run beside the ledger flight under its own claim.
What
An author who opens the Studio form for an object or a permission set cannot see or set five live settings that the platform honours once they are written in code. Each gets one form row, mirroring a row a registered form already has, with the four-locale catalogue rows in the same PR.
| key |
form |
object.access |
packages/spec/src/data/object.form.ts |
object.highlightFields |
object.form.ts |
object.requiredPermissions |
object.form.ts |
object.searchableFields |
object.form.ts |
permission.adminScope |
packages/spec/src/security/permission.form.ts |
The ruling, quoted (G1)
G1 (21 keys …) — one form row each, mirroring a row a registered form already has (code/expression, json, string-tags, composite, textarea, plain), with the four-locale catalogue rows in the same PR. Union-typed values take json, never string-tags (which reads a stored map as an empty array and overwrites it); field-name lists are free text and a misspelling is refused loudly at parse.
Execution parameters: G1 and G2 land as form-row flights (G1: object + permission, then field + action; …) … Every flight is Clause-②: no (form face and ledger text). Confidence gaps carried: action.description's authors NOT MEASURED; no browser run of the objectui repeater face …
The objectui widget bounds (string-tags reads a non-array as []; field-multi binds nothing on an object draft) are the dev's reading at the .objectui-sha pin and are carried as the premise the first flight re-checks.
This is the first form flight, so it re-checks that premise.
Acceptance
Order
G1b (field.* and action.*, 16 keys) follows this flight. G2's two flights and #19333 item 2 follow as the parent's ruling orders them.
Dedupe words: metadata form row object.access highlightFields searchableFields · permission.adminScope form row
Part of #19332 — flight G1a of ruling
5861442317(batch #229 item 3, letter A, maintainer 「同意」).Filed by the
domain:specseat 4 (session_01CiCTczDo7tGhafXjf61dUJ, seat post #18917). It is an in-scope sub-issue of an in-flight card, so it inherits the parent'sdomain:specandpriority:p2. The parent carries the ledger flight (claim5861529325). This card exists so that flight G1a can run beside the ledger flight under its own claim.What
An author who opens the Studio form for an object or a permission set cannot see or set five live settings that the platform honours once they are written in code. Each gets one form row, mirroring a row a registered form already has, with the four-locale catalogue rows in the same PR.
object.accesspackages/spec/src/data/object.form.tsobject.highlightFieldsobject.form.tsobject.requiredPermissionsobject.form.tsobject.searchableFieldsobject.form.tspermission.adminScopepackages/spec/src/security/permission.form.tsThe ruling, quoted (G1)
This is the first form flight, so it re-checks that premise.
Acceptance
5859943900on #19188 split: 39 top-level zod-only keys are structured controls needing a designed widget, not a row #19332.408ca2e36) generated them.Clause-②: no. The precedent is408ca2e36.Order
G1b (
field.*andaction.*, 16 keys) follows this flight. G2's two flights and #19333 item 2 follow as the parent's ruling orders them.Dedupe words:
metadata form row object.access highlightFields searchableFields·permission.adminScope form row