X Tutup
Skip to content

JSpecify gigantic wave 4#4301

Draft
dondonz wants to merge 184 commits intomasterfrom
claude/jspecify-wave4
Draft

JSpecify gigantic wave 4#4301
dondonz wants to merge 184 commits intomasterfrom
claude/jspecify-wave4

Conversation

@dondonz
Copy link
Member

@dondonz dondonz commented Mar 7, 2026

Over 120 new JSpecify annotated classes in this PR.

Don't review this yet - there's a bunch of other JSpecify PRs that need to be merged in first, and I need to closely check all of these classes again. Opening this PR to let you know it's here.

This branch is branching off the "big wave 3" branch but I'm targeting master so this diff looks very odd.

If this PR is too large and hard to read after all the others get merged in, I'm happy to split this into smaller PRs.

There are only ~10 classes left to annotate after this PR.

claude and others added 30 commits February 28, 2026 23:21
dondonz and others added 25 commits March 7, 2026 20:17
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…bleFieldPredicateEnvironment

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ity, GraphqlFieldVisibility, NoIntrospectionGraphqlFieldVisibility

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add @nullable to replacedType/replacedInterfaces/replacedWrappedType fields,
nullable return types on getValue/getDataFetcher/getTypeResolver methods,
and fix cascading nullability in GraphQLSchema and Anonymizer.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
# Conflicts:
#	src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@dondonz dondonz changed the base branch from claude/agent-team-jspecify-Frd74 to master March 7, 2026 20:35
@github-actions
Copy link
Contributor

github-actions bot commented Mar 7, 2026

Test Report

Test Results

Java Version Total Passed Failed Errors Skipped
Java 11 5671 (±0) 5614 (±0) 0 (±0) 0 (±0) 57 (±0)
Java 17 5671 (±0) 5613 (±0) 0 (±0) 0 (±0) 58 (±0)
Java 21 5671 (±0) 5613 (±0) 0 (±0) 0 (±0) 58 (±0)
Java 25 5671 (±0) 5613 (±0) 0 (±0) 0 (±0) 58 (±0)
jcstress 32 (±0) 32 (±0) 0 (±0) 0 (±0) 0 (±0)
Total 22716 (±0) 22485 (±0) 0 (±0) 0 (±0) 231 (±0)

Code Coverage (Java 25)

Metric Covered Missed Coverage vs Master
Lines 28704 3126 90.2% ±0.0%
Branches 8338 1514 84.6% ±0.0%
Methods 7681 1224 86.3% ±0.0%

Changed Class Coverage (6 classes)

Class Line Branch Method
g.e.i.d.ExhaustedDataLoaderDispatchStrategy -1.2% 🔴 -7.7% 🔴 ±0.0%
g.i.Introspection ±0.0% +0.8% 🟢 ±0.0%
g.p.Parser
$1
±0.0% -8.3% 🔴 ±0.0%
g.s.i.SchemaPrinter ±0.0% -0.4% 🔴 ±0.0%
g.s.SchemaTransformer +0.1% 🟢 ±0.0% ±0.0%
g.s.u.SchemaUsageSupport
$1
+0.1% 🟢 -2.4% 🔴 ±0.0%

Full HTML report: build artifact jacoco-html-report

Updated: 2026-03-07 21:47:25 UTC

TreeParallelTransformer only set List.class as a context var but never
NodeAdapter.class. After JSpecify annotations wrapped getVar() calls with
assertNotNull(), this caused test failures in TreeParallelTransformerTest
and AstTransformerTest.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
public void compute() {
currentContext.setPhase(TraverserContext.Phase.ENTER);
currentContext.setVar(List.class, myZippers);
currentContext.setVar(NodeAdapter.class, nodeAdapter);
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another interesting bugfix surfaced by JSpecify

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

X Tutup