From 9b16b32aefaba57ffabbba98c9e35b3a1c45bdc3 Mon Sep 17 00:00:00 2001 From: jedarden Date: Sat, 2 May 2026 10:13:30 -0400 Subject: [PATCH] fix(worker): handle NULL map_json fields with COALESCE map_json generated by acb-map-evolver lacks a 'spawns' key; scanning map_json->>'spawns' into a non-nullable string causes "converting NULL to string is unsupported". Use COALESCE for walls/spawns/cores. Co-Authored-By: Claude Sonnet 4.6 --- cmd/acb-worker/db.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmd/acb-worker/db.go b/cmd/acb-worker/db.go index be55269..b4ba730 100644 --- a/cmd/acb-worker/db.go +++ b/cmd/acb-worker/db.go @@ -185,8 +185,8 @@ func (c *DBClient) ClaimJob(ctx context.Context, jobID string, workerID string) // Get map data var mapData DBMapData err = tx.QueryRowContext(ctx, ` - SELECT map_id, grid_width, grid_height, map_json->>'walls' as walls, - map_json->>'spawns' as spawns, map_json->>'cores' as cores + SELECT map_id, grid_width, grid_height, COALESCE(map_json->>'walls', '') as walls, + COALESCE(map_json->>'spawns', '') as spawns, COALESCE(map_json->>'cores', '') as cores FROM maps WHERE map_id = $1 `, match.MapID).Scan( &mapData.ID, &mapData.Width, &mapData.Height,