Phase 5 target posture and attach authorization contract.
Summary
Types
@type t() :: %ExecutionPlane.Contracts.TargetPosture.V1{ allowed_attach_grant_refs: [String.t()], allowed_connector_instance_refs: [String.t()], allowed_credential_handle_refs: [String.t()], allowed_provider_account_refs: [String.t()], allowed_provider_families: [String.t()], boundary_session_id: String.t(), cleanup_refs: [String.t()], contract_version: String.t(), materialized_state_refs: [String.t()], multi_handle?: boolean(), no_egress_posture_ref: String.t(), persistence_posture: map() | nil, process_target_identity_ref: String.t() | nil, service_identity_ref: String.t() | nil, stream_target_identity_ref: String.t() | nil, target_auth_posture: String.t(), target_auth_posture_ref: String.t(), target_kind: String.t(), target_ref: String.t(), tenant_ref: String.t(), workspace_ref: String.t() }
Functions
@spec authorize_attach( t() | map() | keyword(), ExecutionPlane.Contracts.AttachGrant.V1.t() | map(), ExecutionPlane.Contracts.ExecutionIntentEnvelope.V1.t() | map() ) :: {:ok, map()} | {:error, term()}
@spec contract_version() :: String.t()
@spec new(map() | keyword() | t()) :: {:ok, t()} | {:error, Exception.t()}