From 811e2a6e18bfe305936ff49483701bdf6e3b3a52 Mon Sep 17 00:00:00 2001 From: MayaTheShy Date: Sun, 22 Mar 2026 11:44:14 -0400 Subject: [PATCH] feat: enhance task assignment logic to support un-assigning tasks --- server/database.js | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/server/database.js b/server/database.js index d1fe4d8..065f7ca 100644 --- a/server/database.js +++ b/server/database.js @@ -375,12 +375,22 @@ export function getNextTask() { } export function assignTask(taskId, turtleId) { - const stmt = db.prepare(` - UPDATE task_queue - SET assigned_turtle_id = ?, status = 'assigned', updated_at = ? - WHERE id = ? - `); - stmt.run(turtleId, Date.now(), taskId); + if (turtleId === null || turtleId === undefined) { + // Un-assign: clear turtle and revert to pending + const stmt = db.prepare(` + UPDATE task_queue + SET assigned_turtle_id = NULL, status = 'pending', updated_at = ? + WHERE id = ? + `); + stmt.run(Date.now(), taskId); + } else { + const stmt = db.prepare(` + UPDATE task_queue + SET assigned_turtle_id = ?, status = 'assigned', updated_at = ? + WHERE id = ? + `); + stmt.run(turtleId, Date.now(), taskId); + } } export function updateTaskStatus(taskId, status, result = null) {