From 7e53066dac817face0011609f874959f5a24cec2 Mon Sep 17 00:00:00 2001 From: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 Date: Tue, 16 Jun 2026 18:48:06 -0400 Subject: [PATCH] fix: use relative timestamps in NIP-33 persona tests The relay's clock-skew guard rejects events with created_at too far from server time. Replace hardcoded Nov 2023 timestamps (1_700_000_000) with Timestamp::now()-relative values that stay within the skew window while preserving the older-vs-newer replacement semantics. Co-authored-by: Will Pfleger Signed-off-by: Will Pfleger --- crates/buzz-test-client/tests/e2e_persona.rs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/crates/buzz-test-client/tests/e2e_persona.rs b/crates/buzz-test-client/tests/e2e_persona.rs index 3bc18ecd1..d201536be 100644 --- a/crates/buzz-test-client/tests/e2e_persona.rs +++ b/crates/buzz-test-client/tests/e2e_persona.rs @@ -109,14 +109,15 @@ async fn test_persona_nip33_replacement_newer_wins() { let mut client = BuzzTestClient::connect(&url, &keys).await.expect("connect"); // Publish older version + let now = Timestamp::now().as_secs(); let old_content = r#"{"name":"old","display_name":"Old","description":"Old version"}"#; - let old_event = persona_event_at(&keys, &d_tag, old_content, 1_700_000_000); + let old_event = persona_event_at(&keys, &d_tag, old_content, now - 100); let ok = client.send_event(old_event).await.expect("send old"); assert!(ok.accepted, "relay rejected old event: {}", ok.message); // Publish newer version with same d-tag let new_content = r#"{"name":"new","display_name":"New","description":"New version"}"#; - let new_event = persona_event_at(&keys, &d_tag, new_content, 1_700_000_100); + let new_event = persona_event_at(&keys, &d_tag, new_content, now); let ok = client.send_event(new_event).await.expect("send new"); assert!(ok.accepted, "relay rejected new event: {}", ok.message); @@ -154,14 +155,15 @@ async fn test_persona_nip33_older_does_not_replace_newer() { let mut client = BuzzTestClient::connect(&url, &keys).await.expect("connect"); // Publish newer version first + let now = Timestamp::now().as_secs(); let new_content = r#"{"name":"new","display_name":"New","description":"Newer"}"#; - let new_event = persona_event_at(&keys, &d_tag, new_content, 1_700_000_200); + let new_event = persona_event_at(&keys, &d_tag, new_content, now); let ok = client.send_event(new_event).await.expect("send new"); assert!(ok.accepted, "relay rejected new event: {}", ok.message); // Publish older version — relay should accept but not replace let old_content = r#"{"name":"old","display_name":"Old","description":"Older"}"#; - let old_event = persona_event_at(&keys, &d_tag, old_content, 1_700_000_100); + let old_event = persona_event_at(&keys, &d_tag, old_content, now - 100); let _ok = client.send_event(old_event).await.expect("send old"); // Note: relay may accept or reject the older event depending on implementation. // The key assertion is that querying returns the newer one.