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
fix(lint): warn when searchableFields declares an unprovisioned injected anchor (#8404) (#8665)
* fix(lint): warn when searchableFields declares an unprovisioned injected anchor (#8404)
`validate-searchable-fields.ts` is the fifth blanket-SYSTEM_FIELDS read site.
Both its gates were correct about existence and blind to provenance, so a
declared anchor on an ADR-0015 external object lints clean and the view's
`$searchFields` narrowing scans a column with no storage behind it.
Adds `searchable-field-unprovisioned` (WARN, never gating -- #4330's cost
asymmetry), reusing the #8340 shared message builders rather than re-wording
them. The `:239` stub is kept: measured, it is what keeps the linter's
resolution equal to the runtime's.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jqe56GnYFddggeAyfkZFVz
* chore(changeset): minor, not patch -- this adds a public export (#8404)
`SEARCHABLE_FIELD_UNPROVISIONED` is a new public export from
`packages/lint/src/index.ts`, and `checkSearchableFieldList` gains an additive
optional parameter. `patch` under-reports public-surface expansion to everyone
reading the changelog downstream.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jqe56GnYFddggeAyfkZFVz
* test(lint): pin the react surface's anchor-index threading (#8404)
Measured gap: dropping `unprovisionedAnchors` from the `<ListView>`
`checkSearchableFieldList` call left typecheck AND the whole 72-file lint suite
green. The index stays read by `checkBlockFieldProps` in the same function, so
`noUnusedLocals` does not fire there (it does in validate-searchable-fields.ts,
where the index would become unused), and the metadata-surface tests cannot see
this call site.
This test is the only thing that goes red when the argument is dropped --
verified by re-running the ablation with it in place.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jqe56GnYFddggeAyfkZFVz
---------
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments