Skip to content

finding(ci): check-spec-range-floors reports [floor-too-low] on @object-ui/types — its declared ^17.0.0 does not carry FilterCondition, and the blocking copy runs on the publish path #7688

Description

@os-sam

Measured by the dev implementing #7122 (PR #7685) and handed to the PM to file, because that session's dedup channel was unreadable from its container (REST /search/* refused by the egress proxy; the MCP fallback returned total_count 0 for a control built from #7122's own verbatim title). Filed here after the PM re-ran dedup on a demonstrably non-blind instrument — the control query returned 14 cards in this exact subject area, including #7122, #7635 and #6925, and none of them is this defect.

⚠️ PRE-EXISTING — explicitly not caused by the 17.3.0 bump. Recorded so it is not mistaken for bump fallout when #7122's chain lands.

The finding

@object-ui/types declares @objectstack/spec at ^17.0.0, but its built dist/spec-report.d.ts references FilterCondition, which 17.0.0 does not export. scripts/check-spec-range-floors.mjs reports [floor-too-low] and names ^17.3.0 as the lowest floor carrying everything the package actually references.

Why it is pre-existing, measured rather than assumed

runtimeFilter?: FilterCondition is byte-identical in the 17.2.0 and 17.3.0 artifacts, so the emitted declaration names the symbol either way. The bump does not introduce the reference and does not change it.

⭐ Why this is worth a card rather than a shrug

The gate has two copies with different consequences:

  • The PR-facing copy is push-only and, by its own header, "cannot make anyone's pull request red" — which is why nobody has been forced to look at it.
  • The blocking copy runs on the publish path. So the standing alarm on main is the kind that surfaces as a cancelled release, at the least convenient moment, rather than as a red PR.

That asymmetry — invisible during development, blocking at publish — is the whole reason to file rather than leave it.

⚠️ One caveat on the reading

In the dev's run the gate exited 1 but 29 of 30 packages reported no-artifact because the workspace was not built, so that run is NOT MEASURED as a whole. The @object-ui/types finding is the one real result in it. A built-workspace run is needed before anyone concludes this is the only floor-too-low package.

Related

#7122 (the 17.3.0 pin chain, now in the decision box) · PR #7685 (the measurement branch this came out of).

⛔ Deliberately unassigned and unlabelled, for triage.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdomain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lanefindingpm:queuepriority:p2

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions