{
  "schemaVersion": 1,
  "generatedAt": "2026-07-16",
  "appRevision": "37322d6+working-tree",
  "scope": "actual-input-analysis-examples",
  "validationStatement": "독립적인 착지, 탄착, 다음 원 정답이 없어 정확도 검증이나 백테스트로 사용하지 않습니다.",
  "privacy": {
    "originalsPublished": false,
    "metadataRemoved": true,
    "methods": [
      "crop",
      "opaque-mask",
      "privacy-safe-filename",
      "manual-visual-review"
    ]
  },
  "cases": [
    {
      "id": "case-drop-taego-palace",
      "tool": "drop",
      "input": {
        "publicPath": "/static/case-studies/drop-taego-palace-input.webp",
        "fileDate": "2026-05-02",
        "width": 1440,
        "height": 638
      },
      "analysis": {
        "runDate": "2026-07-15",
        "endpoint": "/api/drop/analyze",
        "algorithm": "U-Net V8 image recognition plus map matching and geometric drop calculation",
        "map": "Taego",
        "zoomLevel": 2,
        "mapMatchInliers": 190,
        "detected": [
          "one flight path",
          "one green target ping"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/drop-taego-palace-result.webp",
        "stableSpeedKmh": 177.0,
        "fastestSpeedKmh": 180.0,
        "targetDistanceM": 1008.0,
        "totalTimeS": 57.2,
        "planeTimeS": 19.1,
        "freefallTimeS": 24.8,
        "parachuteTimeS": 13.4,
        "targetAltitudeM": 23.0,
        "autoOpenAltitudeM": 271.0,
        "verticalStartBeforeTargetM": 149.0
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 착지 시간과 착지 위치를 별도로 기록하지 않았습니다."
      }
    },
    {
      "id": "case-mortar-rondo-waypoint",
      "tool": "mortar",
      "input": {
        "publicPath": "/static/case-studies/mortar-rondo-waypoint-input.webp",
        "fileDate": "2026-04-18",
        "width": 1320,
        "height": 900
      },
      "analysis": {
        "runDate": "2026-07-15",
        "endpoint": "/api/mortar/analyze",
        "algorithm": "U-Net V8 image recognition plus map matching and terrain-height distance correction",
        "map": "Rondo",
        "zoomLevel": 3,
        "mapMatchInliers": 119,
        "detected": [
          "one green waypoint",
          "two circular endpoints"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/mortar-rondo-waypoint-result.webp",
        "distance2dM": 457.9,
        "heightDifferenceM": 16.1,
        "adjustedDistanceM": 466.0,
        "endpointMethod": "circle/circle",
        "altitudeSource": "local terrain CSV"
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 발사와 탄착 위치를 별도로 기록하지 않았습니다."
      }
    },
    {
      "id": "case-zone-taego-phase2",
      "tool": "zone",
      "input": {
        "publicPath": "/static/case-studies/zone-taego-phase2-input.webp",
        "fileDate": "2026-05-01",
        "width": 1080,
        "height": 1080
      },
      "analysis": {
        "runDate": "2026-07-15",
        "endpoint": "/api/circle-match",
        "algorithm": "map and circle recognition plus conditional zone heatmap",
        "dataVersion": "42.1-ranked64-20260713",
        "map": "Taego",
        "phaseTransition": "2->3",
        "mapMatchInliers": 119,
        "detected": [
          "white safe-zone circle",
          "phase transition 2 to 3"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/zone-taego-phase2-result.webp",
        "currentCircleWaterPercent": 0.0,
        "candidateCoveragePercent": {
          "phase5": 15.8,
          "phase6": 8.9,
          "phase7": 4.0,
          "phase8": 2.1
        }
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 다음 안전구역 화면을 별도로 확보하지 않았습니다."
      }
    },
    {
      "id": "case-drop-sanhok-paradise",
      "tool": "drop",
      "input": {
        "publicPath": "/static/case-studies/drop-sanhok-paradise-input.webp",
        "fileDate": "2026-05-10",
        "width": 1440,
        "height": 720
      },
      "analysis": {
        "runDate": "2026-07-16",
        "endpoint": "/api/drop/analyze",
        "algorithm": "U-Net V8 image recognition plus map matching and geometric drop calculation",
        "map": "Sanhok",
        "zoomLevel": 3,
        "mapMatchInliers": 158,
        "detected": [
          "one flight path",
          "one yellow target ping"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/drop-sanhok-paradise-result.webp",
        "stableSpeedKmh": 217.0,
        "fastestSpeedKmh": 220.0,
        "targetDistanceM": 524.0,
        "totalTimeS": 34.4,
        "planeTimeS": 0.1,
        "freefallTimeS": 21.4,
        "parachuteTimeS": 13.0,
        "targetAltitudeM": 12.0,
        "autoOpenAltitudeM": 254.0,
        "verticalStartBeforeTargetM": 144.0
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 착지 시간과 착지 위치를 별도로 기록하지 않았습니다."
      }
    },
    {
      "id": "case-mortar-sanhok-bhan",
      "tool": "mortar",
      "input": {
        "publicPath": "/static/case-studies/mortar-sanhok-bhan-input.webp",
        "fileDate": "2026-04-20",
        "width": 1300,
        "height": 900
      },
      "analysis": {
        "runDate": "2026-07-16",
        "endpoint": "/api/mortar/analyze",
        "algorithm": "U-Net V8 image recognition plus map matching and terrain-height distance correction",
        "map": "Sanhok",
        "zoomLevel": 4,
        "mapMatchInliers": 76,
        "detected": [
          "one blue waypoint",
          "two line endpoints"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/mortar-sanhok-bhan-result.webp",
        "distance2dM": 251.0,
        "heightDifferenceM": 23.6,
        "adjustedDistanceM": 262.8,
        "endpointMethod": "shrink/shrink",
        "altitudeSource": "local terrain CSV"
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 발사와 탄착 위치를 별도로 기록하지 않았습니다."
      }
    },
    {
      "id": "case-zone-rondo-phase5",
      "tool": "zone",
      "input": {
        "publicPath": "/static/case-studies/zone-rondo-phase5-input.webp",
        "fileDate": "2026-04-19",
        "width": 1420,
        "height": 820
      },
      "analysis": {
        "runDate": "2026-07-16",
        "endpoint": "/api/circle-match",
        "algorithm": "map and circle recognition plus conditional zone heatmap",
        "dataVersion": "42.1-ranked64-20260713",
        "profile": "ranked",
        "map": "Rondo",
        "phaseTransition": "5->6",
        "mapMatchInliers": 153,
        "detected": [
          "white safe-zone circle",
          "phase transition 5 to 6"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/zone-rondo-phase5-result.webp",
        "currentCircleWaterPercent": 0.0,
        "candidateCoveragePercent": {
          "phase6": 64.8,
          "phase7": 33.1,
          "phase8": 18.5
        }
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 6~8페이즈 안전구역 화면을 별도로 확보하지 않았습니다."
      }
    },
    {
      "id": "case-drop-erangel-novorepnoye",
      "tool": "drop",
      "input": {
        "publicPath": "/static/case-studies/drop-erangel-novorepnoye-input.webp",
        "fileDate": "2026-04-18",
        "width": 1400,
        "height": 880
      },
      "analysis": {
        "runDate": "2026-07-16",
        "endpoint": "/api/drop/analyze",
        "algorithm": "U-Net V8 image recognition plus map matching and geometric drop calculation",
        "map": "Erangel",
        "zoomLevel": 3,
        "mapMatchInliers": 85,
        "detected": [
          "one flight path",
          "one yellow target ping",
          "one green target ping"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/drop-erangel-novorepnoye-result.webp",
        "yellow": {
          "stableSpeedKmh": 216.0,
          "fastestSpeedKmh": 219.0,
          "targetDistanceM": 545.0,
          "totalTimeS": 34.9,
          "verticalStartBeforeTargetM": 147.0
        },
        "green": {
          "stableSpeedKmh": 219.0,
          "fastestSpeedKmh": 222.0,
          "targetDistanceM": 492.0,
          "totalTimeS": 34.7,
          "verticalStartBeforeTargetM": 149.0
        }
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 착지 시간과 착지 위치를 별도로 기록하지 않았습니다."
      }
    },
    {
      "id": "case-mortar-rondo-test-track",
      "tool": "mortar",
      "input": {
        "publicPath": "/static/case-studies/mortar-rondo-test-track-input.webp",
        "fileDate": "2026-04-19",
        "width": 1250,
        "height": 650
      },
      "analysis": {
        "runDate": "2026-07-16",
        "endpoint": "/api/mortar/analyze",
        "algorithm": "U-Net V8 image recognition plus map matching and terrain-height distance correction",
        "map": "Rondo",
        "zoomLevel": 5,
        "mapMatchInliers": 156,
        "detected": [
          "one green waypoint",
          "two circular endpoints"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/mortar-rondo-test-track-result.webp",
        "distance2dM": 95.4,
        "heightDifferenceM": 20.1,
        "adjustedDistanceM": 105.5,
        "endpointMethod": "circle/circle",
        "altitudeSource": "local terrain CSV"
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 발사와 탄착 위치를 별도로 기록하지 않았습니다."
      }
    },
    {
      "id": "case-zone-miramar-phase2",
      "tool": "zone",
      "input": {
        "publicPath": "/static/case-studies/zone-miramar-phase2-input.webp",
        "fileDate": "2026-04-18",
        "width": 1080,
        "height": 600
      },
      "analysis": {
        "runDate": "2026-07-16",
        "endpoint": "/api/circle-match",
        "algorithm": "map and circle recognition plus conditional zone heatmap",
        "dataVersion": "42.1-ranked64-20260713",
        "profile": "ranked",
        "map": "Miramar",
        "phaseTransition": "2->3",
        "mapMatchInliers": 150,
        "detected": [
          "white safe-zone circle",
          "phase transition 2 to 3"
        ]
      },
      "processing": {
        "success": true,
        "failureReason": null
      },
      "result": {
        "publicPath": "/static/case-studies/zone-miramar-phase2-result.webp",
        "currentCircleWaterPercent": 0.0,
        "candidateCoveragePercent": {
          "phase5": 15.5,
          "phase6": 7.9,
          "phase7": 3.8,
          "phase8": 1.7
        }
      },
      "groundTruth": {
        "available": false,
        "reason": "실제 후속 안전지대 화면을 정답으로 별도 보관하지 않았습니다."
      }
    }
  ]
}
