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

Function enqueueFanOutTaskRuns

internal/api/core/tasks.go:1471–1495  ·  view source on GitHub ↗
(
	ctx context.Context,
	manager TaskService,
	actor taskpkg.ActorContext,
	taskID string,
	groupID string,
	req contract.FanOutTaskRunsRequest,
	prepared []preparedFanOutDesignation,
)

Source from the content-addressed store, hash-verified

1469}
1470
1471func enqueueFanOutTaskRuns(
1472 ctx context.Context,
1473 manager TaskService,
1474 actor taskpkg.ActorContext,
1475 taskID string,
1476 groupID string,
1477 req contract.FanOutTaskRunsRequest,
1478 prepared []preparedFanOutDesignation,
1479) ([]taskpkg.Run, error) {
1480 runs := make([]taskpkg.Run, 0, len(req.Designations))
1481 for index := range req.Designations {
1482 run, err := manager.EnqueueRun(ctx, taskpkg.EnqueueRun{
1483 TaskID: taskID,
1484 IdempotencyKey: prepared[index].idempotencyKey,
1485 NetworkChannel: strings.TrimSpace(req.NetworkChannel),
1486 DesignationGroupID: groupID,
1487 Metadata: prepared[index].metadata,
1488 }, actor)
1489 if err != nil {
1490 return nil, err
1491 }
1492 runs = append(runs, *run)
1493 }
1494 return runs, nil
1495}
1496
1497// ClaimTaskRun claims one queued run.
1498func (h *BaseHandlers) ClaimTaskRun(c *gin.Context) {

Callers 1

FanOutTaskRunsMethod · 0.85

Calls 2

appendFunction · 0.85
EnqueueRunMethod · 0.65

Tested by

no test coverage detected