magicblock-labs / magicblock-labs/redsuite

Validate ephemeral-account lifecycle and sponsorship boundaries

Open
#119 0 comments 0 reactions 1 assignee View on GitHub

@bzawisto is already working on this.

Since Sep 11, 2026.

Dominant language
Rust
Stars
1
Forks
0
Avg merge
3h 58m
Merged PRs (30d)
48

Description

## Outcome

Ephemeral-account creation, resizing, and closure must enforce caller authority and move sponsor/vault lamports correctly.

These operations have different rules from ordinary delegated accounts, and the current security scenarios do not cover their complete lifecycle.

## Scope

Through an authorized fixture program, create an ephemeral account, grow and shrink it, close it, and recreate it. Record account owner, size, lamports, and sponsor/vault balances before and after each operation.

Submit conflicting resize/close/recreate transactions against the same address. Add negative cases using a foreign caller, missing sponsor signature, substituted vault, occupied address, and prohibited direct top-level invocation.

Use an independent payer where needed so transaction fees do not obscure sponsor/refund accounting.

## Acceptance criteria

- [ ] Valid operations produce the expected account state and sponsor/vault balance changes.
- [ ] Invalid calls fail without unauthorized account or sponsor/vault changes, apart from separately accounted permitted transaction fees.
- [ ] Conflicting operations resolve to a valid serialized outcome without duplicate refunds.
- [ ] Closure and recreation do not retain unauthorized ownership or stale account contents.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.