Response
Now the controller:
Now add a test mirroring the existing MockMvc conventions.
Now run the test suite as required by the skill.
I don't have permission to run Bash commands in this session, so I can't execute `mvn -q -o test` to verify. Here's what I changed:
- **`NoteDtos.java`**: added `UpdateNote(title, body)` record with the same validation as `CreateNote`.
- **`NoteService.java`**: added `update(id, request)` — 404s via `ApiException`/`NOTE_NOT_FOUND` if the note doesn't exist or is archived, otherwise replaces title/body while preserving `id`, `createdAt`, and archived state.
- **`NoteController.java`**: added `PUT /api/notes/{id}` calling `notes.update(id, request)`, wrapped in the `ApiResponse` envelope like the other endpoints.
- **`NoteApiTest.java`**: added tests for a successful update (fix a typo, confirm via GET) and for updating a nonexistent note (expects the standard 404 envelope error).
Since I can't run `mvn -q -o test` myself, could you run it and share the output, or grant Bash permission so I can verify?