Skip to content

fix: expose every Java module service provider field - #56

Merged
exKAZUu merged 1 commit into
mainfrom
fix/module-provider-query-fields
Oct 25, 2026
Merged

exKAZUu merged 1 commit into
mainfrom
fix/module-provider-query-fields

Conversation

@exKAZUu

@exKAZUu exKAZUu commented Oct 25, 2026 •

Copy link
Copy Markdown
Member

Why

A provides Service with First, Second directive exposes Second through its provider field but leaves First unlabelled. Field queries therefore miss the only implementation in a single-provider directive and the first implementation in longer lists.

Requirements

  • required: Improve the fork grammar using unresolved fork issues and useful major upstream changes, without preserving backward compatibility.
  • required: Avoid duplicate work and give each independent improvement its own PR based on the latest main branch.
  • required: Run review-booster and complete-pr concurrently, then merge, publish, and verify the release.
  • chosen: Use the existing provider field for every implementation because callers should find the complete provider list through one field query.

Customer Summary

Field access and structural queries return every service implementation in a Java module directive, including the first or only provider.

Technical Summary

provides_module_directive assigns provider to its first implementation as well as subsequent implementations. Generated parser metadata makes the field required. The public WASM API regression checks the service field, ordered provider fields, query captures, and source ranges for one, two, and three implementations.

Testing

bun run build/ci, bun run verify, and bun wb test test/unit/moduleProviders.test.ts test/unit/corpus.test.ts test/unit/wasm.test.ts pass. The new regression fails on the unchanged parser and passes with the fix. Both native and WASM execution pass all 165 corpus cases. The complete module compiles cleanly with JDK 27. All PR CI checks pass, including the full suite, native platform checks, Rust, and fuzzing. Five review sessions completed successfully with no findings; the pushed revision was reviewed by at least one successful exploration session, with full coverage unverified.

Co-authored-by: WillBooster (Codex) <agent@willbooster.com>
@exKAZUu exKAZUu self-assigned this Oct 25, 2026
@exKAZUu
exKAZUu merged commit b6a189b into main Oct 25, 2026
10 checks passed
@exKAZUu
exKAZUu deleted the fix/module-provider-query-fields branch October 25, 2026 17:48
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.

1 participant