<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/grasp-audit/src/specs/grasp01_nostr_relay.rs, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/atom?h=master</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/'/>
<updated>2025-11-05T20:25:38+00:00</updated>
<entry>
<title>restructure grasp01 audit tests and add event acceptance</title>
<updated>2025-11-05T20:25:38+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T20:13:22+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=396da002fefeeb4549e11ff51abf824e91a6ed88'/>
<id>urn:sha1:396da002fefeeb4549e11ff51abf824e91a6ed88</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test: consolidate state announcement tests with GRASP-01 spec format</title>
<updated>2025-11-05T14:45:02+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T14:43:30+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=b22cb23928ef799b0a5d362003d3084d2ab267b4'/>
<id>urn:sha1:b22cb23928ef799b0a5d362003d3084d2ab267b4</id>
<content type='text'>
Refactor repository state announcement testing to better match GRASP-01
specification requirements:

- Consolidate multiple refs testing into accept_valid_repo_state_announcement
- Remove separate accept_state_announcement_multiple_refs test (redundant)
- Update tag format to match spec: use git reference as tag kind
  Example: ["refs/heads/main", "&lt;commit-sha&gt;"] instead of ["r", "refs/heads/main", "&lt;commit-sha&gt;"]
- Ensure repo announcement (kind 30617) is sent before state announcement
- Test multiple branch refs (main, develop), tag refs (v1.0.0), and HEAD
- Simplify test validation by removing redundant assertions

This approach provides better spec compliance and reduces test redundancy
while maintaining comprehensive coverage of multiple reference scenarios.
</content>
</entry>
<entry>
<title>feat(grasp-audit): implement tests #3 and #4 for GRASP-01 compliance</title>
<updated>2025-11-05T13:37:26+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T13:37:26+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=ebdf1779697e1b3d0fa0e1068af4340a16eabf2b'/>
<id>urn:sha1:ebdf1779697e1b3d0fa0e1068af4340a16eabf2b</id>
<content type='text'>
- Add test_reject_repo_announcement_missing_relays_tag (test #3)
  Verifies that repo announcements without required 'relays' tag are rejected

- Add test_accept_valid_repo_state_announcement (test #4)
  Verifies that valid repo state announcements with all required tags are accepted

Both tests verified passing with test-ngit-relay.sh
</content>
</entry>
<entry>
<title>Refactor: abstract announcement event creation into AuditClient helper</title>
<updated>2025-11-05T12:50:03+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T12:50:03+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=64a86de9fc5ded51a1b5405223fc5dce16839fef'/>
<id>urn:sha1:64a86de9fc5ded51a1b5405223fc5dce16839fef</id>
<content type='text'>
- Add create_repo_announcement() method to AuditClient
- Remove duplicate code from nip01_smoke.rs
- Update grasp01_nostr_relay.rs to use centralized helper
- All tests passing (GRASP-01: 4/18, NIP-01: 6/6)
</content>
</entry>
<entry>
<title>feat(grasp-audit): improve test infrastructure and error handling</title>
<updated>2025-11-05T11:48:35+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T11:48:35+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=d9c9ef2ff92b687f5ff5585b08b2eead8f139a02'/>
<id>urn:sha1:d9c9ef2ff92b687f5ff5585b08b2eead8f139a02</id>
<content type='text'>
- Fix compilation error in test setup (use .expect() instead of ?)
- Add comprehensive error messages with troubleshooting guidance
- Implement connection verification in AuditClient with retry logic
- Update AGENTS.md with testing troubleshooting section
- Verify all changes: 4/18 tests passing as expected

Error messages now include:
- Specific context about failures (event IDs, repo IDs, URLs)
- Example commands for resolution (docker, nak verification)
- References to helper scripts (test-ngit-relay.sh)

Tests compile cleanly and run successfully against ngit-relay.
</content>
</entry>
<entry>
<title>docs: fixed desired grasp-audit behaviour in README.md</title>
<updated>2025-11-05T11:09:21+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T11:05:53+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=ff00d106da0abd734a233e6445cdd81ffb5f1d9f'/>
<id>urn:sha1:ff00d106da0abd734a233e6445cdd81ffb5f1d9f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: hardcoded port</title>
<updated>2025-11-05T10:19:56+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T10:19:56+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=86077d24e7cc8ff9d474a5947f0151d005f9f747'/>
<id>urn:sha1:86077d24e7cc8ff9d474a5947f0151d005f9f747</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(grasp-audit): implement test_reject_repo_announcement_missing_clone_tag</title>
<updated>2025-11-05T08:33:38+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T08:33:38+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=fa9753e020afaefea96d106259770b6c836d1111'/>
<id>urn:sha1:fa9753e020afaefea96d106259770b6c836d1111</id>
<content type='text'>
- Tests that relay rejects repo announcements without service in clone tag
- Validates GRASP-01 line 5 requirement
- Tested against ngit-relay on port 18081
- Test passes (4/18 GRASP-01 Nostr relay tests now passing)
</content>
</entry>
<entry>
<title>feat(grasp-audit): implement test_accept_valid_repo_announcement</title>
<updated>2025-11-05T08:31:24+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T08:31:24+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=c2183f156a767c1443c7ae62954fe8192e349ceb'/>
<id>urn:sha1:c2183f156a767c1443c7ae62954fe8192e349ceb</id>
<content type='text'>
- Fix Tags iteration error (use .iter() method)
- Test validates GRASP-01 requirement: accept repo announcements listing service
- Verifies clone and relays tags contain service URL
- Tested against ngit-relay on port 18081
- Test passes successfully
</content>
</entry>
<entry>
<title>preparing to build grasp-audit against git-relay</title>
<updated>2025-11-05T06:37:21+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-11-05T06:37:21+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=5cd47079ee762125817612d2bf82a0bca07da3ad'/>
<id>urn:sha1:5cd47079ee762125817612d2bf82a0bca07da3ad</id>
<content type='text'>
</content>
</entry>
</feed>
