package docsyncrunner import ( "context" "log/slog" documentsync "queryorchestration/internal/document/sync" "github.com/go-playground/validator/v10" "github.com/google/uuid" ) const Name = "docSyncRunner" type Services struct { Document *documentsync.Service } type Runner struct { validator *validator.Validate svc *Services } func New(validator *validator.Validate, svc *Services) Runner { return Runner{ validator: validator, svc: svc, } } type Body struct { DocumentID uuid.UUID `json:"id" validate:"required,uuid"` } func (s Runner) Process(ctx context.Context, body Body) bool { err := s.svc.Document.Sync(ctx, body.DocumentID) if err != nil { slog.Error("unable to process", "error", err) return false } return true }