{ "version": 1, "features": [ { "name": "parent.enabled", "description": "Parent feature that is always enabled", "enabled": true, "strategies": [ { "name": "default" } ] }, { "name": "parent.disabled", "description": "Parent feature that is always disabled", "enabled": false, "strategies": [ { "name": "default" } ] }, { "name": "parent.with.variant", "description": "Parent feature with variant", "enabled": true, "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "variants": [ { "name": "parent.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.with.constraint", "description": "Parent feature with constraint", "enabled": true, "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "constraints": [ { "contextName": "environment", "operator": "IN", "values": [ "prod" ] } ], "variants": [ { "name": "parent.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "child.with.matching.constraint", "description": "Child with parent matching constraint", "enabled": true, "dependencies": [ { "feature": "parent.with.constraint" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "constraints": [ { "contextName": "environment", "operator": "IN", "values": [ "prod" ] } ], "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "child.with.non.matching.constraint", "description": "Child with parent not matching constraint", "enabled": true, "dependencies": [ { "feature": "parent.with.constraint" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "constraints": [ { "contextName": "environment", "operator": "IN", "values": [ "dev" ] } ], "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.with.cycle", "description": "Parent with cycle to child", "enabled": true, "dependencies": [ { "feature": "child.with.cycle" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "variants": [ { "name": "parent.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "child.with.cycle", "description": "Child with cycle to parent", "enabled": true, "dependencies": [ { "feature": "parent.with.cycle" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "variants": [ { "name": "parent.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "child.with.transitive.dependency", "description": "Child with transitive dependency", "enabled": true, "dependencies": [ { "feature": "parent.enabled.child.enabled" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "parent" }, "variants": [ { "name": "parent.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.enabled.child.enabled", "description": "Parent enabled, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.enabled" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.enabled.child.disabled", "description": "Parent enabled, child disabled", "enabled": false, "dependencies": [ { "feature": "parent.enabled" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.disabled.child.enabled", "description": "Parent disabled, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.disabled" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.disabled.child.disabled", "description": "Parent disabled, child disabled", "enabled": false, "dependencies": [ { "feature": "parent.disabled" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.default.variant.child.enabled", "description": "Parent enabled with no explicit variant, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.enabled", "variants": [ "disabled" ] } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.disabled.satisfied.child.enabled", "description": "Parent disabled expectation satisfied, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.disabled", "enabled": false } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.disabled.not.satisfied.child.enabled", "description": "Parent disabled expectation not satisfied, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.enabled", "enabled": false } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.single.variant.child.enabled", "description": "Parent single variant match, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.with.variant", "variants": [ "parent.variant" ] } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.multiple.variants.child.enabled", "description": "Parent multiples variants match, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.with.variant", "variants": [ "parent.variant", "nonmatching.variant" ] } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.empty.variants.child.enabled", "description": "Parent empty variants match, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.with.variant", "variants": [] } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parent.non.matching.variant.child.enabled", "description": "Parent non matching variant, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.with.variant", "variants": [ "nonmatching.variant" ] } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "multiple.parents.satisfied.child.enabled", "description": "Multiple parents satisfied, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.enabled" }, { "feature": "parent.disabled", "enabled": false } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "multiple.parents.not.satisfied.child.enabled", "description": "Multiple parents not satisfied, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.enabled" }, { "feature": "parent.disabled" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] }, { "name": "parents.not.exist.child.enabled", "description": "Parent does not exist, child enabled", "enabled": true, "dependencies": [ { "feature": "parent.not.exist" } ], "strategies": [ { "name": "flexibleRollout", "parameters": { "rollout": "100", "stickiness": "default", "groupId": "groupId" }, "variants": [ { "name": "child.variant", "weight": 1, "payload": { "type": "string", "value": "variantValue" } } ] } ] } ] }