From 203316b1c3526e6c4d61eba7351e1221da335089 Mon Sep 17 00:00:00 2001 From: Bruno Deanoz Date: Sun, 21 Jun 2026 13:43:24 +0200 Subject: [PATCH] fix: enable encodeDefaults so message persistence actually works kotlinx.serialization defaults to not encoding properties with default values. SaveMessage.kind = "chat" was never sent, causing the backend's sanitizeSaveableMessage() to reject every save with 400. This also broke title generation since it was gated behind a successful save. --- app/src/main/java/dev/kaizen/app/net/KaizenApi.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/dev/kaizen/app/net/KaizenApi.kt b/app/src/main/java/dev/kaizen/app/net/KaizenApi.kt index 5968231..8fb1cf3 100644 --- a/app/src/main/java/dev/kaizen/app/net/KaizenApi.kt +++ b/app/src/main/java/dev/kaizen/app/net/KaizenApi.kt @@ -138,7 +138,7 @@ object KaizenApi { .readTimeout(0, TimeUnit.SECONDS) // streaming chat — never time out a healthy stream .build() - private val json = Json { ignoreUnknownKeys = true } + private val json = Json { ignoreUnknownKeys = true; encodeDefaults = true } private val jsonMedia = "application/json".toMediaType() /** POST /api/v1/auth/token — exchange email+password for a `kzn_` bearer token. */