Repository navigation
test(relay): prove per-community media and service-bot membership - #8577
Draft
mcdickenson wants to merge 2 commits into
Draft
mcdickenson wants to merge 2 commits into
mcdickenson wants to merge 2 commits into
Conversation
…munities Signed-off-by: Matt Dickenson <mdickenson@squareup.com>
Signed-off-by: Matt Dickenson <mdickenson@squareup.com>
🔐 Codex Security Review
|
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add a real-router regression for membership-only relays with NIP-FI off. It creates two communities through signed operator requests, adds the same service bot through each owner's signed member command, and proves that ordinary members, dual members and the shared bot retain separate community access.
The test covers:
Only the S3 wire service is an in-memory loopback fixture. The test uses the production router, authentication, tenant lookup, owner/member commands, Postgres, Redis replay guard, media processing and serving. It requires explicit disposable loopback database/Redis URLs, rejects the default Desktop database name, and generates every identity key fresh. No production behavior changes.
Validation: the ignored integration test passed against disposable local Postgres17/Redis7. Behavioral negative controls fail when upload membership, read membership, or the community component of the sidecar key is removed; all source mutations were restored. Final head
e219f5cc9f697cd081328c55a7255880a48ff64bpassed the normal scanner, formatter, sign-off, branch/org checks, file-size check, Rust unit suite (287s) and Tauri checks (64s). The acceptance test source is byte-identical to the passing local run; a final file rename follows the repository_tests.rsconvention. PostgreSQL test discovery and its affected static regression pass.Run with
BUZZ_TEST_DATABASE_URL=<disposable loopback DB> REDIS_URL=<disposable loopback Redis> cargo test -p buzz-relay --lib membership_only_two_community_media_and_service_bot_roundtrip -- --ignored. Initialize that disposable DB with the repository schema first. This is in-process router acceptance, not deployed ingress, session issuance or human UI acceptance; keep the PR draft pending maintainer/human verification.Review requested from @holmes and @block/buzz-oss-team. Maintainer assignment is needed because the fork contributor cannot assign upstream reviewers.
Upstream CI run 40131331698 and the image/RC workflows currently report
ACTION_REQUIREDfor fork approval. DCO passes. Maintainer workflow approval is pending; this is not a failed code check.