Skip to content

runtime: Relax program data account check in migration#9891

Merged
febo merged 4 commits intoanza-xyz:masterfrom
febo:simd-0444
Jan 13, 2026
Merged

runtime: Relax program data account check in migration#9891
febo merged 4 commits intoanza-xyz:masterfrom
febo:simd-0444

Conversation

@febo
Copy link

@febo febo commented Jan 9, 2026

Problem

SIMD-0444 enables runtime-level program migrations when the target program data accounts is already funded, which currently it is not possible.

Summary of Changes

This PR adds a feature gate for SIMD-0444 and updates the migration validation to allow pre-funded program data accounts.

@codecov-commenter
Copy link

codecov-commenter commented Jan 9, 2026

Codecov Report

❌ Patch coverage is 97.73585% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 82.6%. Comparing base (ce7a7cb) to head (28240e7).
⚠️ Report is 23 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff            @@
##           master    #9891    +/-   ##
========================================
  Coverage    82.6%    82.6%            
========================================
  Files         848      848            
  Lines      316763   316983   +220     
========================================
+ Hits       261754   261972   +218     
- Misses      55009    55011     +2     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@febo febo marked this pull request as ready for review January 9, 2026 11:45
@febo febo requested review from buffalojoec and t-nelson January 9, 2026 11:45
@febo febo added the v3.1 Backport to v3.1 branch label Jan 9, 2026
@mergify
Copy link

mergify bot commented Jan 9, 2026

Backports to the beta branch are to be avoided unless absolutely necessary for fixing bugs, security issues, and perf regressions. Changes intended for backport should be structured such that a minimum effective diff can be committed separately from any refactoring, plumbing, cleanup, etc that are not strictly necessary to achieve the goal. Any of the latter should go only into master and ride the normal stabilization schedule. Exceptions include CI/metrics changes, CLI improvements and documentation updates on a case by case basis.

@t-nelson
Copy link

t-nelson commented Jan 9, 2026

can we title this with something more relevant to the change? folks shouldn't have to go to the simd to figure out whether a pr is relevant

@febo febo marked this pull request as ready for review January 10, 2026 03:21
@febo febo requested a review from t-nelson January 10, 2026 03:21
Copy link

@buffalojoec buffalojoec left a comment

Choose a reason for hiding this comment

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

Implementation looks great! Let's just beef up the test coverage a bit.

@febo febo requested a review from buffalojoec January 10, 2026 16:10
@febo febo requested a review from buffalojoec January 12, 2026 22:38
Copy link

@t-nelson t-nelson left a comment

Choose a reason for hiding this comment

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

much better ty!


let program_data_address = get_program_data_address(program_address);

// The program data account should not exist.

Choose a reason for hiding this comment

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

ok nice this is what i was expecting to see

*program_address,
));
}
let program_data_account_lamports = if allow_prefunded {

Choose a reason for hiding this comment

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

the replicode here is annoying. not an issue for this change set, rather an issue for some previous, poorly reviewed change set

@febo febo changed the title runtime: Add SIMD-0444 feature gate runtime: Relax program data account check in migration Jan 13, 2026
@febo febo added this pull request to the merge queue Jan 13, 2026
Merged via the queue into anza-xyz:master with commit 5390905 Jan 13, 2026
47 checks passed
@febo febo deleted the simd-0444 branch January 13, 2026 20:54
mergify bot pushed a commit that referenced this pull request Jan 13, 2026
* Add feature gate

* Add tests

* Improve test coverage

* Add zero-lamports tests back

(cherry picked from commit 5390905)

# Conflicts:
#	feature-set/src/lib.rs
febo added a commit that referenced this pull request Jan 16, 2026
…t of #9891) (#9998)

* runtime: Relax program data account check in migration (#9891)

* Add feature gate

* Add tests

* Improve test coverage

* Add zero-lamports tests back

(cherry picked from commit 5390905)

# Conflicts:
#	feature-set/src/lib.rs

* Fix conflict

---------

Co-authored-by: febo <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

v3.1 Backport to v3.1 branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants