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

Method prepareTaskExecutionBoundary

internal/task/manager.go:734–755  ·  view source on GitHub ↗
(
	ctx context.Context,
	taskID string,
	action ExecutionAction,
	actor ActorContext,
)

Source from the content-addressed store, hash-verified

732}
733
734func (m *Service) prepareTaskExecutionBoundary(
735 ctx context.Context,
736 taskID string,
737 action ExecutionAction,
738 actor ActorContext,
739) (*Task, error) {
740 switch action {
741 case ExecutionActionPublish:
742 _, err := m.publishTaskIntent(ctx, taskID, actor)
743 return nil, err
744 case ExecutionActionApproval:
745 return m.transitionTaskApproval(ctx, taskID, ApprovalStateApproved, taskEventApproved, actor)
746 case ExecutionActionStart:
747 taskRecord, err := m.store.GetTask(ctx, taskID)
748 if err != nil {
749 return nil, err
750 }
751 return nil, m.ensureTaskExecutable(ctx, taskRecord)
752 default:
753 return nil, fmt.Errorf("%w: unsupported task execution action %q", ErrValidation, action)
754 }
755}
756
757func (m *Service) approvalAutoEnqueueExecution(
758 ctx context.Context,

Callers 1

executeTaskBoundaryMethod · 0.95

Calls 4

publishTaskIntentMethod · 0.95
ensureTaskExecutableMethod · 0.95
GetTaskMethod · 0.65

Tested by

no test coverage detected