As documented in Jetbrains variant of @Contract here and as suggested by @mp911de, org.springframework.lang.Contract should document this and new return values for consistency even if they are potentially less common use cases.