Sealed continuation state for a prepared validate or run command.
The command engine consumes application, host, input, and override paths
before constructing this value. It retains the generated command reference,
the inert installation catalog and sealed path-free runtime services needed
by later assembly, and only the artifact destinations that phase 6 must
preflight. If the invocation directory was
unavailable, it retains the ordered destination keys that could not be
anchored so phase 6 can apply its fixed trace/inspection/result precedence.
The path-free PreparedRun remains separately sealed inside it.
Summary
Functions
Idempotently releases the embedded prepared run and inert catalog.
Types
@type t() :: %PtcRunner.Kernel.CommandPreparation{ artifact_destination_failures: [atom()], artifact_destinations: %{optional(atom()) => binary()}, attestation: binary() | nil, catalog: PtcRunner.Kernel.InstallationCatalog.t(), command: :validate | :run, environment_setup_required: boolean(), prepared_run: PtcRunner.Kernel.PreparedRun.t(), project_artifact_root: binary() | nil, run_ref: binary(), runtime_services: PtcRunner.Kernel.ProviderRuntimeServices.t() }
Functions
@spec close(t()) :: :ok | {:error, :not_owner | :provider_activity_unavailable}
Idempotently releases the embedded prepared run and inert catalog.
Returns {:error, :not_owner} when the prepared run has been transferred to
another live process, or {:error, :provider_activity_unavailable} when its
bounded close cannot complete. The inert catalog is still released.