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

Method StartTaskRun

internal/api/core/tasks.go:1542–1583  ·  view source on GitHub ↗

StartTaskRun starts one claimed run.

(c *gin.Context)

Source from the content-addressed store, hash-verified

1540
1541// StartTaskRun starts one claimed run.
1542func (h *BaseHandlers) StartTaskRun(c *gin.Context) {
1543 manager, ok := h.requireTaskManager(c)
1544 if !ok {
1545 return
1546 }
1547
1548 runID, err := requiredPathID(c.Param("id"), "run id")
1549 if err != nil {
1550 h.respondError(c, StatusForTaskError(err), err)
1551 return
1552 }
1553
1554 var req contract.StartTaskRunRequest
1555 if err := decodeOptionalJSON(c, &req); err != nil {
1556 h.respondError(
1557 c,
1558 http.StatusBadRequest,
1559 NewTaskValidationError(fmt.Errorf("%s: decode start run request: %w", h.transportName(), err)),
1560 )
1561 return
1562 }
1563
1564 actor, err := h.taskActorContext(c, taskActionStartRun)
1565 if err != nil {
1566 h.respondError(c, StatusForTaskError(err), err)
1567 return
1568 }
1569
1570 startReq, err := startTaskRunFromRequest(req)
1571 if err != nil {
1572 h.respondError(c, StatusForTaskError(err), err)
1573 return
1574 }
1575
1576 run, err := manager.StartRun(c.Request.Context(), runID, startReq, actor)
1577 if err != nil {
1578 h.respondError(c, StatusForTaskError(err), err)
1579 return
1580 }
1581
1582 c.JSON(http.StatusOK, contract.TaskRunResponse{Run: TaskRunPayloadFromRun(run)})
1583}
1584
1585// AttachTaskRunSession binds one existing session to a run.
1586func (h *BaseHandlers) AttachTaskRunSession(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
TaskRunPayloadFromRunFunction · 0.85
startTaskRunFromRequestFunction · 0.70
StartRunMethod · 0.65

Tested by

no test coverage detected