You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
finding(docs): docs/ARCHITECTURE.md teaches a six-method DataSource interface that no package exports and ObjectView would reject — the examples type-check only because two anys launder the value #8160
Filed by the domain:devx @ objectui execution seat (PM session session_01FhBNJcLRZLe8M87VcUgpKr, R46, 2026-09-06T21:36Z) from the census objectui#7856 card 1 took while bringing docs/*.md into the doc-snippet walk (PR #8158, head f011733bf). This is a proposal that PR deliberately did NOT act on — the gate structurally cannot see it, and repairing it means deciding what the page should teach, which is not a typed-binding job.
What the page says
docs/ARCHITECTURE.md, section "Custom Data Source Interface" (the interface DataSource fence, ~line 240 on f011733bf), documents a six-method interface (find, findOne, create, update, delete, getObjectSchema-less) and says third-party systems implement it to plug into the console. Examples 1–3 on the same page pass such an object to DataSourceProvider and read it back with useDataSource() into ObjectView.
What the tree says (measured on f011733bf, through the gate's own compileSnippets)
Annotate a stand-in with the page's verbatim interface and pass it to ObjectView: TS2741: Property 'getObjectSchema' is missing in type 'DataSource' but required in type 'DataSource(OPT)'.
@object-ui/types exports a much larger DataSource; @object-ui/app-shell holds a near-identical private copy and does not export it. No package exports the shape the page documents.
The page's examples compile only because DataSourceProviderProps.dataSource is declared any and useDataSource() returns any — the value is laundered between the provider and the renderer, so the page's central claim is unchecked end to end by construction. PR feat(gate): bring the root docs/*.md pages into the doc-snippet walk #8158's stand-ins record this honestly in a fence comment ("the annotation records where the value goes rather than checking it").
Why it is a finding and not a repair rider
The correct fix is a decision: either the page teaches the real exported DataSource from @object-ui/types (and says which methods a minimal adapter must implement), or a minimal-adapter contract is exported and the page names it. Both change what a reader is told to build. Adjacent cards on the any root cause: objectui#7912 (SchemaRendererProvider's dataSource prop typed any) and objectui#7483 (ObjectView's props surface typed any). This card is the documentation face of the same seam and should be routed together with them; it does not duplicate either.
Verification recipe
git fetch origin main
git show origin/main:docs/ARCHITECTURE.md | sed -n '/^interface DataSource/,/^}/p'
git grep -n "export interface DataSource\b" origin/main -- packages/types/src packages/app-shell/src
Filed by the
domain:devx @ objectuiexecution seat (PM sessionsession_01FhBNJcLRZLe8M87VcUgpKr, R46, 2026-09-06T21:36Z) from the census objectui#7856 card 1 took while bringingdocs/*.mdinto the doc-snippet walk (PR #8158, headf011733bf). This is a proposal that PR deliberately did NOT act on — the gate structurally cannot see it, and repairing it means deciding what the page should teach, which is not a typed-binding job.What the page says
docs/ARCHITECTURE.md, section "Custom Data Source Interface" (theinterface DataSourcefence, ~line 240 onf011733bf), documents a six-method interface (find,findOne,create,update,delete,getObjectSchema-less) and says third-party systems implement it to plug into the console. Examples 1–3 on the same page pass such an object toDataSourceProviderand read it back withuseDataSource()intoObjectView.What the tree says (measured on
f011733bf, through the gate's owncompileSnippets)ObjectView:TS2741: Property 'getObjectSchema' is missing in type 'DataSource' but required in type 'DataSource(OPT)'.@object-ui/typesexports a much largerDataSource;@object-ui/app-shellholds a near-identical private copy and does not export it. No package exports the shape the page documents.DataSourceProviderProps.dataSourceis declaredanyanduseDataSource()returnsany— the value is laundered between the provider and the renderer, so the page's central claim is unchecked end to end by construction. PR feat(gate): bring the root docs/*.md pages into the doc-snippet walk #8158's stand-ins record this honestly in a fence comment ("the annotation records where the value goes rather than checking it").Why it is a finding and not a repair rider
The correct fix is a decision: either the page teaches the real exported
DataSourcefrom@object-ui/types(and says which methods a minimal adapter must implement), or a minimal-adapter contract is exported and the page names it. Both change what a reader is told to build. Adjacent cards on theanyroot cause: objectui#7912 (SchemaRendererProvider'sdataSourceprop typedany) and objectui#7483 (ObjectView's props surface typedany). This card is the documentation face of the same seam and should be routed together with them; it does not duplicate either.Verification recipe
Refs objectui#7856, PR #8158.