Skip to content

feat: ADR-0047 implementation (framework) — userFilters spec, reference diagnostics, showcase examples, authoring form#1792

Merged
xuyushun441-sys merged 3 commits into
mainfrom
feat/adr-0047-spec-and-showcase
Jun 12, 2026
Merged

feat: ADR-0047 implementation (framework) — userFilters spec, reference diagnostics, showcase examples, authoring form#1792
xuyushun441-sys merged 3 commits into
mainfrom
feat/adr-0047-spec-and-showcase

Conversation

@xuyushun441-sys

Copy link
Copy Markdown
Contributor

Implements the framework side of ADR-0047 (phases 1, 3, 5).

Phase 1 — spec + diagnostics

  • UserFilterFieldSchema / UserFiltersSchema in ui/view.zod.ts, attached as ListViewSchema.userFilters — formalizes the shape the objectui client already renders
  • 'chart' added to VisualizationTypeSchema (8-type parity); appearance.allowedVisualizations confirmed as the runtime visualization whitelist
  • InterfacePageConfig: userFilters now uses the real UserFiltersSchema (replaces the misplaced elements visualization enum — zero prior usage); new sourceView for the iron rule (pages reference views, never restate them)
  • computeViewReferenceDiagnostics (objectql): cross-document checks Zod cannot express — userFilters/tabs fields must exist on the source object, kanban groupBy must be select-like — merged into _diagnostics on view getMetaItem. Unit-tested + verified live (bad field → reference_not_found, date groupBy → invalid_binding)

Phase 3 — examples + AI authoring rules

  • showcase showcase_task default view: filter tabs, userFilters dropdowns, allowedVisualizations whitelist (the few-shot corpus was empty)
  • new Task Workbench interface page (interfaceConfig) + nav entry — the canonical interface-mode example
  • objectstack-ui skill: two-run-modes decision table, default-to-data-mode rule, the iron rule

Phase 5 — authoring form

  • viewForm gains an End-user controls section; the spec-form-driven Studio inspector renders the full userFilters/tabs/appearance authoring UI with zero client code

Verification

All behavior verified live in the browser against examples/app-showcase + the objectui console (companion PR in objectui): data-mode tabs/dropdowns/visualization switcher, interface-mode curated page, reference diagnostics, Studio authoring panel.

🤖 Generated with Claude Code

os-zhuang and others added 3 commits June 12, 2026 17:58
…list, view reference diagnostics

- UserFilterFieldSchema/UserFiltersSchema in ui/view.zod.ts, attached as
  ListViewSchema.userFilters (blesses the shape objectui already renders)
- 'chart' added to VisualizationTypeSchema (8-type parity with ListView.type);
  appearance.allowedVisualizations remains the runtime whitelist
- InterfacePageConfig: userFilters now uses the real UserFiltersSchema
  (replaces the misplaced elements visualization enum, zero prior usage);
  new sourceView for the ADR-0047 iron rule (pages reference views)
- computeViewReferenceDiagnostics in objectql: cross-document checks Zod
  cannot express (userFilters/tabs fields exist on source object, kanban
  groupBy is select-like), merged into _diagnostics on view getMetaItem

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…amples + skill decision rules

- showcase_task default view gains filter tabs, userFilters dropdowns
  (status/priority/done) and an allowedVisualizations whitelist — the
  few-shot corpus for AI authors was previously empty
- new Task Workbench interface page: references the default view
  (sourceView), locked grid, author-curated dropdowns, filter:false —
  the canonical interface-mode example; nav entry added next to the
  data-mode Tasks entry
- objectstack-ui skill: two-run-modes decision table, default-to-data-mode
  rule, the iron rule, and the userFilters/tabs/appearance authoring block

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…authoring form

The Studio view inspector is spec-form-driven, so adding the section here
renders the full authoring UI (userFilters fields/tabs repeaters with the
element style selector, appearance.allowedVisualizations, userActions,
addRecord, showRecordCount) with zero client code — verified in the
browser against the showcase. Also registers TaskWorkbenchPage in the
showcase stack config (the phase-3 nav entry referenced it).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
spec Ready Ready Preview, Comment Jun 12, 2026 3:58pm

Request Review

@github-actions github-actions Bot added documentation Improvements or additions to documentation tests protocol:ui size/l labels Jun 12, 2026
@xuyushun441-sys xuyushun441-sys merged commit 249395a into main Jun 12, 2026
12 checks passed
@xuyushun441-sys xuyushun441-sys deleted the feat/adr-0047-spec-and-showcase branch June 12, 2026 16:19
xuyushun441-sys added a commit that referenced this pull request Jun 13, 2026
…1801)

Adds the 'Interface (list pages)' section to the Studio page form,
visible when type == 'list': the interfaceConfig composite renders the
full Airtable-right-panel equivalent — Source/Source View (iron-rule
help text), Levels, Filter By rows, Appearance (Show Description +
Allowed Visualizations tags), User Filters (Element style + Fields rows
with showCount) and User Actions toggles.

Completes the phase-5 authoring surface: views got their End-user
controls section in #1792; pages now have the same for interface mode.
Browser-verified in Studio against the showcase Task Workbench page.

Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation protocol:ui size/l tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants