{
  "captured": "2026-09-20T20:06:12.729Z",
  "source": "test/fixtures/order-service",
  "files": [
    "auth.py",
    "cart.py",
    "checkout.py",
    "inventory.py",
    "storage.py"
  ],
  "scan": {
    "command": "perch scan --filter type=defect,security",
    "args": [
      "scan",
      "--filter",
      "type=defect,security"
    ],
    "code": 3,
    "stdout": "cart.py\n  ID        Line  Severity  Type    Confidence  Problem                     Method\n  287bfb9d    10  P1 (1.1)  defect         89%  off_by_one                  subtotal\n  287bfb9d    10  P1 (1.1)  defect         86%  does_not_do_what_it_claims  subtotal\n  48a02173    17  P1 (1.4)  defect         70%  off_by_one                  apply_discount\n  44c8d48a    23  P1 (1.2)  defect         72%  does_not_do_what_it_claims  is_eligible_for_free_sh…\n  44c8d48a    23  P1 (1.2)  defect         71%  inverted_condition          is_eligible_for_free_sh…\n  80d6ebbb    30  P2 (1.5)  defect         88%  unhandled_null              cheapest\n  80d6ebbb    30  P2 (1.5)  defect         77%  does_not_do_what_it_claims  cheapest\n\ninventory.py\n  ID        Line  Severity  Type    Confidence  Problem                     Method\n  0d0e3f8a     9  P1 (0.9)  defect         89%  wrong_return_value          reserve\n  0d0e3f8a     9  P1 (0.9)  defect         81%  does_not_do_what_it_claims  reserve\n  0d0e3f8a     9  P1 (0.9)  defect         72%  race_condition              reserve\n  225c1645    26  P1 (0.9)  defect         90%  bad_state_change            release_expired\n\nstorage.py\n  ID        Line  Severity  Type      Confidence  Problem                Method\n  5a623390    15  P1 (1.3)  defect           78%  error_ignored          load_order\n  5a623390    15  P1 (1.3)  security         71%  missing_authorization  load_order\n\ncheckout.py\n  ID        Line  Severity  Type    Confidence  Problem                     Method\n  bdc67421    15  P1 (0.8)  defect         82%  wrong_order                 place_order\n  ddc5c917    25  P1 (0.9)  defect         94%  does_not_do_what_it_claims  can_fulfil\n  ddc5c917    25  P1 (0.9)  defect         92%  wrong_return_value          can_fulfil\n  4f8bf5dc    31  P1 (0.7)  defect         70%  bad_state_change            refund\n\nauth.py\n  ID        Line  Severity  Type      Confidence  Problem         Method\n  c3ff1609     7  P1 (0.7)  security         78%  weak_crypto     token_for\n  c25aa687    14  P0 (0.4)  defect           73%  unhandled_null  cancel_order\n\n✖ 19 problems in 5 files, all failing\n",
    "stderr": "order-service at commit f735db7: 14 methods, read 14\n14 requests  42k tokens in / 8k out  $0.0017\n",
    "elapsedMs": 956
  },
  "security": {
    "command": "perch issues --filter type=security",
    "args": [
      "issues",
      "--filter",
      "type=security"
    ],
    "code": 0,
    "stdout": "ID        Method      Location       Type      Kind                                Severity\nc3ff1609  token_for   auth.py:7      security  weak_crypto 78%                     P1 (0.7)\n5a623390  load_order  storage.py:10  security  missing_authorization 71%, +1 more  P1 (1.3)\n",
    "stderr": "2 open issues match, out of 12\n",
    "elapsedMs": 170
  },
  "defects": {
    "command": "perch issues --filter type=defect --min 80",
    "args": [
      "issues",
      "--filter",
      "type=defect",
      "--min",
      "80"
    ],
    "code": 0,
    "stdout": "ID        Method           Location         Type    Kind                                    Severity\nddc5c917  can_fulfil       checkout.py:25   defect  does_not_do_what_it_claims 94%, +1 mo…  P1 (0.9)\n225c1645  release_expired  inventory.py:26  defect  bad_state_change 90%                    P1 (0.9)\n0d0e3f8a  reserve          inventory.py:9   defect  wrong_return_value 89%, +1 more         P1 (0.9)\n287bfb9d  subtotal         cart.py:10       defect  off_by_one 89%, +1 more                 P1 (1.1)\n80d6ebbb  cheapest         cart.py:30       defect  unhandled_null 88%                      P2 (1.5)\nbdc67421  place_order      checkout.py:15   defect  wrong_order 82%                         P1 (0.8)\n",
    "stderr": "6 open issues\n",
    "elapsedMs": 169
  }
}