Skip to content

Revert #75: restore public WideFieldMask.ofFacets / ofMatchBits (removal was not authorized) - #76

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/revert-75-restore-ofFacets
Sep 5, 2026
Merged

Revert #75: restore public WideFieldMask.ofFacets / ofMatchBits (removal was not authorized)#76
AdaWorldAPI merged 1 commit into
mainfrom
claude/revert-75-restore-ofFacets

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Sep 5, 2026

Copy link
Copy Markdown
Owner

What

A true git revert -m 1 of merge 1f65701 (#75). Restores the public Java surface exactly as it was before #75:

Why

The removal of ofFacets / ofMatchBits from the public surface — and the record→class change that removed the public constructor and value() 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. 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 (facet_mask ∩ edge_participation). A facet index is a field name in this store's schema (cf. the typed FacetId), 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 on main before today.

🤖 Generated with Claude Code

https://claude.ai/code/session_016WkNBjHc2e3zuyz9i8qJEv


Generated by Claude Code

Summary by CodeRabbit

  • New Features

    • WideFieldMask is now publicly constructible and exposes its value through a public accessor.
    • Public factory methods are available for creating masks from facet positions or match bits.
  • Documentation

    • Updated FacetMatchView guidance to reference the typed WideFieldMask.ofMatchBits(int) bridge.
    • Removed an internal membrane review entry from the project’s state documentation.

…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
@coderabbitai

coderabbitai Bot commented Sep 5, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Essentials

Run ID: 9fca951e-31a5-48a5-9c78-8ec74ce9ef55

📥 Commits

Reviewing files that changed from the base of the PR and between 1f65701 and 64895a6.

📒 Files selected for processing (4)
  • .claude/board/LATEST_STATE.md
  • java/src/main/java/com/adaworldapi/lancegraph/FacetMatchView.java
  • java/src/main/java/com/adaworldapi/lancegraph/WideFieldMask.java
  • java/src/test/java/com/adaworldapi/lancegraph/ApiSurfaceTest.java

📝 Walkthrough

Walkthrough

WideFieldMask is now a public record with public construction and factory methods. Related documentation was updated. ApiSurfaceTest now validates erased reflection types instead of generic signatures. The L1/L2 review state entry was removed.

Changes

WideFieldMask API exposure

Layer / File(s) Summary
Public mask contract
java/src/main/java/com/adaworldapi/lancegraph/WideFieldMask.java, java/src/main/java/com/adaworldapi/lancegraph/FacetMatchView.java
WideFieldMask is a public record with public construction, value(), ofFacets(int...), and ofMatchBits(int). Related documentation reflects the public API.
API surface validation
java/src/test/java/com/adaworldapi/lancegraph/ApiSurfaceTest.java, .claude/board/LATEST_STATE.md
Reflection checks now validate erased classes. The generic-signature fixtures and related L1/L2 review state entry were removed.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Suggested reviewers: claude

Poem

A rabbit reads each line,
The patch grows clear beneath the moon,
Small changes hop in place,
Tests guard the garden path,
Reviews bloom before the dawn.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Comment @coderabbitai help to get the list of available commands.

@cursor

cursor Bot commented Sep 5, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot 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)

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review September 5, 2026 11:51
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@AdaWorldAPI
AdaWorldAPI merged commit a061e11 into main Sep 5, 2026
1 of 2 checks passed
@cursor

cursor Bot commented Sep 5, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot 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)

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants