Slices Go nil viram 'null' no JSON, o que quebra clientes com tipos
não-nuláveis com default (kotlinx.serialization rejeita null explícito).
newNoteView/normalizeNote garante [] em list/get/create/update/restore.
Motivado por teste real do cliente Android (duplicava creates ao falhar
o decode da resposta 201).