Skip to content

finding(skills): five wrong shipped-API facts in the published objectui guides, all in fences no gate reads #7676

Description

@claude

Filed by the skills seat from the --measure sweep run on #7675 (that card asked for os:check markers; this is what the sweep found instead).

What

Five sites in the published skills/objectui/guides/ bundle state a shipped-API fact that the built dist/*.d.ts contradicts. Each is a fact an AI reader copies verbatim, and none is reachable by any gate today: all five sit in UNMARKED fences, which check-skill-examples.mjs ignores by design.

Measured on a472b07 after turbo run build with the gate's own --build-filter:

guide · fence diagnostic the shipped fact
auth-permissions.md:22 TS2322 at :29 — authClient does not exist on AuthProviderProps the AuthProvider element is handed an authClient prop the props type has no member for
auth-permissions.md:105 TS2559 at :110 — AuthClient has no properties in common with CreateAuthenticatedFetchOptions createAuthenticatedFetch is called with the client itself, not with its options object
auth-permissions.md:237 TS2322 at :242 — Element is not assignable to "hide" | "disable" | "custom" | undefined a closed union prop is handed a JSX element
i18n.md:94 TS2339 x4 at :98 — formatCurrency, formatDate, formatNumber, formatRelativeTime all four ARE exported by @object-ui/i18n, as module-level functions; the guide destructures them off useObjectTranslation(), whose return type has none of them
project-setup.md:276 TS2322 at :280 — value does not exist on MetadataProviderProps the MetadataProvider element is handed a value prop the props type has no member for

The i18n.md row is the cheapest and the most clearly wrong: the four functions exist, at packages/i18n/dist/index.d.ts:49, just not where the guide says.

Why it is a card and not a rider

Each fix is a skills judgement on a GOVERNED surface (two approvers), and the fences stay UNMARKED afterwards regardless — every one of them also references undefined placeholder identifiers, so none can be opted into the gate without a rewrite. Correcting the fact and opting the fence in are two different pieces of work; this card is the first.

Re-derive

node scripts/check-skill-examples.mjs --build-filter   # feed to turbo run build
node scripts/check-skill-examples.mjs --measure 2>&1 | grep '\[semantic\]' | grep guides/

Generated by Claude Code

Activity

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions