-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
Failure Details
- Run: 23398087408
- Commit:
0c5cf948fe1063f1fedcfb36e5da27d9ef4a079e - PR: JSpecify big wave 3 #4274 (JSpecify big wave 3)
- Branch:
claude/agent-team-jspecify-Frd74
Failed Jobs and Errors
| Job | Conclusion |
|---|---|
buildAndTest (testWithJava21 testngWithJava21, java21, ...) |
❌ failure |
buildAndTest (testWithJava11 ...) |
⚫ cancelled |
buildAndTest (testWithJava17 ...) |
⚫ cancelled |
buildAndTest (test testng jacocoTestReport, java25, ...) |
⚫ cancelled |
javadoc |
✅ success |
buildAndTest (check) |
✅ success |
Root Cause
The JSpecifyAnnotationsCheck test has two assertions:
- All
@PublicApi/@ExperimentalApiclasses must have@NullMarkedor@NullUnmarked(unless exempted). - Classes in the exemption list must NOT be annotated — if a class is both annotated and exempted, the test fails.
PR #4274 added these 10 classes to its exemption list (indicating they hadn't been annotated yet):
graphql.execution.incremental.DeferredExecution
graphql.execution.instrumentation.ChainedInstrumentation
graphql.execution.instrumentation.DocumentAndVariables
graphql.execution.instrumentation.NoContextChainedInstrumentation
graphql.execution.ResponseMapFactory
graphql.execution.instrumentation.SimpleInstrumentation
graphql.execution.instrumentation.SimpleInstrumentationContext
graphql.execution.instrumentation.SimplePerformantInstrumentation
graphql.execution.instrumentation.fieldvalidation.FieldAndArguments
graphql.execution.instrumentation.fieldvalidation.FieldValidationEnvironment
However, all 10 of these classes were already annotated with @NullMarked in master (likely via PRs #4216/#4257 merged 2026-03-21/22). When PR #4274 merged master, the annotation stubs from master came in, but the exemption list was not reconciled.
This causes the second assertion in JSpecifyAnnotationsCheck.groovy to throw:
The following classes are in the JSpecify exemption list but are annotated with
@NullMarkedor@NullUnmarked: ...
Recommended Fix
- In
src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovyon branchclaude/agent-team-jspecify-Frd74, remove these 10 entries fromJSPECIFY_EXEMPTION_LIST:
"graphql.execution.incremental.DeferredExecution",
"graphql.execution.instrumentation.ChainedInstrumentation",
"graphql.execution.instrumentation.DocumentAndVariables",
"graphql.execution.instrumentation.NoContextChainedInstrumentation",
"graphql.execution.ResponseMapFactory",
"graphql.execution.instrumentation.SimpleInstrumentation",
"graphql.execution.instrumentation.SimpleInstrumentationContext",
"graphql.execution.instrumentation.SimplePerformantInstrumentation",
"graphql.execution.instrumentation.fieldvalidation.FieldAndArguments",
"graphql.execution.instrumentation.fieldvalidation.FieldValidationEnvironment",These classes are already annotated in master, so they do not belong in the exemption list.
Generated by CI Failure Doctor
To install this workflow, run
gh aw add githubnext/agentics/workflows/ci-doctor.md@ee50a3b7d1d3eb4a8c409ac9409fd61c9a66b0f5. View source at https://github.com/githubnext/agentics/tree/ee50a3b7d1d3eb4a8c409ac9409fd61c9a66b0f5/workflows/ci-doctor.md.