MCPcopy Create free account
hub / github.com/compozy/agh / ClearTaskBlock

Method ClearTaskBlock

internal/api/core/tasks.go:380–419  ·  view source on GitHub ↗

ClearTaskBlock clears one open task block.

(c *gin.Context)

Source from the content-addressed store, hash-verified

378
379// ClearTaskBlock clears one open task block.
380func (h *BaseHandlers) ClearTaskBlock(c *gin.Context) {
381 manager, ok := h.requireTaskManager(c)
382 if !ok {
383 return
384 }
385
386 taskID, err := requiredPathID(c.Param("id"), "task id")
387 if err != nil {
388 h.respondError(c, StatusForTaskError(err), err)
389 return
390 }
391 blockID, err := requiredPathID(c.Param("block_id"), "block id")
392 if err != nil {
393 h.respondError(c, StatusForTaskError(err), err)
394 return
395 }
396
397 var req contract.ClearTaskBlockRequest
398 if err := decodeOptionalJSON(c, &req); err != nil {
399 h.respondError(
400 c,
401 http.StatusBadRequest,
402 NewTaskValidationError(fmt.Errorf("%s: decode clear task block request: %w", h.transportName(), err)),
403 )
404 return
405 }
406
407 actor, err := h.taskActorContext(c, taskActionClearBlock)
408 if err != nil {
409 h.respondError(c, StatusForTaskError(err), err)
410 return
411 }
412 block, err := manager.ClearTaskBlock(c.Request.Context(), taskID, blockID, strings.TrimSpace(req.Note), actor)
413 if err != nil {
414 h.respondError(c, statusForTaskBlockError(err), err)
415 return
416 }
417
418 c.JSON(http.StatusOK, contract.TaskBlockResponse{Block: TaskBlockPayloadFromBlock(block)})
419}
420
421// RecoverTask clears task-level needs_attention state.
422func (h *BaseHandlers) RecoverTask(c *gin.Context) {

Callers

nothing calls this directly

Calls 11

requireTaskManagerMethod · 0.95
respondErrorMethod · 0.95
transportNameMethod · 0.95
taskActorContextMethod · 0.95
requiredPathIDFunction · 0.85
StatusForTaskErrorFunction · 0.85
decodeOptionalJSONFunction · 0.85
NewTaskValidationErrorFunction · 0.85
statusForTaskBlockErrorFunction · 0.85
ClearTaskBlockMethod · 0.65

Tested by

no test coverage detected