diff options
| author | DanConwayDev <DanConwayDev@protonmail.com> | 2026-01-12 20:30:13 +0000 |
|---|---|---|
| committer | DanConwayDev <DanConwayDev@protonmail.com> | 2026-01-12 20:30:13 +0000 |
| commit | a12927181c571fc1641772ad44dd4c6a4ab209d9 (patch) | |
| tree | d7cb99fa87606e9fb13d91305cda8a0f919e6528 /README.md | |
| parent | c29191b1e1239e931c575a926ec9480e594476d6 (diff) | |
feat(grasp-05): add read-only mode with auto-enable for archive configs
Implements NGIT_ARCHIVE_READ_ONLY configuration option that defaults to true
when archive mode is enabled, allowing relays to operate as read-only syncs
of archived repositories.
Key changes:
- Add NGIT_ARCHIVE_READ_ONLY config option (defaults to true if archive enabled)
- NIP-11 advertises GRASP-05 support and includes curation field when read-only
- Validation logic rejects non-whitelisted repos in read-only mode
- Comprehensive tests for read-only behavior and defaults
- Full documentation in config reference, .env.example, and NixOS module
Read-only mode enables passive mirroring without being listed in announcements,
useful for backup/archive operations while preventing accidental write acceptance.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 4 |
1 files changed, 2 insertions, 2 deletions
| @@ -141,11 +141,11 @@ See [GRASP-02 Proactive Sync](docs/explanation/grasp-02-proactive-sync.md) for f | |||
| 141 | 141 | ||
| 142 | - ✅ Accept repositories not listing this instance via configurable whitelist | 142 | - ✅ Accept repositories not listing this instance via configurable whitelist |
| 143 | - ✅ Three whitelist formats: `<npub>`, `<npub>/<identifier>`, `<identifier>` | 143 | - ✅ Three whitelist formats: `<npub>`, `<npub>/<identifier>`, `<identifier>` |
| 144 | - ✅ Read-only mirroring with full GRASP-02 sync (git data + Nostr events) | 144 | - ✅ Read-only mirroring with full GRASP-02 sync (git data + Nostr events) - **default behavior** |
| 145 | - ✅ Archive-all mode for complete ecosystem mirrors | 145 | - ✅ Archive-all mode for complete ecosystem mirrors |
| 146 | - ✅ Fail-fast npub validation at startup | 146 | - ✅ Fail-fast npub validation at startup |
| 147 | 147 | ||
| 148 | **Archive mode enables backup/mirror operation** - accept repository announcements that don't list your relay, useful for creating archives of critical projects or running comprehensive mirrors. Archived repositories are read-only with full event and git data sync. | 148 | **Archive mode enables backup/mirror operation** - accept repository announcements that don't list your relay, useful for creating archives of critical projects or running comprehensive mirrors. Archived repositories are read-only by default (`NGIT_ARCHIVE_READ_ONLY=true`) with full event and git data sync. |
| 149 | 149 | ||
| 150 | **See**: [GRASP-05 Archive Mode](docs/explanation/grasp-05-archive.md) | 150 | **See**: [GRASP-05 Archive Mode](docs/explanation/grasp-05-archive.md) |
| 151 | 151 | ||