Install any skill in seconds. Free to start, no credit card required.
Get Started Free →rrezartprebreza/null-safety
Use when annotating nullability in Spring Boot 3 / Spring Framework 6 code, integrating Kotlin, or adding static nullability checks without assuming Spring Framework 7 JSpecify defaults.
Passed 25 of 25 test cases with the skill, and 21 of 25 without it.
and 2 more in the full report
4 fixed21 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 4 test cases the skill fixed. Same model, same prompt, with and without the skill.
A team member added `@Nullable` to a few methods in a Spring Boot 4 class, but static analysis tools treat all unannotated parameters as unknown nullability rather than non-null. What missing file and annotation in the package is causing this issue?
| Checked | Without skill | With skill |
|---|---|---|
| Identifies the missing package-info.java file annotated with NullMarked | Missed | Passed |
The instructions your model reads when the skill loads.
Spring Framework 7 adopts JSpecify for nullability. Use org.jspecify.annotations for new code
and migrate away from the older Spring nullability annotations at module boundaries.
@NullMarked
package com.example.orders;
import org.jspecify.annotations.NullMarked;
Inside a null-marked package, types are non-null by default. Annotate only genuine exceptions:
@Nullable
Order findActive(String customerEmail) { ... }
List<@Nullable String> namesWithGaps; // non-null list, nullable elements
@Nullable List<String> maybeNoList; // nullable list, non-null elements
Use Object @Nullable [] for a nullable array and @Nullable Object[] for a non-null array whose
elements may be null. Add the JSpecify dependency through the Boot dependency management.
JSpecify is metadata. IntelliJ can inspect it, while NullAway with JSpecifyMode=true can enforce
the contract during compilation. Kotlin consumes the annotations as real nullability.
org.springframework.lang.Nullable in new Framework 7 code - prefer JSpecify.@NonNull - use package-level @NullMarked and mark exceptions.@Nullable List<String> for nullable elements - use List<@Nullable String>.@Nullable on the wrong side of an array type - distinguish nullable arrays from nullable elements.package-info.java - without @NullMarked, most checks remain unknown.test cases passed, vs 21 / 25 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.