# Scoped closure audit: EAP 0.1.0 genesis/basis-swap and fresh-review fixes **Verdict: BLOCK on this exact candidate.** The fix is narrow and cheap. Everything else in scope looks acceptable with the stated limits. ## Input integrity - **Truncation:** none observed. Both files end with their `END FILE` markers. - **Test count:** I counted 76 test methods in `Tests`, numbered 1 `test_three_profiles` through 76 `test_canonical_encoding_control_and_unicode_vector`, plus the fixture helpers. - **Contract excerpts:** received through `END EXCERPTS`. - **Final sentinel:** `AP-CLOSURE-76-FULL-TESTS` received. - **Not verified:** I executed nothing. I could not check the stated SHA-256 values or the reported 76 passes and native results. - **Omitted context:** the schema, native harness and full contract were not re-read. This verdict does not ratify them. ## Blocking finding: fresh-review timing uses the revision receipt, so metadata revisions restore the bypass In `semantic`, the two new timing guards compare against `a['recordedAt']`. That is the receipt of the pinned Activity *revision*, not of the review event: ```python require(old is None or old['recordedAt']