{
  "unit": "decision_policy_on_test_predictions",
  "release_status": "block",
  "inputs": {
    "data_path": "data/decision_predictions.csv",
    "policy_path": "contracts/slice_decision_policy.json",
    "data_sha256": "18a9ab02683ed1f5b97eb0316efae9a0342fd4e63679dd327a40868e2bcc70b5",
    "policy_sha256": "96c1b1401974e023ac726b8f08e93bf0775c6f92d2509287137b97c9bb51d07c"
  },
  "policy": {
    "policy_id": "f8-c05-slice-decision-policy",
    "versión": "2026-06-07",
    "evaluation_split": "test",
    "threshold_source": "validation-v1-frozen-before-test",
    "score_field": "score",
    "label_field": "true_priority",
    "positive_label": 1,
    "decision_labels": {
      "positive": "priorizar",
      "negative": "normal",
      "review": "revisar"
    },
    "thresholds": {
      "positive_if_score_gte": 0.78,
      "negative_if_score_lt": 0.38
    },
    "audit_fields": [
      "product",
      "channel",
      "language",
      "access_need",
      "student_profile"
    ],
    "intersectional_slices": [
      [
        "language",
        "access_need"
      ],
      [
        "product",
        "access_need"
      ]
    ],
    "fields_not_for_model": [
      "access_need",
      "student_profile"
    ],
    "minimums": {
      "slice_n": 4,
      "positive_n": 2,
      "negative_n": 2
    },
    "costs": {
      "false_negative": 8.0,
      "false_positive": 3.0,
      "review": 1.2
    },
    "gates": {
      "min_global_safety_capture": 0.88,
      "max_global_miss_rate": 0.12,
      "max_auto_recall_gap": 0.25,
      "max_miss_rate_gap": 0.2,
      "max_false_positive_rate_gap": 0.25,
      "max_review_rate_gap": 0.35,
      "max_cost_per_case_gap": 2.0,
      "max_latency_p95_ms": 650
    },
    "critical_slices": [
      "access_need=si",
      "language=en",
      "product=practicas|access_need=si"
    ],
    "release_status_meaning": {
      "pass": "La política cumple gates mínimos y puede pasar a revisión final del equipo.",
      "review": "Hay señales que requieren mirar casos, ampliar muestra o ajustar el proceso antes de automatizar más.",
      "block": "La política no debe automatizarse en su forma actual."
    }
  },
  "overall": {
    "slice_id": "overall",
    "field": null,
    "value": null,
    "n": 36,
    "positives": 18,
    "negatives": 18,
    "tp": 8,
    "fp": 1,
    "fn": 4,
    "tn": 10,
    "review": 13,
    "automated": 23,
    "priority_rate": 0.25,
    "review_rate": 0.3611,
    "automation_rate": 0.6389,
    "auto_recall": 0.4444,
    "auto_recall_interval": [
      0.2456,
      0.6628
    ],
    "miss_rate": 0.2222,
    "safety_capture": 0.7778,
    "false_positive_rate": 0.0556,
    "precision": 0.8889,
    "cost_total": 50.6,
    "cost_per_case": 1.4056,
    "latency_p95_ms": 552.0
  },
  "slice_metrics": [
    {
      "slice_id": "product=becas",
      "field": "product",
      "value": "becas",
      "n": 9,
      "positives": 5,
      "negatives": 4,
      "tp": 2,
      "fp": 0,
      "fn": 0,
      "tn": 3,
      "review": 4,
      "automated": 5,
      "priority_rate": 0.2222,
      "review_rate": 0.4444,
      "automation_rate": 0.5556,
      "auto_recall": 0.4,
      "auto_recall_interval": [
        0.1176,
        0.7693
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 4.8,
      "cost_per_case": 0.5333,
      "latency_p95_ms": 505.0
    },
    {
      "slice_id": "product=matricula",
      "field": "product",
      "value": "matricula",
      "n": 9,
      "positives": 4,
      "negatives": 5,
      "tp": 2,
      "fp": 0,
      "fn": 1,
      "tn": 2,
      "review": 4,
      "automated": 5,
      "priority_rate": 0.2222,
      "review_rate": 0.4444,
      "automation_rate": 0.5556,
      "auto_recall": 0.5,
      "auto_recall_interval": [
        0.15,
        0.85
      ],
      "miss_rate": 0.25,
      "safety_capture": 0.75,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 12.8,
      "cost_per_case": 1.4222,
      "latency_p95_ms": 528.0
    },
    {
      "slice_id": "product=practicas",
      "field": "product",
      "value": "practicas",
      "n": 9,
      "positives": 5,
      "negatives": 4,
      "tp": 2,
      "fp": 0,
      "fn": 2,
      "tn": 2,
      "review": 3,
      "automated": 6,
      "priority_rate": 0.2222,
      "review_rate": 0.3333,
      "automation_rate": 0.6667,
      "auto_recall": 0.4,
      "auto_recall_interval": [
        0.1176,
        0.7693
      ],
      "miss_rate": 0.4,
      "safety_capture": 0.6,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 19.6,
      "cost_per_case": 2.1778,
      "latency_p95_ms": 548.0
    },
    {
      "slice_id": "product=titulos",
      "field": "product",
      "value": "titulos",
      "n": 9,
      "positives": 4,
      "negatives": 5,
      "tp": 2,
      "fp": 1,
      "fn": 1,
      "tn": 3,
      "review": 2,
      "automated": 7,
      "priority_rate": 0.3333,
      "review_rate": 0.2222,
      "automation_rate": 0.7778,
      "auto_recall": 0.5,
      "auto_recall_interval": [
        0.15,
        0.85
      ],
      "miss_rate": 0.25,
      "safety_capture": 0.75,
      "false_positive_rate": 0.2,
      "precision": 0.6667,
      "cost_total": 13.4,
      "cost_per_case": 1.4889,
      "latency_p95_ms": 560.0
    },
    {
      "slice_id": "channel=email",
      "field": "channel",
      "value": "email",
      "n": 12,
      "positives": 7,
      "negatives": 5,
      "tp": 5,
      "fp": 0,
      "fn": 1,
      "tn": 2,
      "review": 4,
      "automated": 8,
      "priority_rate": 0.4167,
      "review_rate": 0.3333,
      "automation_rate": 0.6667,
      "auto_recall": 0.7143,
      "auto_recall_interval": [
        0.3589,
        0.9178
      ],
      "miss_rate": 0.1429,
      "safety_capture": 0.8571,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 12.8,
      "cost_per_case": 1.0667,
      "latency_p95_ms": 552.0
    },
    {
      "slice_id": "channel=portal",
      "field": "channel",
      "value": "portal",
      "n": 15,
      "positives": 6,
      "negatives": 9,
      "tp": 1,
      "fp": 1,
      "fn": 3,
      "tn": 6,
      "review": 4,
      "automated": 11,
      "priority_rate": 0.1333,
      "review_rate": 0.2667,
      "automation_rate": 0.7333,
      "auto_recall": 0.1667,
      "auto_recall_interval": [
        0.0301,
        0.5635
      ],
      "miss_rate": 0.5,
      "safety_capture": 0.5,
      "false_positive_rate": 0.1111,
      "precision": 0.5,
      "cost_total": 31.8,
      "cost_per_case": 2.12,
      "latency_p95_ms": 548.0
    },
    {
      "slice_id": "channel=telefono",
      "field": "channel",
      "value": "telefono",
      "n": 9,
      "positives": 5,
      "negatives": 4,
      "tp": 2,
      "fp": 0,
      "fn": 0,
      "tn": 2,
      "review": 5,
      "automated": 4,
      "priority_rate": 0.2222,
      "review_rate": 0.5556,
      "automation_rate": 0.4444,
      "auto_recall": 0.4,
      "auto_recall_interval": [
        0.1176,
        0.7693
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 6.0,
      "cost_per_case": 0.6667,
      "latency_p95_ms": 560.0
    },
    {
      "slice_id": "language=ca",
      "field": "language",
      "value": "ca",
      "n": 10,
      "positives": 5,
      "negatives": 5,
      "tp": 2,
      "fp": 0,
      "fn": 2,
      "tn": 3,
      "review": 3,
      "automated": 7,
      "priority_rate": 0.2,
      "review_rate": 0.3,
      "automation_rate": 0.7,
      "auto_recall": 0.4,
      "auto_recall_interval": [
        0.1176,
        0.7693
      ],
      "miss_rate": 0.4,
      "safety_capture": 0.6,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 19.6,
      "cost_per_case": 1.96,
      "latency_p95_ms": 530.0
    },
    {
      "slice_id": "language=en",
      "field": "language",
      "value": "en",
      "n": 9,
      "positives": 4,
      "negatives": 5,
      "tp": 1,
      "fp": 0,
      "fn": 1,
      "tn": 2,
      "review": 5,
      "automated": 4,
      "priority_rate": 0.1111,
      "review_rate": 0.5556,
      "automation_rate": 0.4444,
      "auto_recall": 0.25,
      "auto_recall_interval": [
        0.0456,
        0.6994
      ],
      "miss_rate": 0.25,
      "safety_capture": 0.75,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 14.0,
      "cost_per_case": 1.5556,
      "latency_p95_ms": 560.0
    },
    {
      "slice_id": "language=es",
      "field": "language",
      "value": "es",
      "n": 17,
      "positives": 9,
      "negatives": 8,
      "tp": 5,
      "fp": 1,
      "fn": 1,
      "tn": 5,
      "review": 5,
      "automated": 12,
      "priority_rate": 0.3529,
      "review_rate": 0.2941,
      "automation_rate": 0.7059,
      "auto_recall": 0.5556,
      "auto_recall_interval": [
        0.2666,
        0.8112
      ],
      "miss_rate": 0.1111,
      "safety_capture": 0.8889,
      "false_positive_rate": 0.125,
      "precision": 0.8333,
      "cost_total": 17.0,
      "cost_per_case": 1.0,
      "latency_p95_ms": 528.0
    },
    {
      "slice_id": "access_need=no",
      "field": "access_need",
      "value": "no",
      "n": 24,
      "positives": 12,
      "negatives": 12,
      "tp": 8,
      "fp": 1,
      "fn": 0,
      "tn": 8,
      "review": 7,
      "automated": 17,
      "priority_rate": 0.375,
      "review_rate": 0.2917,
      "automation_rate": 0.7083,
      "auto_recall": 0.6667,
      "auto_recall_interval": [
        0.3906,
        0.8619
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0833,
      "precision": 0.8889,
      "cost_total": 11.4,
      "cost_per_case": 0.475,
      "latency_p95_ms": 480.0
    },
    {
      "slice_id": "access_need=si",
      "field": "access_need",
      "value": "si",
      "n": 12,
      "positives": 6,
      "negatives": 6,
      "tp": 0,
      "fp": 0,
      "fn": 4,
      "tn": 2,
      "review": 6,
      "automated": 6,
      "priority_rate": 0.0,
      "review_rate": 0.5,
      "automation_rate": 0.5,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.3903
      ],
      "miss_rate": 0.6667,
      "safety_capture": 0.3333,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 39.2,
      "cost_per_case": 3.2667,
      "latency_p95_ms": 560.0
    },
    {
      "slice_id": "student_profile=nuevo",
      "field": "student_profile",
      "value": "nuevo",
      "n": 18,
      "positives": 9,
      "negatives": 9,
      "tp": 3,
      "fp": 0,
      "fn": 2,
      "tn": 6,
      "review": 7,
      "automated": 11,
      "priority_rate": 0.1667,
      "review_rate": 0.3889,
      "automation_rate": 0.6111,
      "auto_recall": 0.3333,
      "auto_recall_interval": [
        0.1206,
        0.6458
      ],
      "miss_rate": 0.2222,
      "safety_capture": 0.7778,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 24.4,
      "cost_per_case": 1.3556,
      "latency_p95_ms": 548.0
    },
    {
      "slice_id": "student_profile=veterano",
      "field": "student_profile",
      "value": "veterano",
      "n": 18,
      "positives": 9,
      "negatives": 9,
      "tp": 5,
      "fp": 1,
      "fn": 2,
      "tn": 4,
      "review": 6,
      "automated": 12,
      "priority_rate": 0.3333,
      "review_rate": 0.3333,
      "automation_rate": 0.6667,
      "auto_recall": 0.5556,
      "auto_recall_interval": [
        0.2666,
        0.8112
      ],
      "miss_rate": 0.2222,
      "safety_capture": 0.7778,
      "false_positive_rate": 0.1111,
      "precision": 0.8333,
      "cost_total": 26.2,
      "cost_per_case": 1.4556,
      "latency_p95_ms": 560.0
    },
    {
      "slice_id": "language=ca|access_need=no",
      "field": "language+access_need",
      "value": "language=ca|access_need=no",
      "n": 6,
      "positives": 3,
      "negatives": 3,
      "tp": 2,
      "fp": 0,
      "fn": 0,
      "tn": 2,
      "review": 2,
      "automated": 4,
      "priority_rate": 0.3333,
      "review_rate": 0.3333,
      "automation_rate": 0.6667,
      "auto_recall": 0.6667,
      "auto_recall_interval": [
        0.2077,
        0.9385
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 2.4,
      "cost_per_case": 0.4,
      "latency_p95_ms": 480.0
    },
    {
      "slice_id": "language=ca|access_need=si",
      "field": "language+access_need",
      "value": "language=ca|access_need=si",
      "n": 4,
      "positives": 2,
      "negatives": 2,
      "tp": 0,
      "fp": 0,
      "fn": 2,
      "tn": 1,
      "review": 1,
      "automated": 3,
      "priority_rate": 0.0,
      "review_rate": 0.25,
      "automation_rate": 0.75,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.6576
      ],
      "miss_rate": 1.0,
      "safety_capture": 0.0,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 17.2,
      "cost_per_case": 4.3,
      "latency_p95_ms": 530.0
    },
    {
      "slice_id": "language=en|access_need=no",
      "field": "language+access_need",
      "value": "language=en|access_need=no",
      "n": 5,
      "positives": 2,
      "negatives": 3,
      "tp": 1,
      "fp": 0,
      "fn": 0,
      "tn": 2,
      "review": 2,
      "automated": 3,
      "priority_rate": 0.2,
      "review_rate": 0.4,
      "automation_rate": 0.6,
      "auto_recall": 0.5,
      "auto_recall_interval": [
        0.0945,
        0.9055
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 2.4,
      "cost_per_case": 0.48,
      "latency_p95_ms": 490.0
    },
    {
      "slice_id": "language=en|access_need=si",
      "field": "language+access_need",
      "value": "language=en|access_need=si",
      "n": 4,
      "positives": 2,
      "negatives": 2,
      "tp": 0,
      "fp": 0,
      "fn": 1,
      "tn": 0,
      "review": 3,
      "automated": 1,
      "priority_rate": 0.0,
      "review_rate": 0.75,
      "automation_rate": 0.25,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.6576
      ],
      "miss_rate": 0.5,
      "safety_capture": 0.5,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 11.6,
      "cost_per_case": 2.9,
      "latency_p95_ms": 560.0
    },
    {
      "slice_id": "language=es|access_need=no",
      "field": "language+access_need",
      "value": "language=es|access_need=no",
      "n": 13,
      "positives": 7,
      "negatives": 6,
      "tp": 5,
      "fp": 1,
      "fn": 0,
      "tn": 4,
      "review": 3,
      "automated": 10,
      "priority_rate": 0.4615,
      "review_rate": 0.2308,
      "automation_rate": 0.7692,
      "auto_recall": 0.7143,
      "auto_recall_interval": [
        0.3589,
        0.9178
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.1667,
      "precision": 0.8333,
      "cost_total": 6.6,
      "cost_per_case": 0.5077,
      "latency_p95_ms": 460.0
    },
    {
      "slice_id": "language=es|access_need=si",
      "field": "language+access_need",
      "value": "language=es|access_need=si",
      "n": 4,
      "positives": 2,
      "negatives": 2,
      "tp": 0,
      "fp": 0,
      "fn": 1,
      "tn": 1,
      "review": 2,
      "automated": 2,
      "priority_rate": 0.0,
      "review_rate": 0.5,
      "automation_rate": 0.5,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.6576
      ],
      "miss_rate": 0.5,
      "safety_capture": 0.5,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 10.4,
      "cost_per_case": 2.6,
      "latency_p95_ms": 528.0
    },
    {
      "slice_id": "product=becas|access_need=no",
      "field": "product+access_need",
      "value": "product=becas|access_need=no",
      "n": 7,
      "positives": 4,
      "negatives": 3,
      "tp": 2,
      "fp": 0,
      "fn": 0,
      "tn": 2,
      "review": 3,
      "automated": 4,
      "priority_rate": 0.2857,
      "review_rate": 0.4286,
      "automation_rate": 0.5714,
      "auto_recall": 0.5,
      "auto_recall_interval": [
        0.15,
        0.85
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 3.6,
      "cost_per_case": 0.5143,
      "latency_p95_ms": 470.0
    },
    {
      "slice_id": "product=becas|access_need=si",
      "field": "product+access_need",
      "value": "product=becas|access_need=si",
      "n": 2,
      "positives": 1,
      "negatives": 1,
      "tp": 0,
      "fp": 0,
      "fn": 0,
      "tn": 1,
      "review": 1,
      "automated": 1,
      "priority_rate": 0.0,
      "review_rate": 0.5,
      "automation_rate": 0.5,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.7935
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 1.2,
      "cost_per_case": 0.6,
      "latency_p95_ms": 505.0
    },
    {
      "slice_id": "product=matricula|access_need=no",
      "field": "product+access_need",
      "value": "product=matricula|access_need=no",
      "n": 7,
      "positives": 3,
      "negatives": 4,
      "tp": 2,
      "fp": 0,
      "fn": 0,
      "tn": 2,
      "review": 3,
      "automated": 4,
      "priority_rate": 0.2857,
      "review_rate": 0.4286,
      "automation_rate": 0.5714,
      "auto_recall": 0.6667,
      "auto_recall_interval": [
        0.2077,
        0.9385
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 3.6,
      "cost_per_case": 0.5143,
      "latency_p95_ms": 490.0
    },
    {
      "slice_id": "product=matricula|access_need=si",
      "field": "product+access_need",
      "value": "product=matricula|access_need=si",
      "n": 2,
      "positives": 1,
      "negatives": 1,
      "tp": 0,
      "fp": 0,
      "fn": 1,
      "tn": 0,
      "review": 1,
      "automated": 1,
      "priority_rate": 0.0,
      "review_rate": 0.5,
      "automation_rate": 0.5,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.7935
      ],
      "miss_rate": 1.0,
      "safety_capture": 0.0,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 9.2,
      "cost_per_case": 4.6,
      "latency_p95_ms": 528.0
    },
    {
      "slice_id": "product=practicas|access_need=no",
      "field": "product+access_need",
      "value": "product=practicas|access_need=no",
      "n": 5,
      "positives": 3,
      "negatives": 2,
      "tp": 2,
      "fp": 0,
      "fn": 0,
      "tn": 2,
      "review": 1,
      "automated": 4,
      "priority_rate": 0.4,
      "review_rate": 0.2,
      "automation_rate": 0.8,
      "auto_recall": 0.6667,
      "auto_recall_interval": [
        0.2077,
        0.9385
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.0,
      "precision": 1.0,
      "cost_total": 1.2,
      "cost_per_case": 0.24,
      "latency_p95_ms": 470.0
    },
    {
      "slice_id": "product=practicas|access_need=si",
      "field": "product+access_need",
      "value": "product=practicas|access_need=si",
      "n": 4,
      "positives": 2,
      "negatives": 2,
      "tp": 0,
      "fp": 0,
      "fn": 2,
      "tn": 0,
      "review": 2,
      "automated": 2,
      "priority_rate": 0.0,
      "review_rate": 0.5,
      "automation_rate": 0.5,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.6576
      ],
      "miss_rate": 1.0,
      "safety_capture": 0.0,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 18.4,
      "cost_per_case": 4.6,
      "latency_p95_ms": 548.0
    },
    {
      "slice_id": "product=titulos|access_need=no",
      "field": "product+access_need",
      "value": "product=titulos|access_need=no",
      "n": 5,
      "positives": 2,
      "negatives": 3,
      "tp": 2,
      "fp": 1,
      "fn": 0,
      "tn": 2,
      "review": 0,
      "automated": 5,
      "priority_rate": 0.6,
      "review_rate": 0.0,
      "automation_rate": 1.0,
      "auto_recall": 1.0,
      "auto_recall_interval": [
        0.3424,
        1
      ],
      "miss_rate": 0.0,
      "safety_capture": 1.0,
      "false_positive_rate": 0.3333,
      "precision": 0.6667,
      "cost_total": 3.0,
      "cost_per_case": 0.6,
      "latency_p95_ms": 435.0
    },
    {
      "slice_id": "product=titulos|access_need=si",
      "field": "product+access_need",
      "value": "product=titulos|access_need=si",
      "n": 4,
      "positives": 2,
      "negatives": 2,
      "tp": 0,
      "fp": 0,
      "fn": 1,
      "tn": 1,
      "review": 2,
      "automated": 2,
      "priority_rate": 0.0,
      "review_rate": 0.5,
      "automation_rate": 0.5,
      "auto_recall": 0.0,
      "auto_recall_interval": [
        0,
        0.6576
      ],
      "miss_rate": 0.5,
      "safety_capture": 0.5,
      "false_positive_rate": 0.0,
      "precision": null,
      "cost_total": 10.4,
      "cost_per_case": 2.6,
      "latency_p95_ms": 560.0
    }
  ],
  "disparities": {
    "auto_recall": {
      "min_slice": "access_need=si",
      "min": 0.0,
      "max_slice": "product=titulos|access_need=no",
      "max": 1.0,
      "gap": 1.0,
      "count": 26
    },
    "miss_rate": {
      "min_slice": "product=becas",
      "min": 0.0,
      "max_slice": "product=practicas|access_need=si",
      "max": 1.0,
      "gap": 1.0,
      "count": 26
    },
    "false_positive_rate": {
      "min_slice": "product=becas",
      "min": 0.0,
      "max_slice": "product=titulos|access_need=no",
      "max": 0.3333,
      "gap": 0.3333,
      "count": 26
    },
    "review_rate": {
      "min_slice": "product=titulos|access_need=no",
      "min": 0.0,
      "max_slice": "language=en|access_need=si",
      "max": 0.75,
      "gap": 0.75,
      "count": 26
    },
    "priority_rate": {
      "min_slice": "access_need=si",
      "min": 0.0,
      "max_slice": "product=titulos|access_need=no",
      "max": 0.6,
      "gap": 0.6,
      "count": 26
    },
    "cost_per_case": {
      "min_slice": "product=practicas|access_need=no",
      "min": 0.24,
      "max_slice": "product=practicas|access_need=si",
      "max": 4.6,
      "gap": 4.36,
      "count": 26
    }
  },
  "flags": [
    {
      "severity": "block",
      "kind": "global_safety_capture",
      "message": "La captura global de casos prioritarios queda por debajo del mínimo.",
      "value": 0.7778,
      "threshold": 0.88
    },
    {
      "severity": "block",
      "kind": "global_miss_rate",
      "message": "La tasa global de casos prioritarios enviados a flujo normal es demasiado alta.",
      "value": 0.2222,
      "threshold": 0.12
    },
    {
      "severity": "review",
      "kind": "auto_recall_gap",
      "message": "La diferencia entre slices en auto_recall supera el gate.",
      "value": 1.0,
      "threshold": 0.25,
      "min_slice": "access_need=si",
      "max_slice": "product=titulos|access_need=no"
    },
    {
      "severity": "review",
      "kind": "miss_rate_gap",
      "message": "La diferencia entre slices en miss_rate supera el gate.",
      "value": 1.0,
      "threshold": 0.2,
      "min_slice": "product=becas",
      "max_slice": "product=practicas|access_need=si"
    },
    {
      "severity": "review",
      "kind": "false_positive_rate_gap",
      "message": "La diferencia entre slices en false_positive_rate supera el gate.",
      "value": 0.3333,
      "threshold": 0.25,
      "min_slice": "product=becas",
      "max_slice": "product=titulos|access_need=no"
    },
    {
      "severity": "review",
      "kind": "review_rate_gap",
      "message": "La diferencia entre slices en review_rate supera el gate.",
      "value": 0.75,
      "threshold": 0.35,
      "min_slice": "product=titulos|access_need=no",
      "max_slice": "language=en|access_need=si"
    },
    {
      "severity": "review",
      "kind": "cost_per_case_gap",
      "message": "La diferencia entre slices en cost_per_case supera el gate.",
      "value": 4.36,
      "threshold": 2.0,
      "min_slice": "product=practicas|access_need=no",
      "max_slice": "product=practicas|access_need=si"
    },
    {
      "severity": "block",
      "kind": "critical_slice_miss",
      "slice_id": "language=en",
      "message": "Un slice crítico contiene casos prioritarios enviados a flujo normal.",
      "value": 0.25,
      "threshold": 0
    },
    {
      "severity": "block",
      "kind": "critical_slice_miss",
      "slice_id": "access_need=si",
      "message": "Un slice crítico contiene casos prioritarios enviados a flujo normal.",
      "value": 0.6667,
      "threshold": 0
    },
    {
      "severity": "review",
      "kind": "small_slice",
      "slice_id": "product=becas|access_need=si",
      "message": "Slice con muestra insuficiente para sostener una conclusion.",
      "value": 2,
      "threshold": 4
    },
    {
      "severity": "review",
      "kind": "small_slice",
      "slice_id": "product=matricula|access_need=si",
      "message": "Slice con muestra insuficiente para sostener una conclusion.",
      "value": 2,
      "threshold": 4
    },
    {
      "severity": "block",
      "kind": "critical_slice_miss",
      "slice_id": "product=practicas|access_need=si",
      "message": "Un slice crítico contiene casos prioritarios enviados a flujo normal.",
      "value": 1.0,
      "threshold": 0
    }
  ]
}
