Enable CreatorTest and drop the stale @JsonCreator limitation
Summary
- Re-enable
CreatorTest; thegetAbsentValue()overrides added after the test was disabled now preserveJsonNullable.undefined()for absent creator properties. - Add a regression case that distinguishes an explicit JSON
nullfrom an absent sibling property. - Remove the stale
@JsonCreatorlimitation from the README and document the supported behavior.
This changes tests and documentation only; it does not change production code.
Verification
I ran:
./mvnw -B clean verify -P integration-test
On JDK 25, the build completed successfully with 320 tests, 0 failures, 0 errors, and 3 expected @JsonUnwrapped skips. All three Maven Invoker integration builds passed.
The implementation session also performed a mutation check: removing either Jackson processor's getAbsentValue() override makes that processor's creator cases fail with the original symptom (JsonNullable[null] instead of JsonNullable.undefined()).
CI supplies the JDK 17 check that I could not reproduce locally.
AI disclosure
Claude Opus 5 implemented and tested this change. OpenAI Codex independently reviewed the diff and reran the full build. David authorized this automated contribution workflow and owns the submission. The commit keeps an explicit Co-Authored-By trailer for Claude.
Summary by cubic
Re-enabled CreatorTest and added a test to ensure absent @JsonCreator parameters deserialize as JsonNullable.undefined(), distinct from explicit nulls. Updated README to remove the stale @JsonCreator limitation and document the supported behavior; tests/docs only, no production code changes.