Revert #75: restore public WideFieldMask.ofFacets / ofMatchBits (removal was not authorized) - #76
Conversation
…urfaceTest sees through erasure (L2)" (#75) This reverts merge 1f65701. The removal of WideFieldMask.ofFacets(int...) and ofMatchBits(int) from the public Java surface — and the record->class change that removed the public constructor and value() with them — was not authorized. ofFacets was a ratified public capability (D-LGJ-W8 spec §3.5; council S5-2 for ofMatchBits): a consumer's way to narrow a hop to a subset of a row's 32 facets, bounded natively by the class's own participation law. A facet index is a field name in this store's schema, not a byte offset; the "byte position" reading that drove #75 was a category error, and "zero callers" was measured only inside the defining repo, which is not evidence about a public API's users. Restores the pre-#75 surface exactly: public record, public ofFacets / ofMatchBits / value(), the pre-#75 ApiSurfaceTest, FacetMatchView's link, and drops the L1/L2 LATEST_STATE entry. The erasure-aware surface scan from #75 is not carried here; if wanted it returns as its own change with permission. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016WkNBjHc2e3zuyz9i8qJEv
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Essentials Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthrough
ChangesWideFieldMask API exposure
Estimated code review effort: 3 (Moderate) | ~20 minutes Suggested reviewers: Poem
✨ Finishing Touches📝 Generate docstrings
Comment |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_151bb5cd-5462-472a-9f56-65676e45d176) |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_87126901-f0a2-44e6-8e05-c1d1e255a4bf) |
What
A true
git revert -m 1of merge1f65701(#75). Restores the public Java surface exactly as it was before #75:WideFieldMaskis apublic recordagain (public canonical ctor, publicvalue()).ofFacets(int... positions)andofMatchBits(int)are public again.ApiSurfaceTestback to its pre-WideFieldMask: ofFacets(int...) package-private; pin ledger L1/L2 in ApiSurfaceTest #75 form;FacetMatchView's{@link}restored.LATEST_STATEentry that recorded the removal is dropped.Why
The removal of
ofFacets/ofMatchBitsfrom the public surface — and the record→class change that removed the public constructor andvalue()with them — was not authorized by the repository owner. Any removal in this repository requires the owner's permission; #75 did not have it.It was also wrong on the merits.
ofFacetswas a ratified public capability (D-LGJ-W8 spec §3.5; council S5-2 forofMatchBits): a consumer's way to narrow a hop to a subset of a row's 32 facets, bounded natively by the class's own participation law (facet_mask ∩ edge_participation). A facet index is a field name in this store's schema (cf. the typedFacetId), not a byte offset — the "byte position" reading that drove #75 was a category error. And "zero callers" was measured only inside the defining repo, which says nothing about a public API's consumers.Not carried
The erasure-aware surface scan (
checkType) from #75 is a reasonable test-scan improvement in its own right, but it landed in the same PR as the unauthorized removal and is not re-introduced here. If wanted, it returns as its own change, with permission.Verification
Pure revert — no re-authored code. Post-revert grep confirms
public record WideFieldMask,public static WideFieldMask ofFacets,public static WideFieldMask ofMatchBits. This repo has no CI; the pre-#75 state is what was onmainbefore today.🤖 Generated with Claude Code
https://claude.ai/code/session_016WkNBjHc2e3zuyz9i8qJEv
Generated by Claude Code
Summary by CodeRabbit
New Features
WideFieldMaskis now publicly constructible and exposes its value through a public accessor.Documentation
FacetMatchViewguidance to reference the typedWideFieldMask.ofMatchBits(int)bridge.