MCPcopy Create free account
hub / github.com/bearlyai/OpenADE / deleteTask

Function deleteTask

projects/openade-module/src/yjsMutation.ts:570–604  ·  view source on GitHub ↗
(request)

Source from the content-addressed store, hash-verified

568 },
569
570 async deleteTask(request) {
571 const updatedAt = now()
572 const documentId = `code:task:${request.taskId}`
573 const reposDoc = await loadDoc(storage, "code:repos")
574 const taskData = await storage.readDocumentUpdate(documentId)
575 const taskDoc = new Y.Doc()
576 if (taskData) Y.applyUpdate(taskDoc, taskData)
577
578 try {
579 const repoMap = findRepoMap(reposDoc, request.repoId)
580 if (!repoMap) throw new Error(`Repository ${request.repoId} not found`)
581
582 if (taskData) {
583 const meta = taskDoc.getMap("task:meta")
584 assertTaskMeta(meta, request.taskId)
585 const metaRepoId = meta.get("repoId")
586 if (metaRepoId !== request.repoId) {
587 throw new Error(`Task ${request.taskId} belongs to repository ${String(metaRepoId)}`)
588 }
589 }
590
591 let removedPreview = false
592 reposDoc.transact(() => {
593 removedPreview = deleteTaskPreview(repoMap, request.taskId, updatedAt)
594 })
595 if (!removedPreview && !taskData) throw new Error(`Task ${request.taskId} not found`)
596
597 await saveDoc(storage, "code:repos", reposDoc)
598 if (taskData) await storage.deleteDocument(documentId)
599 return { repoId: request.repoId, taskId: request.taskId, deleted: true }
600 } finally {
601 reposDoc.destroy()
602 taskDoc.destroy()
603 }
604 },
605
606 async setupTaskEnvironment(request) {
607 const updatedAt = now()

Callers

nothing calls this directly

Calls 10

findRepoMapFunction · 0.85
assertTaskMetaFunction · 0.85
destroyMethod · 0.80
nowFunction · 0.70
loadDocFunction · 0.70
deleteTaskPreviewFunction · 0.70
saveDocFunction · 0.70
readDocumentUpdateMethod · 0.65
getMethod · 0.65
deleteDocumentMethod · 0.65

Tested by

no test coverage detected