CliSubprocessCore.ProviderRuntimeProfile (CliSubprocessCore v0.2.0)

Copy Markdown View Source

Application-configured provider runtime profile selection.

Runtime profiles are an internal operator/configuration seam. They do not add public request options; instead they rewrite provider startup onto a configured Execution Plane transport surface before provider invocation and parser callbacks run.

Summary

Functions

Declares the Phase 6 adapter selection policy for CLI runtime profiles.

Builds the owner-local Phase 6 lower scenario declaration for a runtime profile.

Applies an application-configured runtime profile for a provider.

Types

config()

@type config() :: keyword() | map() | nil

profile()

@type profile() :: keyword() | map()

provider()

@type provider() :: atom()

resolve_error()

@type resolve_error() ::
  {:provider_runtime_profile_required, provider()}
  | {:invalid_provider_runtime_profile, provider(), term()}
  | {:unsupported_provider_runtime_profile_mode, provider(), term()}
  | {:public_simulation_selector_forbidden, provider()}

Functions

adapter_selection_policy()

@spec adapter_selection_policy() :: CliSubprocessCore.AdapterSelectionPolicy.t()

Declares the Phase 6 adapter selection policy for CLI runtime profiles.

lower_simulation_scenario!(provider, scenario_ref, overrides \\ %{})

@spec lower_simulation_scenario!(provider(), String.t(), map() | keyword()) ::
  CliSubprocessCore.LowerSimulationScenario.t()

Builds the owner-local Phase 6 lower scenario declaration for a runtime profile.

resolve(provider, provider_options, execution_surface)

Applies an application-configured runtime profile for a provider.

The supported PRELIM profile mode is :lower_simulation, which selects the Execution Plane simulated process transport and injects provider-native stdout or stderr frames below the existing provider parsers.