{
  "captured": "2026-10-14T19:51:22.363859+00:00",
  "model": "jev-latest",
  "identity": {
    "fixed_sha256": "28abd28c674879f4d496c8f0b1da2cfc131159854abecd29b4377872905802eb",
    "broken_sha256": "36a759af31ce4e7a9fbe37c15be80ba2cd10086d6a067daeec8ab89265cd3cd9",
    "rule_sha256": "dec312b6ff7652b45f55f598d32b7f1b22d0aa5abab5505c4bc20cf19f1c3a6d"
  },
  "rule": "In load, both the successful response and the caught-error path return before setState when requestGeneration differs from generation. Each completion path checks requestGeneration != generation together with !mounted. Checking only mounted permits an older request to overwrite the current state.",
  "results": {
    "broken": {
      "command": [
        "perch",
        "check",
        "lib/order_search.dart",
        "--rules",
        "search-generation-current",
        "--json"
      ],
      "exit_code": 3,
      "stdout": "{\n  \"path\": \"lib/order_search.dart\",\n  \"name\": \"lib/order_search.dart\",\n  \"line\": 1,\n  \"checked\": 1,\n  \"broken\": [\n    {\n      \"rule\": \"search-generation-current\",\n      \"said\": \"In load, both the successful response and the caught-error path return before setState when requestGeneration differs from generation. Each completion path checks requestGeneration != generation together with !mounted. Checking only mounted permits an older request to overwrite the current state.\",\n      \"broken\": 0.9,\n      \"floor\": 0.5\n    }\n  ],\n  \"issues\": null,\n  \"note\": null,\n  \"clean\": false\n}\n",
      "stderr": ""
    },
    "fixed": {
      "command": [
        "perch",
        "check",
        "lib/order_search.dart",
        "--rules",
        "search-generation-current",
        "--json"
      ],
      "exit_code": 0,
      "stdout": "{\n  \"path\": \"lib/order_search.dart\",\n  \"name\": \"lib/order_search.dart\",\n  \"line\": 1,\n  \"checked\": 1,\n  \"broken\": [],\n  \"issues\": null,\n  \"note\": null,\n  \"clean\": true\n}\n",
      "stderr": ""
    }
  }
}
