Skip to content

smartcontract: add AccessPassType::EdgeSeat(Pubkey) variant#3632

Open
juan-malbeclabs wants to merge 4 commits intomainfrom
jo/access_pass_edge
Open

smartcontract: add AccessPassType::EdgeSeat(Pubkey) variant#3632
juan-malbeclabs wants to merge 4 commits intomainfrom
jo/access_pass_edge

Conversation

@juan-malbeclabs
Copy link
Copy Markdown
Contributor

Summary of Changes

  • Add AccessPassType::EdgeSeat(Pubkey) variant to tie an access pass to a specific onchain Seat pubkey, mirroring the existing SolanaValidator(Pubkey) pattern
  • Add --accesspass-type edge-seat --seat <PUBKEY> support to access-pass set
  • Add --edge-seat and --seat-pubkey filter flags to access-pass list

Diff Breakdown

Category Files Lines (+/-) Net
Core logic 2 +27 / -0 +27
Scaffolding 2 +28 / -0 +28
Tests 1 +107 / -0 +107
Docs 1 +5 / -0 +5

Mostly test additions to cover the two new CLI code paths; core change is small and additive.

Key files (click to expand)
  • smartcontract/cli/src/accesspass/set.rs — adds EdgeSeat to CliAccessPassType, --seat arg, match arm in execute(), and two new tests
  • smartcontract/programs/doublezero-serviceability/src/state/accesspass.rs — adds EdgeSeat(Pubkey) variant with serde, Display, to_discriminant_string, and Validate (rejects default pubkey)
  • smartcontract/cli/src/accesspass/list.rs — adds --edge-seat and --seat-pubkey filter flags
  • smartcontract/programs/doublezero-serviceability/src/processors/accesspass/set.rs — adds null-pubkey guard for EdgeSeat matching the existing SolanaValidator check

Testing Verification

  • All existing CLI access-pass set tests pass (16 tests unmodified + 2 new: test_cli_accesspass_set_edge_seat_missing_seat and test_cli_accesspass_set_edge_seat_success)
  • make rust-lint passes cleanly

@juan-malbeclabs juan-malbeclabs enabled auto-merge (squash) May 1, 2026 00:28
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.

1 participant