Skip to content

metadata-admin previews: render an app area's description, each RLS policy's label / description, and a view container's label #11027

Description

@objectstack-fleet

Parent: objectstack-ai/objectstack#20299

A sub-issue of objectstack-ai/objectstack#20299 (family display-annotations, triage verdict ENFORCE, grade 5859600931), split per triage's shape: 「domain:spec parent, with an objectui domain:ui sub-issue」. Filed by the objectstack domain:spec seat 2 (session_014EJ1ED8X4MMrT18BhVx4tx, seat post objectstack-ai/objectstack#18549) when it claimed the parent's ledger half. ⛔ Not graded here: routing, domain:* and grade belong to this repo's triage.

Why

Four authored display keys are parsed and published by @objectstack/spec, but no Studio surface shows them to a human. The objectstack liveness ledger records each as dead. Under the maintainer's ruling that a designer preview rendering a display key to a human is its consumer (objectstack packages/spec/liveness/README.md, "Designer previews count as consumers"), rendering them is the whole of the fix. Setup UIs in the mainstream (Salesforce, ServiceNow, Power Apps) show this text.

What this repo does today (read at objectui dd3f7e1be, objectstack's .objectui-sha)

All paths are under packages/app-shell/src/views/metadata-admin/previews/.

key ledger row (objectstack) today
app.areas[].description liveness/app.json areas.description AppPreview.tsx reads no areas at all.
permission.rowLevelSecurity[].label liveness/permission.json rowLevelSecurity.label PermissionPreview.tsx:129 reads the array, and :182 renders only a count pill (engine.permissionPreview.pill.rls).
permission.rowLevelSecurity[].description liveness/permission.json rowLevelSecurity.description Same as label: count only.
view container label liveness/view.json label ViewPreview.tsx:167 reads it into a single injected list view. But packages/plugin-view/src/ObjectView.tsx renders no tab strip for one entry (:1562, :2660), so the label never reaches the screen.

The change

  • AppPreview renders each area's description beside its label.
  • PermissionPreview lists each RLS policy with its label and description, not only the count.
  • ViewPreview shows the container label where a human sees it, for example as the preview's heading, without re-enabling a one-entry tab strip.
  • A missing value is the control in each case: nothing renders and nothing falls back to invented text.
  • Preview chrome goes through the designer locale, like the other preview strings.

⛔ Out of scope:

  • flow.description, hook.label and hook.description. ResourceListPage's default columns (defaultColumns, :626-:631) already show them, since neither type registers listColumns. The parent's ledger half cites that reader. If the parent's measurement falsifies it, the parent's seat amends this body.
  • A HookPreview, for the same reason.

Acceptance

  • Each of the four keys is visible in its preview when authored, and absent when not. A pin per preview asserts both cases.
  • Once this lands and objectstack's .objectui-sha covers the merge commit, the parent flips the four ledger rows to live, citing each preview symbol at that pin.

Dedupe: a REST listing of the 1,000 most recently updated issues in this repo (open and closed, down to #10168), grepped locally for PermissionPreview, AppPreview, HookPreview, rowLevelSecurity.label / .description, areas.description and objectstack#20299, gave 4 hits. None carries these keys: #10862 and #10880 are preview chrome locale, #7469 is AppAction, and #10570 is field-label search. The parent's seat-4 measurement 5880539559 found no carrier either.

Dedupe words: metadata-admin preview area description · PermissionPreview RLS policy label description · ViewPreview container label one-entry tab strip

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:studioChanging a running app without code — authoring, publish, docs and the portaldomain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatenhancementNew feature or requestpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions