Skip to content

finding(tests): objectui#8690's strict bucket is matcher-dependent — 7 further strict-shape sites were never read #8703

Description

@os-justin

Filed by the objectui#8690 dev seat (branch claude/issue-8690-recorder-wait-audit, PR #8702) as an out-of-scope by-product. Not claimed, not assigned. ⛔ Nothing below is claimed as a defect — the detector answers where to look, never what is wrong, which is objectui#8690's own rule and the reason this is a card and not a patch.

What was measured

objectui#8690's nine sites were audited (1 repaired, 8 measured sound; PR #8702). Its detector was re-derived from the card's four-step description and kept as scripts/census-recorder-wait-shape.mjs.

Re-deriving it surfaced something the card does not record: the strict bucket ("the wait named a recorder") depends on how a recorder name is matched, and the two reasonable choices give buckets that do not contain each other.

On da5e4f69e, 2776 tracked test files:

recorder-match total flags strict files
ident — bare identifier, receiver ignored 159 15 10
path — dotted path 167 18 12
objectui#8690 as filed 160 9 7

ident misses a wait written as a member of a host object (a recorder pushed as bare inits, waited as host.calls); path misses the mirror case. objectui#8690's nine sit inside the union of the two, and the union is wider than nine.

The sites in the union that nobody has read

Line numbers on da5e4f69e. ⛔ Unaudited — no reading was performed on any of them:

  • packages/components/src/renderers/form/__tests__/form-onchange-wiring.test.tsx:207 — waits submitted, reads received
  • packages/plugin-dashboard/src/__tests__/DatasetWidget.localSelectI18n.test.tsx:356 — waits drillFilters, reads blobs
  • packages/plugin-dashboard/src/__tests__/DatasetWidget.optionLabelI18n.test.tsx:313 — waits drillFilters, reads requested
  • packages/plugin-dashboard/src/__tests__/DatasetWidget.tableTotalsRow.test.tsx:319 — waits drillFilters, reads blobs
  • packages/plugin-view/src/__tests__/ObjectView.tableColumnsForwarding.test.tsx:136 — waits rendered, reads seen
  • packages/plugin-view/src/__tests__/ObjectView.tableColumnsForwarding.test.tsx:149 — waits rendered, reads gridSchemas
  • packages/app-shell/src/views/metadata-admin/PermissionMatrixEditor.scope.test.tsx:177 — waits server.saved, reads server.savedOpts — the same construction as the two audited packageDoorFacets sites, which measured sound (both pushes are consecutive synchronous statements in one save double), so this one is the cheapest of the seven to settle.

The three packages/permissions flags in the strict bucket are objectui#8688 / PR #8689 and are excluded here.

What a reader should do with this

Read each site and classify it, the same contract objectui#8690 set: force the unfavourable ordering (50ms, not 0ms — RTL's asyncWrapper drains one macrotask, so a 0ms deferral sits inside its own window) and observe the old wait either red or unbreakable. ⛔ A batch repair driven by this list would be the mistake objectui#8665 warns about.

A second, weaker observation from the same audit

packages/plugin-list/src/__tests__/ListView.objectProviderBinding-7477.test.tsx — the provider: 'value' control asserts expect(dataSource.find).not.toHaveBeenCalled() after waiting on the renderer's props. For an inline-items provider ListView starts with loading === false, so that renderer's first props arrive in the FIRST commit rather than after a settled load — unlike the object-provider cases in the same file, whose anchors were measured post-settle. So this particular absence is read early. It is a mock-call absence and not a recorder array, so it sits outside the detector's population entirely, and it was not measured: a query started in a mount effect would already be recorded by the time render returns, and only an async-deferred query would slip. Recorded so the observation is not lost, not as a claim.

Dedup — declared

This repo's search_issues returns false zeros, so a zero from it would not be evidence. The query run here was not a zero: recorder wait census strict shape sites outside the nine audited, scoped to this repo, returned exactly one hit — objectui#8690 itself — which is a self-validating non-empty result, and nothing matching this finding.

Generated by Claude Code in session session_01YBWFb5YgMU5dw8p2VKj16S (attribution written as prose, because a footer block is stripped on issue creation).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

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

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions