Skip to content

Conversation

@romanzac
Copy link
Contributor

@romanzac romanzac commented Nov 18, 2025

Summary

An initial batch of functional tests to cover token-gated communities.

Tests Included

  • test_token_gated_community_membership_no_valid_tokens
  • test_token_gated_community_membership_with_valid_tokens
  • test_admin_token_permissions_with_valid_tokens

Issues discovered

@status-im-auto
Copy link
Member

status-im-auto commented Nov 18, 2025

Jenkins Builds

Click to see older builds (254)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ e7773f1 #1 2025-11-18 01:26:27 ~3 min linux/status-go 📦zip
✔️ e7773f1 #1 2025-11-18 01:27:19 ~4 min windows/status-go 📦zip
✔️ e7773f1 #1 2025-11-18 01:27:23 ~4 min macos/status-go 📦zip
✔️ e7773f1 #1 2025-11-18 01:34:08 ~11 min linux/nwaku 📦zip
✖️ e7773f1 #1 2025-11-18 01:35:23 ~12 min tests-rpc 📄log
✔️ e7773f1 #1 2025-11-18 01:50:52 ~28 min tests 📄log
✔️ f34ca02 #2 2025-11-18 01:47:00 ~3 min windows/status-go 📦zip
✔️ f34ca02 #2 2025-11-18 01:47:07 ~3 min linux/status-go 📦zip
✔️ f34ca02 #2 2025-11-18 01:47:16 ~3 min macos/status-go 📦zip
✔️ f34ca02 #2 2025-11-18 01:55:18 ~12 min linux/nwaku 📦zip
✖️ f34ca02 #2 2025-11-18 01:56:59 ~13 min tests-rpc 📄log
✔️ f34ca02 #2 2025-11-18 02:17:33 ~26 min tests 📄log
✔️ d1a8592 #3 2025-11-18 02:22:30 ~3 min windows/status-go 📦zip
✔️ d1a8592 #3 2025-11-18 02:22:48 ~3 min linux/status-go 📦zip
✔️ d1a8592 #3 2025-11-18 02:22:54 ~3 min macos/status-go 📦zip
✔️ d1a8592 #3 2025-11-18 02:30:23 ~11 min linux/nwaku 📦zip
✖️ d1a8592 #3 2025-11-18 02:31:44 ~12 min tests-rpc 📄log
✔️ d1a8592 #3 2025-11-18 02:45:48 ~26 min tests 📄log
✔️ 62b610a #4 2025-11-18 06:14:44 ~2 min windows/status-go 📦zip
✔️ 62b610a #4 2025-11-18 06:15:24 ~3 min linux/status-go 📦zip
✔️ 62b610a #4 2025-11-18 06:15:44 ~4 min macos/status-go 📦zip
✔️ 62b610a #4 2025-11-18 06:22:57 ~11 min linux/nwaku 📦zip
✖️ 62b610a #4 2025-11-18 06:24:36 ~12 min tests-rpc 📄log
✔️ 62b610a #4 2025-11-18 06:38:32 ~26 min tests 📄log
✔️ 3ff23b0 #5 2025-11-18 07:01:38 ~3 min windows/status-go 📦zip
✔️ 3ff23b0 #5 2025-11-18 07:02:31 ~4 min linux/status-go 📦zip
✔️ 3ff23b0 #5 2025-11-18 07:02:38 ~4 min macos/status-go 📦zip
✔️ 3ff23b0 #5 2025-11-18 07:09:39 ~11 min linux/nwaku 📦zip
✔️ 3ff23b0 #5 2025-11-18 07:11:05 ~12 min tests-rpc 📄log
✔️ 3ff23b0 #5 2025-11-18 07:25:30 ~26 min tests 📄log
✔️ bdf397f #6 2025-11-19 00:52:19 ~3 min windows/status-go 📦zip
✔️ bdf397f #6 2025-11-19 00:53:08 ~4 min linux/status-go 📦zip
✔️ bdf397f #6 2025-11-19 00:53:13 ~4 min macos/status-go 📦zip
✔️ bdf397f #6 2025-11-19 01:00:30 ~11 min linux/nwaku 📦zip
✔️ bdf397f #6 2025-11-19 01:02:14 ~13 min tests-rpc 📄log
✔️ bdf397f #6 2025-11-19 01:15:47 ~26 min tests 📄log
✔️ 379abba #7 2025-11-19 08:47:42 ~3 min windows/status-go 📦zip
✔️ 379abba #7 2025-11-19 08:48:15 ~3 min linux/status-go 📦zip
✔️ 379abba #7 2025-11-19 08:48:43 ~4 min macos/status-go 📦zip
✔️ 379abba #7 2025-11-19 08:55:51 ~11 min linux/nwaku 📦zip
✖️ 379abba #7 2025-11-19 08:57:37 ~13 min tests-rpc 📄log
✔️ 379abba #7 2025-11-19 09:11:41 ~27 min tests 📄log
✔️ d13aadf #8 2025-11-20 01:00:30 ~3 min windows/status-go 📦zip
✔️ d13aadf #8 2025-11-20 01:00:48 ~3 min linux/status-go 📦zip
✔️ d13aadf #8 2025-11-20 01:01:16 ~4 min macos/status-go 📦zip
✔️ d13aadf #8 2025-11-20 01:08:16 ~11 min linux/nwaku 📦zip
✖️ d13aadf #8 2025-11-20 01:10:14 ~13 min tests-rpc 📄log
✔️ d13aadf #8 2025-11-20 01:23:59 ~26 min tests 📄log
✔️ 1a64b56 #9 2025-11-20 11:29:43 ~3 min windows/status-go 📦zip
✔️ 1a64b56 #9 2025-11-20 11:30:03 ~3 min linux/status-go 📦zip
✔️ 1a64b56 #9 2025-11-20 11:30:34 ~4 min macos/status-go 📦zip
✔️ 1a64b56 #9 2025-11-20 11:37:03 ~10 min linux/nwaku 📦zip
✖️ 1a64b56 #9 2025-11-20 11:39:19 ~12 min tests-rpc 📄log
✔️ 1a64b56 #9 2025-11-20 11:55:14 ~28 min tests 📄log
✔️ 6e04458 #10 2025-11-20 11:46:28 ~3 min windows/status-go 📦zip
✔️ 6e04458 #10 2025-11-20 11:47:12 ~3 min linux/status-go 📦zip
✔️ 6e04458 #10 2025-11-20 11:47:26 ~4 min macos/status-go 📦zip
✔️ 6e04458 #10 2025-11-20 11:54:53 ~11 min linux/nwaku 📦zip
✖️ 6e04458 #10 2025-11-20 11:55:52 ~12 min tests-rpc 📄log
✔️ 6e04458 #10 2025-11-20 12:21:56 ~26 min tests 📄log
✔️ 7c9b1df #11 2025-11-21 02:13:04 ~3 min windows/status-go 📦zip
✔️ 7c9b1df #11 2025-11-21 02:13:26 ~3 min linux/status-go 📦zip
✔️ 7c9b1df #11 2025-11-21 02:13:42 ~4 min macos/status-go 📦zip
✔️ 7c9b1df #11 2025-11-21 02:20:00 ~10 min linux/nwaku 📦zip
✖️ 7c9b1df #11 2025-11-21 02:22:04 ~12 min tests-rpc 📄log
✔️ 7c9b1df #11 2025-11-21 02:36:28 ~26 min tests 📄log
0802e49 #12 2025-11-21 05:25:49 ~1 min macos/status-go 📄log
✔️ 0802e49 #12 2025-11-21 05:27:27 ~3 min windows/status-go 📦zip
✔️ 0802e49 #12 2025-11-21 05:27:56 ~3 min linux/status-go 📦zip
✔️ 0802e49 #12 2025-11-21 05:34:47 ~10 min linux/nwaku 📦zip
✔️ 0802e49 #12 2025-11-21 05:37:03 ~12 min tests-rpc 📄log
✖️ 0802e49 #12 2025-11-21 05:52:07 ~27 min tests 📄log
✔️ e8d8a77 #13 2025-11-24 01:15:04 ~3 min windows/status-go 📦zip
✔️ e8d8a77 #13 2025-11-24 01:15:18 ~3 min linux/status-go 📦zip
✔️ e8d8a77 #13 2025-11-24 01:15:33 ~4 min macos/status-go 📦zip
✔️ e8d8a77 #13 2025-11-24 01:22:52 ~11 min linux/nwaku 📦zip
✔️ e8d8a77 #13 2025-11-24 01:23:38 ~12 min tests-rpc 📄log
✔️ e8d8a77 #13 2025-11-24 01:38:25 ~26 min tests 📄log
✖️ bd2ba2e #14 2025-11-24 05:49:47 ~1 min tests 📄log
✔️ bd2ba2e #14 2025-11-24 05:51:25 ~3 min windows/status-go 📦zip
✔️ bd2ba2e #14 2025-11-24 05:51:59 ~3 min linux/status-go 📦zip
✔️ bd2ba2e #14 2025-11-24 05:52:11 ~3 min macos/status-go 📦zip
✔️ bd2ba2e #14 2025-11-24 05:59:33 ~11 min linux/nwaku 📦zip
✖️ bd2ba2e #14 2025-11-24 06:00:37 ~12 min tests-rpc 📄log
✔️ 0f3f08c #15 2025-11-24 07:22:59 ~3 min windows/status-go 📦zip
✔️ 0f3f08c #15 2025-11-24 07:23:34 ~3 min linux/status-go 📦zip
✔️ 0f3f08c #15 2025-11-24 07:23:56 ~4 min macos/status-go 📦zip
✔️ 0f3f08c #15 2025-11-24 07:31:15 ~11 min linux/nwaku 📦zip
✔️ 0f3f08c #15 2025-11-24 07:31:42 ~11 min tests-rpc 📄log
✔️ 0f3f08c #15 2025-11-24 07:46:53 ~27 min tests 📄log
✔️ 2078add #16 2025-11-24 09:16:36 ~3 min windows/status-go 📦zip
✔️ 2078add #16 2025-11-24 09:16:52 ~3 min linux/status-go 📦zip
✔️ 2078add #16 2025-11-24 09:17:10 ~4 min macos/status-go 📦zip
✔️ 2078add #16 2025-11-24 09:23:48 ~10 min linux/nwaku 📦zip
✔️ 2078add #16 2025-11-24 09:25:07 ~12 min tests-rpc 📄log
✔️ 2078add #16 2025-11-24 09:40:54 ~27 min tests 📄log
✔️ c70fee0 #17 2025-11-25 01:14:48 ~3 min macos/status-go 📦zip
✔️ c70fee0 #17 2025-11-25 01:14:50 ~3 min windows/status-go 📦zip
✔️ c70fee0 #17 2025-11-25 01:14:51 ~4 min linux/status-go 📦zip
✔️ c70fee0 #17 2025-11-25 01:18:34 ~7 min linux/nwaku 📦zip
✔️ c70fee0 #17 2025-11-25 01:26:07 ~15 min tests-rpc 📄log
✖️ c70fee0 #17 2025-11-25 01:38:02 ~27 min tests 📄log
✔️ 3cca9ce #18 2025-11-25 05:44:31 ~4 min linux/status-go 📦zip
✔️ 3cca9ce #18 2025-11-25 05:44:41 ~4 min windows/status-go 📦zip
✔️ 3cca9ce #18 2025-11-25 05:44:46 ~4 min macos/status-go 📦zip
✔️ 3cca9ce #18 2025-11-25 05:48:43 ~8 min linux/nwaku 📦zip
✔️ 3cca9ce #18 2025-11-25 05:55:46 ~15 min tests-rpc 📄log
✔️ 3cca9ce #18 2025-11-25 06:07:27 ~27 min tests 📄log
✔️ 99c06eb #19 2025-11-25 05:49:58 ~3 min linux/status-go 📦zip
✔️ 99c06eb #19 2025-11-25 05:50:30 ~4 min windows/status-go 📦zip
✔️ 99c06eb #19 2025-11-25 05:50:34 ~4 min macos/status-go 📦zip
✔️ 99c06eb #19 2025-11-25 05:56:36 ~7 min linux/nwaku 📦zip
✔️ 99c06eb #19 2025-11-25 06:12:15 ~16 min tests-rpc 📄log
✔️ 99c06eb #19 2025-11-25 06:34:16 ~26 min tests 📄log
✔️ d1a9df7 #20 2025-11-26 01:09:23 ~3 min windows/status-go 📦zip
✔️ d1a9df7 #20 2025-11-26 01:09:30 ~4 min linux/status-go 📦zip
✔️ d1a9df7 #20 2025-11-26 01:09:54 ~4 min macos/status-go 📦zip
✔️ d1a9df7 #20 2025-11-26 01:13:21 ~7 min linux/nwaku 📦zip
✔️ d1a9df7 #20 2025-11-26 01:21:25 ~15 min tests-rpc 📄log
✔️ d1a9df7 #20 2025-11-26 01:31:44 ~26 min tests 📄log
✔️ d1a9df7 #22 2025-11-26 05:49:39 ~3 min linux/status-go 📦zip
✔️ d1a9df7 #22 2025-11-26 05:49:41 ~3 min macos/status-go 📦zip
✔️ d1a9df7 #22 2025-11-26 05:50:05 ~4 min windows/status-go 📦zip
✔️ d1a9df7 #22 2025-11-26 05:54:10 ~8 min linux/nwaku 📦zip
✔️ d1a9df7 #22 2025-11-26 05:58:40 ~12 min tests-rpc 📄log
✔️ 49ce18a #21 2025-11-26 05:34:10 ~3 min windows/status-go 📦zip
✔️ 49ce18a #21 2025-11-26 05:34:37 ~4 min linux/status-go 📦zip
✔️ 49ce18a #21 2025-11-26 05:35:02 ~4 min macos/status-go 📦zip
✔️ 49ce18a #21 2025-11-26 05:38:24 ~7 min linux/nwaku 📦zip
✔️ 49ce18a #21 2025-11-26 05:46:21 ~15 min tests-rpc 📄log
✔️ 49ce18a #21 2025-11-26 05:56:36 ~26 min tests 📄log
✔️ 2dd2b39 #23 2025-11-26 05:53:38 ~3 min windows/status-go 📦zip
✔️ 2dd2b39 #23 2025-11-26 05:54:06 ~4 min linux/status-go 📦zip
✔️ 2dd2b39 #23 2025-11-26 05:54:32 ~4 min macos/status-go 📦zip
✔️ 362d3e6 #24 2025-11-26 05:57:29 ~3 min windows/status-go 📦zip
✔️ 362d3e6 #24 2025-11-26 05:58:24 ~4 min linux/status-go 📦zip
✔️ 362d3e6 #24 2025-11-26 05:59:12 ~4 min macos/status-go 📦zip
✔️ 362d3e6 #23 2025-11-26 06:02:57 ~8 min linux/nwaku 📦zip
✔️ 362d3e6 #23 2025-11-26 06:14:39 ~15 min tests-rpc 📄log
✔️ 362d3e6 #22 2025-11-26 06:22:55 ~26 min tests 📄log
✔️ bbc8696 #25 2025-11-26 06:19:15 ~3 min windows/status-go 📦zip
✔️ bbc8696 #25 2025-11-26 06:19:31 ~3 min linux/status-go 📦zip
✔️ bbc8696 #25 2025-11-26 06:19:58 ~4 min macos/status-go 📦zip
✔️ bbc8696 #24 2025-11-26 06:23:18 ~7 min linux/nwaku 📦zip
✖️ bbc8696 #24 2025-11-26 06:32:06 ~16 min tests-rpc 📄log
✔️ bbc8696 #23 2025-11-26 06:49:07 ~26 min tests 📄log
✔️ 6901bcc #26 2025-11-26 06:31:15 ~3 min windows/status-go 📦zip
✔️ 6901bcc #26 2025-11-26 06:31:23 ~3 min linux/status-go 📦zip
✔️ 6901bcc #26 2025-11-26 06:31:57 ~4 min macos/status-go 📦zip
✔️ 6901bcc #25 2025-11-26 06:35:31 ~8 min linux/nwaku 📦zip
✔️ 64da1b4 #27 2025-11-26 06:34:52 ~3 min windows/status-go 📦zip
✔️ 64da1b4 #27 2025-11-26 06:35:32 ~3 min linux/status-go 📦zip
✔️ 64da1b4 #27 2025-11-26 06:36:29 ~4 min macos/status-go 📦zip
✔️ 64da1b4 #26 2025-11-26 06:42:55 ~7 min linux/nwaku 📦zip
✖️ 64da1b4 #25 2025-11-26 06:47:52 ~15 min tests-rpc 📄log
✔️ 9fcb8ce #28 2025-11-26 06:50:20 ~3 min linux/status-go 📦zip
✔️ 9fcb8ce #28 2025-11-26 06:50:29 ~3 min windows/status-go 📦zip
✔️ 9fcb8ce #28 2025-11-26 06:50:59 ~4 min macos/status-go 📦zip
✔️ 9fcb8ce #27 2025-11-26 06:54:36 ~8 min linux/nwaku 📦zip
✖️ 9fcb8ce #26 2025-11-26 07:04:15 ~16 min tests-rpc 📄log
✔️ 9fcb8ce #24 2025-11-26 07:15:43 ~26 min tests 📄log
✔️ ca15d4b #29 2025-11-26 07:12:04 ~3 min linux/status-go 📦zip
✔️ ca15d4b #29 2025-11-26 07:12:08 ~3 min windows/status-go 📦zip
✔️ ca15d4b #29 2025-11-26 07:13:01 ~4 min macos/status-go 📦zip
✔️ ca15d4b #28 2025-11-26 07:15:51 ~7 min linux/nwaku 📦zip
✖️ ca15d4b #27 2025-11-26 07:23:35 ~15 min tests-rpc 📄log
✔️ ca15d4b #25 2025-11-26 07:41:58 ~26 min tests 📄log
b5d8d52 #30 2025-11-26 07:43:01 ~1 min macos/status-go 📄log
✔️ b5d8d52 #30 2025-11-26 07:45:13 ~3 min windows/status-go 📦zip
✔️ b5d8d52 #30 2025-11-26 07:46:18 ~4 min linux/status-go 📦zip
✔️ b5d8d52 #29 2025-11-26 07:50:46 ~9 min linux/nwaku 📦zip
✔️ b5d8d52 #28 2025-11-26 08:02:25 ~20 min tests-rpc 📄log
✔️ b5d8d52 #26 2025-11-26 08:12:52 ~30 min tests 📄log
✔️ 733016b #31 2025-11-26 09:28:07 ~4 min linux/status-go 📦zip
✔️ 733016b #31 2025-11-26 09:29:21 ~5 min macos/status-go 📦zip
✔️ 733016b #31 2025-11-26 09:30:05 ~5 min windows/status-go 📦zip
✔️ 733016b #30 2025-11-26 09:31:47 ~7 min linux/nwaku 📦zip
✔️ 733016b #29 2025-11-26 09:40:46 ~16 min tests-rpc 📄log
✔️ 733016b #27 2025-11-26 09:51:03 ~26 min tests 📄log
✔️ f92b421 #32 2025-11-26 09:36:42 ~4 min linux/status-go 📦zip
✔️ f92b421 #32 2025-11-26 09:37:22 ~4 min macos/status-go 📦zip
✔️ f92b421 #32 2025-11-26 09:38:38 ~5 min windows/status-go 📦zip
✔️ f92b421 #31 2025-11-26 09:40:16 ~7 min linux/nwaku 📦zip
✔️ f92b421 #30 2025-11-26 09:56:56 ~16 min tests-rpc 📄log
✔️ 2059c31 #33 2025-11-26 09:51:16 ~4 min linux/status-go 📦zip
✔️ 2059c31 #33 2025-11-26 09:51:30 ~4 min macos/status-go 📦zip
✔️ 2059c31 #33 2025-11-26 09:51:31 ~4 min windows/status-go 📦zip
✔️ 2059c31 #32 2025-11-26 09:55:51 ~8 min linux/nwaku 📦zip
✔️ 2059c31 #31 2025-11-26 10:12:52 ~15 min tests-rpc 📄log
✔️ 2059c31 #28 2025-11-26 10:17:58 ~26 min tests 📄log
✔️ 528b79d #34 2025-11-26 10:10:28 ~4 min linux/status-go 📦zip
✔️ 528b79d #34 2025-11-26 10:10:56 ~4 min macos/status-go 📦zip
✔️ 528b79d #34 2025-11-26 10:11:00 ~4 min windows/status-go 📦zip
✔️ 528b79d #33 2025-11-26 10:13:38 ~7 min linux/nwaku 📦zip
✔️ 528b79d #32 2025-11-26 10:29:25 ~16 min tests-rpc 📄log
✔️ 528b79d #29 2025-11-26 10:44:47 ~26 min tests 📄log
✔️ 1eccd29 #35 2025-11-26 11:05:27 ~4 min linux/status-go 📦zip
✔️ 1eccd29 #35 2025-11-26 11:05:41 ~4 min macos/status-go 📦zip
✔️ 1eccd29 #35 2025-11-26 11:06:08 ~4 min windows/status-go 📦zip
✔️ 1eccd29 #34 2025-11-26 11:09:30 ~8 min linux/nwaku 📦zip
✔️ 1eccd29 #33 2025-11-26 11:17:57 ~16 min tests-rpc 📄log
✔️ 1eccd29 #30 2025-11-26 11:28:06 ~26 min tests 📄log
✔️ cbfd86f #36 2025-11-26 11:12:33 ~4 min linux/status-go 📦zip
✔️ cbfd86f #36 2025-11-26 11:13:01 ~4 min windows/status-go 📦zip
✔️ cbfd86f #36 2025-11-26 11:13:05 ~4 min macos/status-go 📦zip
✔️ cbfd86f #35 2025-11-26 11:17:49 ~8 min linux/nwaku 📦zip
✔️ cbfd86f #34 2025-11-26 11:34:20 ~16 min tests-rpc 📄log
✔️ 68361b9 #37 2025-11-26 11:28:25 ~4 min windows/status-go 📦zip
✔️ 68361b9 #37 2025-11-26 11:32:27 ~8 min linux/status-go 📦zip
✔️ 68361b9 #37 2025-11-26 11:35:37 ~11 min macos/status-go 📦zip
✔️ 68361b9 #36 2025-11-26 11:36:13 ~12 min linux/nwaku 📦zip
✔️ 68361b9 #35 2025-11-26 11:50:12 ~15 min tests-rpc 📄log
✔️ 68361b9 #31 2025-11-26 11:58:10 ~29 min tests 📄log
✔️ 22a8dd1 #38 2025-11-27 01:45:24 ~4 min linux/status-go 📦zip
✔️ 22a8dd1 #38 2025-11-27 01:45:51 ~4 min windows/status-go 📦zip
✔️ 22a8dd1 #38 2025-11-27 01:46:09 ~4 min macos/status-go 📦zip
✔️ 22a8dd1 #37 2025-11-27 01:49:33 ~8 min linux/nwaku 📦zip
✔️ 22a8dd1 #36 2025-11-27 01:57:35 ~16 min tests-rpc 📄log
✔️ 22a8dd1 #32 2025-11-27 02:07:28 ~26 min tests 📄log
✔️ 92b951b #39 2025-11-27 01:51:13 ~4 min linux/status-go 📦zip
✔️ 92b951b #39 2025-11-27 01:51:29 ~4 min windows/status-go 📦zip
✔️ 92b951b #39 2025-11-27 01:51:46 ~4 min macos/status-go 📦zip
✔️ 92b951b #38 2025-11-27 01:57:24 ~7 min linux/nwaku 📦zip
✔️ 92b951b #37 2025-11-27 02:13:23 ~15 min tests-rpc 📄log
✖️ 92b951b #33 2025-11-27 02:34:29 ~26 min tests 📄log
✔️ 2bd0626 #40 2025-11-27 05:00:11 ~4 min linux/status-go 📦zip
✔️ 2bd0626 #40 2025-11-27 05:00:41 ~4 min macos/status-go 📦zip
✔️ 2bd0626 #40 2025-11-27 05:01:00 ~4 min windows/status-go 📦zip
✔️ 2bd0626 #39 2025-11-27 05:03:48 ~7 min linux/nwaku 📦zip
✔️ 2bd0626 #38 2025-11-27 05:11:55 ~15 min tests-rpc 📄log
✔️ 2bd0626 #34 2025-11-27 05:22:37 ~26 min tests 📄log
✔️ 35db694 #41 2025-11-28 01:55:10 ~4 min linux/status-go 📦zip
✔️ 35db694 #41 2025-11-28 01:55:16 ~4 min macos/status-go 📦zip
✔️ 35db694 #41 2025-11-28 01:55:41 ~4 min windows/status-go 📦zip
✔️ 35db694 #39 2025-11-28 02:04:10 ~13 min tests-rpc 📄log
✔️ 35db694 #35 2025-11-28 02:16:57 ~25 min tests 📄log
✔️ 882fcba #42 2025-11-28 02:52:48 ~3 min windows/status-go 📦zip
✔️ 882fcba #42 2025-11-28 02:53:06 ~4 min linux/status-go 📦zip
✔️ 882fcba #42 2025-11-28 02:53:07 ~4 min macos/status-go 📦zip
✔️ 882fcba #41 2025-11-28 02:53:51 ~5 min linux/nwaku 📦zip
✔️ 882fcba #40 2025-11-28 03:01:34 ~12 min tests-rpc 📄log
✔️ 882fcba #36 2025-11-28 03:15:15 ~26 min tests 📄log
✔️ 2eea911 #43 2025-11-28 04:23:49 ~3 min linux/status-go 📦zip
✔️ 2eea911 #43 2025-11-28 04:24:19 ~4 min macos/status-go 📦zip
✔️ 2eea911 #43 2025-11-28 04:24:40 ~4 min windows/status-go 📦zip
✔️ 2eea911 #42 2025-11-28 04:30:42 ~10 min linux/nwaku 📦zip
✔️ 2eea911 #41 2025-11-28 04:32:33 ~12 min tests-rpc 📄log
✔️ 2eea911 #37 2025-11-28 04:46:23 ~26 min tests 📄log
✔️ d4a1aa0 #44 2025-12-01 05:42:51 ~3 min linux/status-go 📦zip
✔️ d4a1aa0 #44 2025-12-01 05:43:04 ~4 min macos/status-go 📦zip
✔️ d4a1aa0 #44 2025-12-01 05:43:31 ~4 min windows/status-go 📦zip
✔️ d4a1aa0 #43 2025-12-01 05:50:20 ~11 min linux/nwaku 📦zip
✔️ d4a1aa0 #42 2025-12-01 05:51:43 ~12 min tests-rpc 📄log
✔️ d4a1aa0 #38 2025-12-01 06:06:00 ~26 min tests 📄log
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 29676a4 #45 2025-12-01 06:46:36 ~3 min linux/status-go 📦zip
✔️ 29676a4 #45 2025-12-01 06:46:58 ~4 min macos/status-go 📦zip
✔️ 29676a4 #45 2025-12-01 06:47:13 ~4 min windows/status-go 📦zip
✔️ 29676a4 #44 2025-12-01 06:54:22 ~11 min linux/nwaku 📦zip
✖️ 29676a4 #43 2025-12-01 06:55:30 ~12 min tests-rpc 📄log
✔️ 29676a4 #39 2025-12-01 07:09:08 ~26 min tests 📄log
29676a4 #1 2025-12-01 11:16:55 ~6 min macos/nwaku 📄log
29676a4 #1 2025-12-01 11:32:20 ~6 min windows/nwaku 📄log
✖️ 29676a4 #1 2025-12-01 12:51:16 ~38 min tests 📄log
✖️ 29676a4 #1 2025-12-01 13:31:11 ~1 hr 1 min tests-rpc 📄log
38a2f6d #2 2025-12-03 01:05:20 ~2 min windows/nwaku 📄log
✔️ 38a2f6d #46 2025-12-03 01:06:30 ~4 min linux/status-go 📦zip
✔️ 38a2f6d #46 2025-12-03 01:06:52 ~4 min macos/status-go 📦zip
✔️ 38a2f6d #46 2025-12-03 01:08:16 ~5 min windows/status-go 📦zip
38a2f6d #2 2025-12-03 01:09:09 ~6 min macos/nwaku 📄log
✔️ 38a2f6d #45 2025-12-03 01:13:17 ~10 min linux/nwaku 📦zip

@codecov
Copy link

codecov bot commented Nov 18, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 55.39%. Comparing base (641a18b) to head (29676a4).

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #7113      +/-   ##
===========================================
- Coverage    60.08%   55.39%   -4.69%     
===========================================
  Files          811      814       +3     
  Lines       113220   126375   +13155     
===========================================
+ Hits         68023    70005    +1982     
- Misses       38392    48870   +10478     
- Partials      6805     7500     +695     
Flag Coverage Δ
functional 34.38% <ø> (-1.31%) ⬇️
unit 55.36% <ø> (-0.19%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 176 files with indirect coverage changes

@romanzac romanzac marked this pull request as ready for review November 25, 2025 05:49
Copy link
Contributor

@fbarbu15 fbarbu15 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

Copy link
Collaborator

@igor-sirotin igor-sirotin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @romanzac! 👍
Looks good to me, just a few polishing suggestions

# Fetch community as member
self.fetch_community(self.member_with_snt, community_id)

for i in range(10):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These kind of loops and usage of time.sleep are better to be avoided.
It should be possible for self.member_with_snt to wait for a signal about community permissions change

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed at ca15d4b

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmmm retry_call does effectively the same thing as trying in a loop.

Instead, ownder should wait for messages.new signal (using wait_for_signal).
In the signal there should be a non-empty requestsToJoinCommunity. This means that the request is received and we're ready to accept_request_to_join_community.

Here's the property:

requestsToJoinCommunity map[string]*communities.RequestToJoin

Note that there are some other stuff, e.g. CommunityChanges, which should be useful for these tests.

Copy link
Contributor Author

@romanzac romanzac Nov 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a pleasant surprise. Let me see how are these events emitted. I see, Websocket transfer!

Copy link
Contributor Author

@romanzac romanzac Nov 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks during test_membership_with_valid_tokens run there is an inconsistency between received signal and readiness to accept the member to join. My accept_request_to_join_community was failing after I refactored to receive signal. So I added back the retry_call. You can see failed accept_request_to_join_community few times on Unexpected error: {'code': -32000, 'message': 'sql: no rows in result set'}. Was the signal premature or is there another signal more suitable to wait for or problem with my reasoning about signal and the real state of system?

22025-11-27 12:52:30.130 DEBUG Sending POST request to url http://127.0.0.1:16783/statusgo/CallRPC with data: {"id": 5, "jsonrpc": "2.0", "method": "wakuext_requestToJoinCommunity", "params": [{"addressesToReveal": ["0x1f3f31a66e03492f268b8344c7743a2f5b64d81f"], "airdropAddress": "0x1f3f31a66e03492f268b8344c7743a2f5b64d81f", "communityId": "0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f"}]}
2025-11-27 12:52:30.148 DEBUG http://127.0.0.1:16783 "POST /statusgo/CallRPC HTTP/1.1" 200 None
2025-11-27 12:52:30.148 DEBUG Got response: b'{"jsonrpc":"2.0","id":5,"result":{"requestsToJoinCommunity":[{"id":"0xd97933e60201a7ba5c0480ec966d9f10167a1d98cc8725478c8fe7b5e88715b6","publicKey":"0x04b5deee0773aaeb29987fdbde582fff3fa3511c9f686be8a2f6486e23a8e77f4a159d2ed92abe5a6a875e1bd3b187219f1391291403b85149ae167630665e27e4","clock":1764219150,"chatId":"","communityId":"0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f","state":1,"our":true,"deleted":false,"revealedAccounts":[{"address":"0x1f3f31a66e03492f268b8344c7743a2f5b64d81f","chain_ids":[31337],"isAirdropAddress":true}],"customizationColor":"primary","shareFutureAddresses":false}],"notifications":null,"communities":[{"id":"0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f","memberRole":0,"isControlNode":false,"verified":false,"joined":false,"joinedAt":0,"spectated":false,"requestedAccessAt":0,"name":"my 73280","description":"Majority gun policy TV by.","introMessage":"","outroMessage":"","tags":[],"chats":{"b054a343-d8f2-4d08-8404-766924f905e5":{"id":"b054a343-d8f2-4d08-8404-766924f905e5","name":"general","color":"#ffffff","emoji":"","description":"General channel for the community","members":null,"permissions":{"access":1},"canPost":false,"canView":false,"canPostReactions":false,"viewersCanPostReactions":false,"position":0,"categoryID":"","tokenGated":false,"hideIfPermissionsNotMet":false,"missingEncryptionKey":false}},"categories":{},"images":null,"permissions":{"access":3},"members":{"0x047261d3f4edc03adbf2f2aa3018463bfc830d706e60246a14b93107b91dc5399d03ec5c4882665559f4c225cfa2a23768bd64ac35eda992edadf60cbea5880cdb":{"roles":[1]}},"canRequestAccess":true,"canManageUsers":false,"canDeleteMessageForEveryone":false,"canJoin":false,"color":"#ffffff","requestedToJoinAt":1764219150,"isMember":false,"muted":false,"muteTill":"0001-01-01T00:00:00Z","adminSettings":{"pinMessageAllMembersEnabled":false},"encrypted":false,"pendingAndBannedMembers":{},"tokenPermissions":{"80803281-a306-4165-9cd4-59ba5b879ea9":{"id":"80803281-a306-4165-9cd4-59ba5b879ea9","type":1,"token_criteria":[{"contract_addresses":{"31337":"0x9d4454B023096f34B160D6B654540c56A1F81688"},"type":1,"symbol":"SNT","amount":"1e-18","decimals":18,"amountInWei":"1"}]}},"communityTokensMetadata":null,"activeMembersCount":0,"pubsubTopic":"","lastOpenedAt":0,"clock":1764219150115}],"activityCenterNotifications":[{"id":"0xd97933e60201a7ba5c0480ec966d9f10167a1d98cc8725478c8fe7b5e88715b6","chatId":"","communityId":"0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f","membershipStatus":1,"name":"","newsTitle":"","newsDescription":"","newsContent":"","newsImageUrl":"","newsLink":"","newsLinkLabel":"","author":"","installationId":"","type":7,"lastMessage":null,"message":null,"replyMessage":null,"timestamp":1764219150156,"read":true,"dismissed":false,"deleted":false,"accepted":false,"contactVerificationStatus":0,"tokenData":null,"updatedAt":1764219150156,"albumMessages":null}],"activityCenterState":{"hasSeen":true,"updatedAt":0},"discordOldestMessageTimestamp":0}}'
2025-11-27 12:52:30.148 DEBUG Signal SignalType.MESSAGES_NEW is received in 0 seconds
2025-11-27 12:52:30.148 INFO Received signal: {'type': 'messages.new', 'event': {'notifications': None, 'communities': [{'id': '0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f', 'memberRole': 1, 'isControlNode': True, 'verified': False, 'joined': True, 'joinedAt': 1764219150, 'spectated': False, 'requestedAccessAt': 0, 'name': 'my 73280', 'description': 'Majority gun policy TV by.', 'introMessage': '', 'outroMessage': '', 'tags': [], 'chats': {'b054a343-d8f2-4d08-8404-766924f905e5': {'id': 'b054a343-d8f2-4d08-8404-766924f905e5', 'name': 'general', 'color': '#ffffff', 'emoji': '', 'description': 'General channel for the community', 'members': None, 'permissions': {'access': 1}, 'canPost': True, 'canView': True, 'canPostReactions': True, 'viewersCanPostReactions': False, 'position': 0, 'categoryID': '', 'tokenGated': False, 'hideIfPermissionsNotMet': False, 'missingEncryptionKey': False}}, 'categories': {}, 'images': None, 'permissions': {'access': 3}, 'members': {'0x047261d3f4edc03adbf2f2aa3018463bfc830d706e60246a14b93107b91dc5399d03ec5c4882665559f4c225cfa2a23768bd64ac35eda992edadf60cbea5880cdb': {'roles': [1]}}, 'canRequestAccess': False, 'canManageUsers': True, 'canDeleteMessageForEveryone': True, 'canJoin': False, 'color': '#ffffff', 'isMember': True, 'muted': False, 'muteTill': '0001-01-01T00:00:00Z', 'adminSettings': {'pinMessageAllMembersEnabled': False}, 'encrypted': False, 'pendingAndBannedMembers': {}, 'tokenPermissions': {'80803281-a306-4165-9cd4-59ba5b879ea9': {'id': '80803281-a306-4165-9cd4-59ba5b879ea9', 'type': 1, 'token_criteria': [{'contract_addresses': {'31337': '0x9d4454B023096f34B160D6B654540c56A1F81688'}, 'type': 1, 'symbol': 'SNT', 'amount': '1e-18', 'decimals': 18, 'amountInWei': '1'}]}}, 'communityTokensMetadata': None, 'activeMembersCount': 0, 'pubsubTopic': '', 'lastOpenedAt': 0, 'clock': 1764219150115}], 'discordOldestMessageTimestamp': 0}, 'timestamp': 1764219150}
2025-11-27 12:52:30.149 DEBUG Sending POST request to url http://127.0.0.1:7560/statusgo/CallRPC with data: {"id": 4, "jsonrpc": "2.0", "method": "wakuext_acceptRequestToJoinCommunity", "params": [{"id": "0xd97933e60201a7ba5c0480ec966d9f10167a1d98cc8725478c8fe7b5e88715b6"}]}
2025-11-27 12:52:30.150 DEBUG http://127.0.0.1:7560 "POST /statusgo/CallRPC HTTP/1.1" 200 87
2025-11-27 12:52:30.150 DEBUG Got response: b'{"jsonrpc":"2.0","id":4,"error":{"code":-32000,"message":"sql: no rows in result set"}}'
2025-11-27 12:52:30.150 ERROR Attempt 1/40: Unexpected error: {'code': -32000, 'message': 'sql: no rows in result set'}
2025-11-27 12:52:30.654 DEBUG Sending POST request to url http://127.0.0.1:7560/statusgo/CallRPC with data: {"id": 5, "jsonrpc": "2.0", "method": "wakuext_acceptRequestToJoinCommunity", "params": [{"id": "0xd97933e60201a7ba5c0480ec966d9f10167a1d98cc8725478c8fe7b5e88715b6"}]}
2025-11-27 12:52:30.659 DEBUG http://127.0.0.1:7560 "POST /statusgo/CallRPC HTTP/1.1" 200 87
2025-11-27 12:52:30.660 DEBUG Got response: b'{"jsonrpc":"2.0","id":5,"error":{"code":-32000,"message":"sql: no rows in result set"}}'
2025-11-27 12:52:30.660 ERROR Attempt 2/40: Unexpected error: {'code': -32000, 'message': 'sql: no rows in result set'}
2025-11-27 12:52:31.165 DEBUG Sending POST request to url http://127.0.0.1:7560/statusgo/CallRPC with data: {"id": 6, "jsonrpc": "2.0", "method": "wakuext_acceptRequestToJoinCommunity", "params": [{"id": "0xd97933e60201a7ba5c0480ec966d9f10167a1d98cc8725478c8fe7b5e88715b6"}]}
2025-11-27 12:52:31.189 DEBUG http://127.0.0.1:7560 "POST /statusgo/CallRPC HTTP/1.1" 200 None
2025-11-27 12:52:31.189 DEBUG Got response: b'{"jsonrpc":"2.0","id":6,"result":{"requestsToJoinCommunity":[{"id":"0xd97933e60201a7ba5c0480ec966d9f10167a1d98cc8725478c8fe7b5e88715b6","publicKey":"0x04b5deee0773aaeb29987fdbde582fff3fa3511c9f686be8a2f6486e23a8e77f4a159d2ed92abe5a6a875e1bd3b187219f1391291403b85149ae167630665e27e4","clock":1764219150,"chatId":"","communityId":"0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f","state":3,"our":false,"deleted":false,"customizationColor":"primary","shareFutureAddresses":false}],"notifications":null,"communities":[{"id":"0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f","memberRole":1,"isControlNode":true,"verified":false,"joined":true,"joinedAt":1764219150,"spectated":false,"requestedAccessAt":0,"name":"my 73280","description":"Majority gun policy TV by.","introMessage":"","outroMessage":"","tags":[],"chats":{"b054a343-d8f2-4d08-8404-766924f905e5":{"id":"b054a343-d8f2-4d08-8404-766924f905e5","name":"general","color":"#ffffff","emoji":"","description":"General channel for the community","members":null,"permissions":{"access":1},"canPost":true,"canView":true,"canPostReactions":true,"viewersCanPostReactions":false,"position":0,"categoryID":"","tokenGated":false,"hideIfPermissionsNotMet":false,"missingEncryptionKey":false}},"categories":{},"images":null,"permissions":{"access":3},"members":{"0x047261d3f4edc03adbf2f2aa3018463bfc830d706e60246a14b93107b91dc5399d03ec5c4882665559f4c225cfa2a23768bd64ac35eda992edadf60cbea5880cdb":{"roles":[1]},"0x04b5deee0773aaeb29987fdbde582fff3fa3511c9f686be8a2f6486e23a8e77f4a159d2ed92abe5a6a875e1bd3b187219f1391291403b85149ae167630665e27e4":{"last_update_clock":1764219150}},"canRequestAccess":false,"canManageUsers":true,"canDeleteMessageForEveryone":true,"canJoin":false,"color":"#ffffff","isMember":true,"muted":false,"muteTill":"0001-01-01T00:00:00Z","adminSettings":{"pinMessageAllMembersEnabled":false},"encrypted":false,"pendingAndBannedMembers":{},"tokenPermissions":{"80803281-a306-4165-9cd4-59ba5b879ea9":{"id":"80803281-a306-4165-9cd4-59ba5b879ea9","type":1,"token_criteria":[{"contract_addresses":{"31337":"0x9d4454B023096f34B160D6B654540c56A1F81688"},"type":1,"symbol":"SNT","amount":"1e-18","decimals":18,"amountInWei":"1"}]}},"communityTokensMetadata":null,"activeMembersCount":0,"pubsubTopic":"","lastOpenedAt":0,"clock":1764219151184}],"discordOldestMessageTimestamp":0}}'
2025-11-27 12:52:31.190 DEBUG Sending POST request to url http://127.0.0.1:7560/statusgo/CallRPC with data: {"id": 7, "jsonrpc": "2.0", "method": "wakuext_communities"}
2025-11-27 12:52:31.200 DEBUG http://127.0.0.1:7560 "POST /statusgo/CallRPC HTTP/1.1" 200 1839
2025-11-27 12:52:31.200 DEBUG Got response: b'{"jsonrpc":"2.0","id":7,"result":[{"id":"0x02b480a3cc312f3db6aaabc40191bed2809bce59df5f459f7152bd44ccc5660e5f","memberRole":1,"isControlNode":true,"verified":false,"joined":true,"joinedAt":1764219150,"spectated":false,"requestedAccessAt":0,"name":"my 73280","description":"Majority gun policy TV by.","introMessage":"","outroMessage":"","tags":[],"chats":{"b054a343-d8f2-4d08-8404-766924f905e5":{"id":"b054a343-d8f2-4d08-8404-766924f905e5","name":"general","color":"#ffffff","emoji":"","description":"General channel for the community","members":null,"permissions":{"access":1},"canPost":true,"canView":true,"canPostReactions":true,"viewersCanPostReactions":false,"position":0,"categoryID":"","tokenGated":false,"hideIfPermissionsNotMet":false,"missingEncryptionKey":false}},"categories":{},"images":null,"permissions":{"access":3},"members":{"0x047261d3f4edc03adbf2f2aa3018463bfc830d706e60246a14b93107b91dc5399d03ec5c4882665559f4c225cfa2a23768bd64ac35eda992edadf60cbea5880cdb":{"roles":[1]},"0x04b5deee0773aaeb29987fdbde582fff3fa3511c9f686be8a2f6486e23a8e77f4a159d2ed92abe5a6a875e1bd3b187219f1391291403b85149ae167630665e27e4":{"last_update_clock":1764219150}},"canRequestAccess":false,"canManageUsers":true,"canDeleteMessageForEveryone":true,"canJoin":false,"color":"#ffffff","isMember":true,"muted":false,"muteTill":"0001-01-01T00:00:00Z","adminSettings":{"pinMessageAllMembersEnabled":false},"encrypted":false,"pendingAndBannedMembers":{},"tokenPermissions":{"80803281-a306-4165-9cd4-59ba5b879ea9":{"id":"80803281-a306-4165-9cd4-59ba5b879ea9","type":1,"token_criteria":[{"contract_addresses":{"31337":"0x9d4454B023096f34B160D6B654540c56A1F81688"},"type":1,"symbol":"SNT","amount":"1e-18","decimals":18,"amountInWei":"1"}]}},"communityTokensMetadata":null,"activeMembersCount":0,"pubsubTopic":"","lastOpenedAt":0,"clock":1764219151184}]}'
PASSED                                                                                                                                                [ 66%]

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've opened issue for this one #7161 Singals are beautiful, but demanding on state consistency.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I replied in the ticket

assert accept_resp is not None, f"Failed to accept request: {accept_resp}"

# Explicitly reevaluate community members so token-based roles are applied
self.owner.wakuext_service.reevaluate_community_members_permissions(community_id)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should be done automatically

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Evaluation removed at cbfd86f

Copy link
Collaborator

@igor-sirotin igor-sirotin Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is probably where we can wait for new.messages signal and check CommunityChanges

there's this signal that you should wait for here:

MemberReevaluationStatus = "community.memberReevaluationStatus"

@romanzac romanzac force-pushed the test/token-gated-communities branch from 49ce18a to d1a9df7 Compare November 26, 2025 05:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants