{
  "boundary": "Conditional model; not SDK/app/hardware evidence",
  "count": 5,
  "cases": [
    {
      "case": "stable-present",
      "result": "PASS",
      "removal_ms": [],
      "arguments": {
        "threshold": 3
      },
      "trace": [
        {
          "ms": 0,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 300,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 400,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 500,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 600,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 700,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 800,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 900,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1000,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        }
      ]
    },
    {
      "case": "real-removal-at-50",
      "result": "PASS",
      "removal_ms": [
        500
      ],
      "arguments": {
        "threshold": 3,
        "removed_at": 50
      },
      "trace": [
        {
          "ms": 0,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 100,
          "physical_present": false,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 200,
          "physical_present": false,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 300,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 1
        },
        {
          "ms": 400,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 2
        },
        {
          "ms": 500,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 3
        },
        {
          "ms": 600,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 4
        },
        {
          "ms": 700,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 5
        },
        {
          "ms": 800,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 6
        },
        {
          "ms": 900,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 7
        },
        {
          "ms": 1000,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 8
        },
        {
          "ms": 1100,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 9
        },
        {
          "ms": 1200,
          "physical_present": false,
          "reported_code": "",
          "empty_count": 10
        }
      ]
    },
    {
      "case": "one-real-miss-n3",
      "result": "PASS",
      "removal_ms": [
        500
      ],
      "arguments": {
        "threshold": 3,
        "missing": [
          300
        ]
      },
      "trace": [
        {
          "ms": 0,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 300,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 1
        },
        {
          "ms": 400,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 2
        },
        {
          "ms": 500,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 3
        },
        {
          "ms": 600,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 700,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 800,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 900,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1000,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        }
      ]
    },
    {
      "case": "one-real-miss-n7",
      "result": "PASS",
      "removal_ms": [],
      "arguments": {
        "threshold": 7,
        "missing": [
          300
        ]
      },
      "trace": [
        {
          "ms": 0,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 300,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 1
        },
        {
          "ms": 400,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 2
        },
        {
          "ms": 500,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 3
        },
        {
          "ms": 600,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 700,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 800,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 900,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1000,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 1200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        }
      ]
    },
    {
      "case": "three-real-misses-n7",
      "result": "PASS",
      "removal_ms": [
        900
      ],
      "arguments": {
        "threshold": 7,
        "missing": [
          300,
          600,
          900
        ]
      },
      "trace": [
        {
          "ms": 0,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 100,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        },
        {
          "ms": 300,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 1
        },
        {
          "ms": 400,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 2
        },
        {
          "ms": 500,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 3
        },
        {
          "ms": 600,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 4
        },
        {
          "ms": 700,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 5
        },
        {
          "ms": 800,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 6
        },
        {
          "ms": 900,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 7
        },
        {
          "ms": 1000,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 8
        },
        {
          "ms": 1100,
          "physical_present": true,
          "reported_code": "",
          "empty_count": 9
        },
        {
          "ms": 1200,
          "physical_present": true,
          "reported_code": "A",
          "empty_count": 0
        }
      ]
    }
  ]
}
