Skip to content

feat: add escrow immutability flow#30

Merged
dev-jodee merged 6 commits intofix/a26sfr3-audit-remediationsfrom
fix/a26sfr3-immutability-only
Mar 23, 2026
Merged

feat: add escrow immutability flow#30
dev-jodee merged 6 commits intofix/a26sfr3-audit-remediationsfrom
fix/a26sfr3-immutability-only

Conversation

@dev-jodee
Copy link
Collaborator

Summary

  • add escrow-level mutability flag and a SetImmutable instruction to permanently lock config updates
  • update processors so config-changing instructions require mutable escrow, while deposits remain allowed
  • simplify initialization by using Escrow::new(..., is_mutable) and remove redundant immutability constructor paths
  • update integration tests/fixtures for immutability behavior and remove unnecessary withdraw pre-step

Test Plan

  • cargo fmt -p escrow-program -p tests-escrow-program --check
  • cd program && cargo clippy --all-targets -- -D warnings
  • cd tests && cargo clippy --all-targets -- -D warnings

Notes

Restore #[cfg(test)] on the set_immutable integration test module to satisfy clippy in non-test targets.\n\nAlso keep rustfmt import/module ordering updates produced by formatting.
Require escrow mutability in RemoveExtension and UnblockTokenExtension processors to align with other admin config updates.\n\nAdd integration regressions to assert EscrowImmutable is returned after locking escrow.
@dev-jodee
Copy link
Collaborator Author

Already reviewed, had to close the other pr and reopen to simplify conflict resolution.

@dev-jodee dev-jodee merged commit 4a79fd8 into fix/a26sfr3-audit-remediations Mar 23, 2026
6 checks passed
@dev-jodee dev-jodee deleted the fix/a26sfr3-immutability-only branch March 23, 2026 18:34
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