{
  "_meta": {
    "generated": "2026-09-07T03:18:56.223Z",
    "tasks": "/Volumes/MacMiniExtra/Projects/boats/server/inference/runs/ai-recovery-2026-09-06/tasks.json",
    "proposalsDir": "/private/tmp/claude-501/-Volumes-MacMiniExtra-Projects-boats/1ef421dd-c1fb-4014-bc23-89ca88c8b625/scratchpad/pipeline-recover",
    "nTasks": 88,
    "signoff": "Alex boats chat 2026-09-06 23:10 — test-only, no production/model change",
    "raw_scorer_mirrored": "scratchpad/pipeline-recover/score_all.py",
    "rules": {
      "geometryViolation": "server/pipeline/stripeFilters.js::isGeometryViolation (normalized pts + real W,H)",
      "crossing": "server/stripeMetrics.js::checkStripeCrossing (drop proposal crossing a higher-conf kept proposal)",
      "note": "isGeometryViolation contract is NORMALIZED coords, not pixels as the task text said."
    },
    "capFraction": 0.03
  },
  "engines": {
    "Claude": {
      "dir": "claude-out",
      "raw": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 32,
            "recoveryRate": 0.7804878048780488,
            "falseAdds": 10,
            "falsePerPhoto": 0.2631578947368421,
            "covMedianPct": 0.45830104436006724,
            "photos": 38
          },
          "B": {
            "targets": 50,
            "recovered": 41,
            "recoveryRate": 0.82,
            "falseAdds": 11,
            "falsePerPhoto": 0.22448979591836735,
            "covMedianPct": 1.1880935395446623,
            "photos": 49
          }
        },
        "all": {
          "targets": 91,
          "recovered": 73,
          "recoveryRate": 0.8021978021978022,
          "falseAdds": 21,
          "falsePerPhoto": 0.2413793103448276,
          "covMedianPct": 0.8186500300105217,
          "photos": 87
        }
      },
      "rule": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 30,
            "recoveryRate": 0.7317073170731707,
            "falseAdds": 10,
            "falsePerPhoto": 0.2631578947368421,
            "covMedianPct": 0.45941125681768463,
            "photos": 38
          },
          "B": {
            "targets": 50,
            "recovered": 41,
            "recoveryRate": 0.82,
            "falseAdds": 11,
            "falsePerPhoto": 0.22448979591836735,
            "covMedianPct": 1.1880935395446623,
            "photos": 49
          }
        },
        "all": {
          "targets": 91,
          "recovered": 71,
          "recoveryRate": 0.7802197802197802,
          "falseAdds": 21,
          "falsePerPhoto": 0.2413793103448276,
          "covMedianPct": 0.8228068431981783,
          "photos": 87
        }
      },
      "linesLostToRules": {
        "geometry-violation": 3,
        "crosses-kept-proposal": 0
      }
    },
    "GPT-5.1": {
      "dir": "gpt51-out",
      "raw": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 5,
            "recoveryRate": 0.12195121951219512,
            "falseAdds": 30,
            "falsePerPhoto": 0.7894736842105263,
            "covMedianPct": 2.361034661995852,
            "photos": 38
          },
          "B": {
            "targets": 51,
            "recovered": 6,
            "recoveryRate": 0.11764705882352941,
            "falseAdds": 49,
            "falsePerPhoto": 0.98,
            "covMedianPct": 2.1697885832201127,
            "photos": 50
          }
        },
        "all": {
          "targets": 92,
          "recovered": 11,
          "recoveryRate": 0.11956521739130435,
          "falseAdds": 79,
          "falsePerPhoto": 0.8977272727272727,
          "covMedianPct": 2.245142612042617,
          "photos": 88
        }
      },
      "rule": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 5,
            "recoveryRate": 0.12195121951219512,
            "falseAdds": 29,
            "falsePerPhoto": 0.7631578947368421,
            "covMedianPct": 2.361034661995852,
            "photos": 38
          },
          "B": {
            "targets": 51,
            "recovered": 6,
            "recoveryRate": 0.11764705882352941,
            "falseAdds": 48,
            "falsePerPhoto": 0.96,
            "covMedianPct": 2.1697885832201127,
            "photos": 50
          }
        },
        "all": {
          "targets": 92,
          "recovered": 11,
          "recoveryRate": 0.11956521739130435,
          "falseAdds": 77,
          "falsePerPhoto": 0.875,
          "covMedianPct": 2.245142612042617,
          "photos": 88
        }
      },
      "linesLostToRules": {
        "geometry-violation": 2,
        "crosses-kept-proposal": 0
      }
    },
    "Gemini 3.1 Pro": {
      "dir": "gemini31pro-out",
      "raw": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 23,
            "recoveryRate": 0.5609756097560976,
            "falseAdds": 15,
            "falsePerPhoto": 0.39473684210526316,
            "covMedianPct": 0.6400195274443334,
            "photos": 38
          },
          "B": {
            "targets": 51,
            "recovered": 34,
            "recoveryRate": 0.6666666666666666,
            "falseAdds": 23,
            "falsePerPhoto": 0.46,
            "covMedianPct": 0.6571774712358489,
            "photos": 50
          }
        },
        "all": {
          "targets": 92,
          "recovered": 57,
          "recoveryRate": 0.6195652173913043,
          "falseAdds": 38,
          "falsePerPhoto": 0.4318181818181818,
          "covMedianPct": 0.6447920379778398,
          "photos": 88
        }
      },
      "rule": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 23,
            "recoveryRate": 0.5609756097560976,
            "falseAdds": 15,
            "falsePerPhoto": 0.39473684210526316,
            "covMedianPct": 0.6400195274443334,
            "photos": 38
          },
          "B": {
            "targets": 51,
            "recovered": 33,
            "recoveryRate": 0.6470588235294118,
            "falseAdds": 22,
            "falsePerPhoto": 0.44,
            "covMedianPct": 0.6641622214352099,
            "photos": 50
          }
        },
        "all": {
          "targets": 92,
          "recovered": 56,
          "recoveryRate": 0.6086956521739131,
          "falseAdds": 37,
          "falsePerPhoto": 0.42045454545454547,
          "covMedianPct": 0.6474923795071639,
          "photos": 88
        }
      },
      "linesLostToRules": {
        "geometry-violation": 1,
        "crosses-kept-proposal": 0
      }
    },
    "Nano Banana Pro": {
      "dir": "banana-out",
      "raw": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 20,
            "recoveryRate": 0.4878048780487805,
            "falseAdds": 20,
            "falsePerPhoto": 0.5263157894736842,
            "covMedianPct": 1.4329487824142957,
            "photos": 38
          },
          "B": {
            "targets": 51,
            "recovered": 18,
            "recoveryRate": 0.35294117647058826,
            "falseAdds": 29,
            "falsePerPhoto": 0.58,
            "covMedianPct": 0.9908430574094389,
            "photos": 50
          }
        },
        "all": {
          "targets": 92,
          "recovered": 38,
          "recoveryRate": 0.41304347826086957,
          "falseAdds": 49,
          "falsePerPhoto": 0.5568181818181818,
          "covMedianPct": 1.0710746359419572,
          "photos": 88
        }
      },
      "rule": {
        "byArm": {
          "A": {
            "targets": 41,
            "recovered": 7,
            "recoveryRate": 0.17073170731707318,
            "falseAdds": 6,
            "falsePerPhoto": 0.15789473684210525,
            "covMedianPct": 0.3989423159342723,
            "photos": 38
          },
          "B": {
            "targets": 51,
            "recovered": 12,
            "recoveryRate": 0.23529411764705882,
            "falseAdds": 13,
            "falsePerPhoto": 0.26,
            "covMedianPct": 0.8781144983501508,
            "photos": 50
          }
        },
        "all": {
          "targets": 92,
          "recovered": 19,
          "recoveryRate": 0.20652173913043478,
          "falseAdds": 19,
          "falsePerPhoto": 0.2159090909090909,
          "covMedianPct": 0.7028372370707463,
          "photos": 88
        }
      },
      "linesLostToRules": {
        "geometry-violation": 43,
        "crosses-kept-proposal": 0
      }
    }
  }
}