{
  "title": "Bound a conversion share when some outcomes are unknown",
  "synthetic": true,
  "inputs": {
    "total": 1000,
    "success": 200,
    "unknown": 100
  },
  "outputs": [
    {
      "label": "Lower success bound %",
      "actual": 20,
      "expected": 20,
      "passed": true
    },
    {
      "label": "Upper success bound %",
      "actual": 30,
      "expected": 30,
      "passed": true
    },
    {
      "label": "Known-only success %",
      "actual": 22.22222222222222,
      "expected": 22.22222222222222,
      "passed": true
    }
  ],
  "constraints": [
    "v.success+v.unknown<=v.total",
    "v.unknown<v.total"
  ],
  "formulas": [
    {
      "label": "Lower success bound %",
      "javascript": "100*v.success/v.total"
    },
    {
      "label": "Upper success bound %",
      "javascript": "100*(v.success+v.unknown)/v.total"
    },
    {
      "label": "Known-only success %",
      "javascript": "100*v.success/(v.total-v.unknown)"
    }
  ],
  "limits": "The bounds require a correct eligible population and mutually exclusive states. They do not identify why signal is missing or model privacy-related suppression, attribution eligibility or selection bias."
}
