Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .changeset/adr-0085-pr4-remove-legacy-detail-renderer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
"@object-ui/app-shell": patch
---

chore(app-shell): remove the legacy monolith detail renderer + the `renderViaSchema` kill-switch (ADR-0085 PR4, #2181)

`RecordDetailView` now always renders through the SchemaRenderer Page
pipeline (an authored `PageSchema(pageType='record')` when assigned, else
the `buildDefaultPageSchema` synthesis). The non-schema-driven monolithic
`DetailView` branch and both of its entry points are gone:

- `objectDef.detail?.renderViaSchema === false` is no longer read (it was
the last surviving `detail.*` key — ADR-0085 removed the block from the
spec, and the key had been kept only as this path's kill-switch);
- the `?renderViaSchema=0` debug URL param is no longer honored.

Also drops the legacy-only plumbing: the eager per-record related-lists
fan-out (`record:related_list` self-fetches lazily on the schema path)
and the intermediate `DetailViewSchema` translation layer. The
`DetailView` component itself remains in `@object-ui/plugin-detail`
(still used internally by the `record:details` renderer).
10 changes: 4 additions & 6 deletions content/docs/guide/slotted-pages.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,9 +110,7 @@ The two modes are mutually exclusive: a page either has `kind: "full"`
(default) and uses `regions[]`, or `kind: "slotted"` and uses
`slots`.

## Disabling the synthesizer entirely

The default-page synthesizer is on by default. To fall back to the
legacy DetailView monolith for an object (typically for debugging a
regression), set `objectDef.detail.renderViaSchema = false`, or pass
`?renderViaSchema=0` in the URL.
> **Note:** the default-page synthesizer is the only render path for
> record detail pages. The legacy monolithic DetailView fallback and its
> `renderViaSchema` kill-switch (`objectDef.detail.renderViaSchema`,
> `?renderViaSchema=0`) were removed by ADR-0085 PR4.
1 change: 0 additions & 1 deletion packages/app-shell/src/views/ObjectView.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ const ImportWizard = lazy(() =>
import('@object-ui/plugin-grid').then((m) => ({ default: m.ImportWizard })),
);
import { ListView } from '@object-ui/plugin-list';
import { DetailView, RecordChatterPanel } from '@object-ui/plugin-detail';
import { ObjectView as PluginObjectView, ViewTabBar, ManageViewsDialog, deriveRecordSurface, overlayWidthFor } from '@object-ui/plugin-view';
import type { ViewTabItem } from '@object-ui/plugin-view';
import { RECORD_DRAWER_PARAM } from '../urlParams';
Expand Down
Loading
Loading