Skip to content

Collapse execute/executeParallel into a shared executeFlow #364

Description

@kindermax

Parent

#355

What to build

Extract executeFlow(ctx *Context, runScripts func() error) error containing the four phases that execute() and executeParallel() currently duplicate verbatim: initCmd, executeDepends, persistChecksum, and executeAfterScript. Both existing methods become thin callers that supply either a sequential or a parallel runScripts closure.

No observable behaviour changes. The test suite from #363 must remain fully green as the verification signal.

Acceptance criteria

  • A shared executeFlow function (or equivalent internal helper) encapsulates initCmd, executeDepends, persistChecksum, and executeAfterScript
  • execute() delegates to executeFlow with a sequential runScripts closure
  • executeParallel() delegates to executeFlow with a parallel (errgroup) runScripts closure
  • No duplication of the four shared phases between the two callers
  • Public interface (Execute, NewExecutor, Context, error types) is unchanged
  • All tests from Add RecordingRunner and Execute() test suite #363 pass without modification
  • All existing Bats integration tests pass

Blocked by

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions