Skip to content

refactor(metadata): change boolean fields to Boolean type for improved null handling#2730

Open
balazs-szucs wants to merge 6 commits intobooklore-app:developfrom
balazs-szucs:scan-error
Open

refactor(metadata): change boolean fields to Boolean type for improved null handling#2730
balazs-szucs wants to merge 6 commits intobooklore-app:developfrom
balazs-szucs:scan-error

Conversation

@balazs-szucs
Copy link
Collaborator

📝 Description

Avoids:

2026-02-12T21:53:20.063-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] o.s.web.servlet.DispatcherServlet        : POST "/api/v1/tasks/start", parameters={}
2026-02-12T21:53:20.063-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped to org.booklore.controller.TaskController#startTask(TaskCreateRequest)
2026-02-12T21:53:20.065-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] o.s.web.method.HandlerMethod             : Could not resolve parameter [0] in public org.springframework.http.ResponseEntity<org.booklore.model.dto.response.TaskCreateResponse> org.booklore.controller.TaskController.startTask(org.booklore.model.dto.request.TaskCreateRequest): JSON parse error: Cannot map `null` into type `boolean` (set DeserializationConfig.DeserializationFeature.FAIL_ON_NULL_FOR_PRIMITIVES to 'false' to allow)
2026-02-12T21:53:20.066-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] .m.m.a.ExceptionHandlerExceptionResolver : Using @ExceptionHandler org.booklore.exception.GlobalExceptionHandler#handleHttpMessageNotReadableException(HttpMessageNotReadableException)
2026-02-12T21:53:20.067-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] o.s.w.s.m.m.a.HttpEntityMethodProcessor  : Using 'application/json', given [application/json, text/plain, */*] and supported [application/json, application/*+json, application/yaml]
2026-02-12T21:53:20.067-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] o.s.w.s.m.m.a.HttpEntityMethodProcessor  : Writing [org.booklore.exception.ErrorResponse@2c45186f]
2026-02-12T21:53:20.068-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot map `null` into type `boolean` (set DeserializationConfig.DeserializationFeature.FAIL_ON_NULL_FOR_PRIMITIVES to 'false' to allow)]
2026-02-12T21:53:20.069-06:00 DEBUG 1 --- [booklore-api] [at-handler-2474] o.s.web.servlet.DispatcherServlet        : Completed 400 BAD_REQUEST

Errors

🏷️ Type of Change

  • Bug fix
  • New feature
  • Enhancement to existing feature
  • Refactor (no behavior change)
  • Breaking change (existing functionality affected)
  • Documentation update

🔧 Changes

🧪 Testing

📸 Screenshots / Video (MANDATORY)

Due to an increase in untested, AI-generated PRs, we have made this section mandatory for all submissions. Please include screenshots or a screen recording that demonstrates your change working end-to-end (e.g., the bug fix in action, the new feature working, API responses, or test output for backend changes). PRs that do not include this will be closed without review. Thank you for helping us keep the project stable.


✅ Pre-Submission Checklist

All boxes must be checked before requesting review. Incomplete PRs will be closed without review. No exceptions.

  • Code follows project style guidelines and conventions
  • Branch is up to date with develop (merge conflicts resolved)
  • Automated tests added or updated to cover changes (backend and frontend)
  • All tests pass locally (./gradlew test for backend, ng test for frontend)
  • Changes manually verified in local dev environment (including related features)
  • Screenshots or video proving the change works are attached above (MANDATORY)
  • Flyway migration versioning is correct (if schema was modified)
  • Documentation PR submitted to booklore-docs (if user-facing changes)
  • PR is reasonably scoped (PRs over 1000+ changed lines will be closed, split into smaller PRs)

🤖 AI-Assisted Contributions

If any part of this PR was generated or assisted by AI tools (Copilot, Claude, ChatGPT, etc.), all items below are mandatory. AI-generated code that hasn't been thoroughly reviewed is the leading cause of reverted PRs. You are responsible for every line you submit. "The AI wrote it" is not an excuse.

  • Every line has been read, understood, and can be explained by the author
  • PR is scoped to a single logical change, not a dump of everything the AI suggested
  • Tests validate actual behavior, not just coverage (AI-generated tests often assert nothing meaningful)
  • No dead code, placeholder comments, TODOs, or unused scaffolding

💬 Additional Context (optional)

balazs-szucs and others added 2 commits February 13, 2026 10:08
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.

1 participant