Skip to content

Follow-up (ADR-0085 PR4): real-backend browser-verify showcase detail pages + framework renderViaSchema comment cleanup #2548

Description

@os-zhuang

Follow-up to #2181 / PR #2546 (which removed the legacy monolith detail renderer and the renderViaSchema kill-switch). PR #2546 was merged on green CI (type-check, unit 3012, DOM 2904, console production build, and a Playwright console smoke all passed). Two items from the original #2181 checklist could not be completed in the CI/agent environment and are tracked here.

1. Real-backend browser verification of detail pages (main)

The console smoke in CI runs against a mocked build with no @objectstack backend, so the four representative detail-page shapes were never exercised against real data after the legacy branch was deleted. Now that schema-driven is the only path, confirm each renders correctly end-to-end:

  • grouped — object with fieldGroups: groups render as titled cards in declared order; collapsible groups expand/collapse.
  • ungrouped — object with no groups: falls through to the primary + collapsible "More details" auto-split (not one flat blob).
  • stageField:false — object that explicitly disables stage detection: no record:path stepper is emitted.
  • related-heavy — e.g. showcase_account: Related tab / reference rail render, and each record:related_list self-fetches lazily when its tab is shown (no eager fan-out on page open — the removed legacy path used to preload all of them).

For each: no blank page, no fatal console errors, highlight strip present, audit meta footer at the bottom, and ?tab= survives a refresh. As a direct check that the kill-switch is gone, append ?renderViaSchema=0 to a detail URL and confirm it has no effect (still the schema page).

Repro (per-agent isolated stack, from AGENTS.md)

# backend — showcase, fresh temp DB, seeds admin@objectos.ai / admin123
cd framework/examples/app-showcase
pnpm exec objectstack dev --seed-admin --fresh -p 4010     # first run on a clean checkout: `pnpm setup` in framework root

# console pointed at it
cd objectui/apps/console
DEV_PROXY_TARGET=http://localhost:4010 pnpm exec vite --port 5190 --strictPort
# self-check → should return Northwind/Contoso:
curl 'http://localhost:5190/api/v1/data/showcase_account?$top=2'

Then log in at http://localhost:5190 (admin@objectos.ai / admin123), enter the showcase app via the launchpad (route by the app's name), and open a record for each shape above.

2. framework: drop the stale renderViaSchema source comment (minor)

@objectstack/spec no longer types renderViaSchema / the per-object detail.* block (verified in the pinned @objectstack/spec@14.6.0 — types are already clean). Only a source comment remains, noting the field "retires together with the legacy monolith render path." Now that the render path is gone (PR #2546), that comment can be removed in the framework repo.


Filed as the deferred remainder of #2181 after PR #2546 merged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions