upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src/git
diff options
context:
space:
mode:
authorDanConwayDev <DanConwayDev@protonmail.com>2026-02-17 11:43:40 +0000
committerDanConwayDev <DanConwayDev@protonmail.com>2026-02-17 11:43:40 +0000
commitcad58fccae7ed84bb033e56de0f1323b714a854d (patch)
tree9635381a3a8c35d8e4f83f2686304874b1523433 /src/git
parentefbbcc49ae8e8f598a24c939b35ad9cda0541663 (diff)
docs: clarify why fetch_repository_data excludes purgatory
Add comments explaining that PR event processing (both incoming and purgatory) should only use database announcements, not purgatory ones. This is intentional because: - Incoming PR events should only be accepted for validated announcements - Purgatory PR events should only be released when announcement is promoted - This prevents accepting PR events for announcements that fail validation Differs from state event processing which uses fetch_repository_data_with_purgatory because state events check authorization without releasing from purgatory.
Diffstat (limited to 'src/git')
-rw-r--r--src/git/sync.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/git/sync.rs b/src/git/sync.rs
index a0b7c47..4b35023 100644
--- a/src/git/sync.rs
+++ b/src/git/sync.rs
@@ -1171,6 +1171,9 @@ async fn process_purgatory_pr_events(
1171 ); 1171 );
1172 1172
1173 // Fetch repository data for syncing 1173 // Fetch repository data for syncing
1174 // NOTE: Only fetch from database, NOT purgatory. PR events should only be
1175 // released from purgatory when the announcement has been promoted (validated).
1176 // This ensures we don't accept PR events for announcements that fail validation.
1174 let db_repo_data = match fetch_repository_data(database, identifier).await { 1177 let db_repo_data = match fetch_repository_data(database, identifier).await {
1175 Ok(data) => data, 1178 Ok(data) => data,
1176 Err(e) => { 1179 Err(e) => {