# Pattern: provider-branch

Provider (`eks` / `gke` / `aks`) is a **Procedure branch**, not a top-level
subskill and not a Method.

## Establish early

1. From the domain primary CR (or `cluster_cr`), read provider:
   - Cluster: `spec.kubernetes.provider` (values like `aws`/`gcp`/`azure` map to
     EKS/GKE/AKS task paths in controllers).
   - APPBox / VPC / PLS: `spec.provider` (`eks` / `gke` / `aks`).
2. Store `provider` in diagnosis context. Include it on every later step card.
3. If provider is missing or unrecognized: `judgment=blocked-uncertain`.
   **Do not guess** the cloud.

## Branching

1. Run cross-cloud common steps first.
2. Then follow `when provider=` steps in the domain SUBSKILL or
   `diag-*/references/provider-{eks,gke,aks}.md`.
3. Evidence atoms and object-graph edges may already be tagged `providers:` /
   `when provider=` — honor those tags; do not mix cloud-specific GKs.

## Method

Do **not** switch Method solely because of provider. Same bound method; change
intent (GK / conditions / focus) only.

## Trace

On entering a provider-specific step, state which branch ran
(e.g. `provider=eks`).
