sequenceDiagram participant User participant Controller participant InfraBP as InfraBlueprint participant ProviderBP as Harvester/Vsphere BP participant Strategy participant Builder as MasterBuilder participant Helm User->>Controller: Create ClusterBlueprint Controller->>InfraBP: 1. Get Infra & Quota InfraBP-->>Controller: ProviderRef (Kind="HarvesterBlueprint") note over Controller: Dynamic Switching Logic alt Kind is Harvester Controller->>ProviderBP: 2. Get Harvester Config Controller->>Strategy: 3. Init HarvesterStrategy else Kind is Vsphere Controller->>ProviderBP: 2. Get Vsphere Config Controller->>Strategy: 3. Init VsphereStrategy end Controller->>Builder: 4. Build(Strategy) Builder->>Strategy: GenerateNodePools() Strategy-->>Builder: [Pool A, Pool B] Builder-->>Controller: map[values] Controller->>Helm: 5. Apply(values)