mirror of
https://relay.ngit.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp.git
synced 2026-10-05 15:08:24 +00:00
A PR event accepted under the GRASP-06 relaxation (un-announced coord, clone tag names this relay's /prs/ endpoint) must land in purgatory and not be broadcast until the matching refs/nostr/<id> push arrives. Spec: 06.md lines 21–24 in combination with GRASP-01 line 22. The existing acceptance test test_pr_event_accepted_when_clone_tag_names_prs_endpoint asserts the relay returned OK but discards the served-vs-purgatory bit returned by send_event_and_note_purgatory. A future regression that short-circuited the relaxation into WritePolicyResult::Accept would still pass that test while quietly leaking orphan PR events before their git data exists anywhere on this relay. The new test captures the in_purgatory bool and asserts it. Pattern mirrors GRASP-01's test_pr_event_accepted_into_purgatory_and_isnt_served. Shares the same SpecRef (Grasp06RelaxAcceptPrEvent) — the report renderer groups multiple tests per requirement, so this becomes a second check under the same spec line.