(request)
| 1039 | }, |
| 1040 | |
| 1041 | async updateTaskMetadata(request) { |
| 1042 | const updatedAt = request.updatedAt ?? now() |
| 1043 | const taskDoc = await loadDoc(storage, `code:task:${request.taskId}`) |
| 1044 | |
| 1045 | try { |
| 1046 | const meta = taskDoc.getMap("task:meta") |
| 1047 | assertTaskMeta(meta, request.taskId) |
| 1048 | |
| 1049 | taskDoc.transact(() => { |
| 1050 | if (request.title !== undefined) { |
| 1051 | const trimmed = request.title.trim() |
| 1052 | if (trimmed) meta.set("title", trimmed) |
| 1053 | } |
| 1054 | if (request.closed !== undefined) meta.set("closed", request.closed) |
| 1055 | if (request.lastViewedAt !== undefined) meta.set("lastViewedAt", request.lastViewedAt) |
| 1056 | if (request.lastEventAt !== undefined) meta.set("lastEventAt", request.lastEventAt) |
| 1057 | if (request.cancelledPlanEventId !== undefined) meta.set("cancelledPlanEventId", request.cancelledPlanEventId) |
| 1058 | if (request.enabledMcpServerIds !== undefined) { |
| 1059 | if (request.enabledMcpServerIds.length > 0) { |
| 1060 | meta.set("enabledMcpServerIds", toYValue(request.enabledMcpServerIds)) |
| 1061 | } else { |
| 1062 | meta.delete("enabledMcpServerIds") |
| 1063 | } |
| 1064 | } |
| 1065 | if (request.sessionIds) { |
| 1066 | const sessionIds = ensureYMap(meta, "sessionIds") |
| 1067 | for (const [key, sessionId] of Object.entries(request.sessionIds)) { |
| 1068 | if (sessionId) sessionIds.set(key, sessionId) |
| 1069 | } |
| 1070 | } |
| 1071 | if (request.queuedTurns !== undefined) meta.set("queuedTurns", toYValue(request.queuedTurns)) |
| 1072 | meta.set("updatedAt", updatedAt) |
| 1073 | }) |
| 1074 | await saveDoc(storage, `code:task:${request.taskId}`, taskDoc) |
| 1075 | await syncTaskMetadataPreview(storage, request.taskId, taskDoc, updatedAt, request.usage) |
| 1076 | } finally { |
| 1077 | taskDoc.destroy() |
| 1078 | } |
| 1079 | }, |
| 1080 | } |
| 1081 | } |
nothing calls this directly
no test coverage detected