Package 

Class ExperimentVariant


  • 
    public final class ExperimentVariant
    
                        

    A single experiment variant.

    SPEC-070-A F.10: Firestore-canonical key for variant data is payload (matching iOS ExperimentVariant.payload); legacy SDKs wrote config. The parser in RemoteConfigManager.parseExperiments accepts BOTH keys, preferring payload when set. The Kotlin field stays named config so all existing callers (e.g. ExperimentManager.getValue) keep working.

    SPEC-036-F §1.2 — configRef is the entity id this variant maps to: for the control it's the live active entity id (rendered via the surface index, no payload); for the treatment it's the materialized draft entity whose renderable config the server inlined into config/payload. isControl distinguishes the two. Both nullable for backward-compat. Decoded from the served config_ref / is_control keys.