{
  "head": "2f759f9415b46a7166215fa670d5b4fafeef615e",
  "source_sha256": {
    "app/src/main/java/com/cpt/zhct/weighting/utils/Constants.java": "6df52f31c7af08f7b600e14e2c6ed8603a6a054d7fa77b31f7c0a7a710d8c20e",
    "app/src/main/java/com/cpt/zhct/weighting/antiescape/AlarmType.java": "5777e51726e4fbc52df471a38d8b05a638a28b0dac728c54736e8d7b9606ae76",
    "app/src/main/java/com/cpt/zhct/weighting/antiescape/UnlockCodePolicy.java": "70f52d5e187de618e9ac81d89c1594d29c6ae46d317c9c15af32d98f87fe3c30",
    "app/src/main/java/com/cpt/zhct/weighting/antiescape/TrayRemovalConfirmationCountPolicy.java": "7687d025de591aa2010dde6808f8cb9b419ca0342c5a02afa4ccbda892c89f85",
    "app/src/main/java/com/cpt/zhct/weighting/antiescape/A02TrayClaimCodePolicy.java": "c31507c7a430af4c1f23ce4b4ab79818769e15e650ee75b320139c2b6528bed3",
    "app/src/test/java/com/cpt/zhct/weighting/antiescape/A02TrayClaimCodePolicyTest.java": "5cbd94089e034a68ed428e570746d2419786fa0cef8e869c4aa3f61e2601ccff",
    "app/src/main/java/com/cpt/zhct/weighting/activity/HomeActivity.java": "20cc1064c0045998523f5e82534a7d829ac02b166b427f3820823174a3ed3ab7"
  },
  "results": [
    "PASS Existing unmodified JUnit test: sendsOnlyOneQueryWhileTheSameTrayRemainsPresent",
    "PASS Existing unmodified JUnit test: usesConfiguredEmptyFrameCountBeforeAllowingSameTrayAgain",
    "PASS Existing unmodified JUnit test: allowsAnotherTrayWithoutWaitingForTheFirstTrayToClear",
    "PASS Actual A02 policy: normal repeated valid code resets prior empty count",
    "PASS Actual A02 policy: setting unchanged N preserves partial empty count",
    "PASS Actual A02 policy: changed N clears old empty count",
    "PASS Actual A02 route + original query guard: valid code during in-flight query does not break empty count",
    "PASS Actual A02 route: ignored manager code preserves empty count",
    "PASS Actual A03 route: different nonempty code resets original-tray removal counter, not identity-checked",
    "PASS Actual A03 route: waiting for manager card ignores empty input for original-tray removal"
  ],
  "result_count": 10,
  "boundary": "3 original JUnit test methods run unchanged with minimal Test/Assert compatibility shims, plus 7 actual policy/extracted control-route checks. Not a JUnit platform or Android/network/UI test. Claim method uses the exact leading source guard; subsequent UI/network side effects are replaced by a counter. All business source copies and classes were temporary and removed."
}
