Skip to content

[finding] object-master-detail-form issues getObjectSchema(undefined) for a detail collection whose object it never resolved, instead of declining to fetch #5940

Description

@os-warren

Found while resolving #3840. Out of that card's scope (its subject was the sections sample and the probe's render guard); filing as observation-class for triage rather than queueing.

Fact (objectui origin/main @ 2074a59)

Mounting object-master-detail-form under the #3840 binding-reach fixture, with a data source that records every call, produces two calls:

getObjectSchema("probe_object__c") | getObjectSchema(undefined)

The first is the parent binding and is correct — that is the call the binding-reach probe exists to observe. The second passes undefined as the object name.

Its origin is the details input ({ name: 'details', type: 'array', label: 'Detail Collections', required: true }). The fixture fills it with the generic array sample ['name'], so each detail entry is a bare string and whatever key the renderer reads the child object off (.object / .objectName) is undefined — and the renderer then asks the data layer for it anyway.

The two halves, and why I did not pick one

This has the same shape as the #3840 fork and deserves the same discriminating step, which I did not spend here:

The second half is worth a decision even if the first is true, which is why this is filed rather than folded into the fixture fix.

Note this call is invisible to the binding-reach probe's assertions either way: that probe asks whether any call carried the object name, and the first call already satisfies it. It surfaced only because the probe now records every call and the full list was read.

Related: #3840, #3838 (same family — an unresolved optional sub-key reaching a read unguarded).

Metadata

Metadata

Labels

domain:devxobjectui devx stream: fix lands on .github/, scripts/ or release pipeline — devx lane cross-repofindingpm:dispatched

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions