mirror of
https://relay.ngit.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp.git
synced 2026-10-05 15:08:24 +00:00
Adds the first GRASP-06 compliance test using TDD: the /prs/<npub>/<id>.git namespace MUST return 404 unless NIP-11 advertises GRASP-06 in supported_grasps. The test runs in two isolated harnesses driven by new macros isolated_test_no_grasp_06! and isolated_test_with_grasp_06!, the latter setting NGIT_GRASP06_ENABLE=true on the spawned relay. Both variants currently pass against the pre-implementation relay (gate holds trivially) and will catch any future regression that ships /prs/ routing without matching NIP-11 advertisement, or vice versa. Scaffolding: - new grasp-audit/src/specs/grasp06/ module mirroring grasp01/ layout - generalised TestResult::new via SpecRefStr trait so per-spec SpecRef enums can plug in without touching the result module - TestRelay gains start_with_grasp_06_enabled() and a private start_with_all_options() to keep the option matrix in one place