-
Notifications
You must be signed in to change notification settings - Fork 10
Add SVM Payload Generation Review Checklist and Complement Star Spell Checklist with SVM Payload. #59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jonatascm
wants to merge
12
commits into
sky-ecosystem:master
Choose a base branch
from
jonatascm:svm-payload-generation-checklist
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+107
−0
Open
Add SVM Payload Generation Review Checklist and Complement Star Spell Checklist with SVM Payload. #59
Changes from all commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
01bb0d6
add svm-payload-generation-checklist.md
jonatascm 4912abc
add cross-chain svm payload checklist into star spell checklist
jonatascm 9a8cf04
fix spaces after list
jonatascm 9f37120
add a check payload txt is generated
jonatascm 76df8ea
add commit_hash to script list and fix item
jonatascm 6b64a5f
fix ordering
jonatascm b8c83de
fix headers
jonatascm 78a0420
remove bold
jonatascm e895cad
refactoring titles, removing bolds, removing incorrect items
jonatascm 5a295e9
fix network configuration validation
jonatascm fb65220
Fix validation list
jonatascm 4d997bf
fix small typo
jonatascm File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,98 @@ | ||
| # SVM Spell Payload Generation Checklist | ||
|
|
||
| This checklist complements the EVM Prime Agent Spells Reviewer Checklist for cross-chain governance payloads that execute on Solana via Bridge. | ||
|
|
||
| ## SVM Spell Payload Generation Review Process | ||
|
|
||
| ### Development | ||
|
|
||
| #### Preparation | ||
|
|
||
| - LIST every spell action being deployed: | ||
| - `SCRIPT_NAME`, `scripts/SCRIPT_NAME/` | ||
| - [ ] Spell directory contains generate-payload.ts, validate.ts, and config.ts. | ||
| - [ ] `SCRIPT_NAME.txt` file generated in the `SCRIPT_NAME` folder. | ||
| - [ ] No unrelated files added in the solana payload generation directory. | ||
| - [ ] Correct NETWORK_CONFIGS exported for both devnet and mainnet. | ||
| - [ ] Single ACTION per payload scripts | ||
|
|
||
| #### Proposed Changes | ||
|
|
||
| - LIST every forum post proposing changes for this spell: | ||
| - FORUM_POST_TITLE, FORUM_POST_URL | ||
| - [ ] Forum post follows governance template. | ||
| - [ ] Verify spell content matches the combined scope of the forum posts listed above. | ||
| - [ ] Verify forum posts contain all Solana addresses (programs, PDAs, tokens) used in the spell. | ||
|
|
||
| #### Spell Description & Comments | ||
|
|
||
| - [ ] Spell has clear description of Solana state changes. | ||
| - [ ] Every significant action is clearly commented in generate-payload.ts. | ||
| - [ ] Every account and parameter has valid source url (forum post, poll). | ||
| - [ ] Every parameter is clearly commented with expected before/after values. | ||
|
|
||
|
|
||
| #### Network Configuration | ||
|
|
||
| - List for each script: | ||
| - [ ] `SCRIPT` in `scripts/SCRIPT_NAME` | ||
| - LIST network configurations from `config.ts`: | ||
| - `NETWORK_CONFIG_NAME` | ||
| - LIST every target account: | ||
| - [ ] `FIELD_NAME`: `PUBKEY` | ||
| - [ ] Address matches valid external source. | ||
|
|
||
| #### State Change Verification | ||
|
|
||
| - LIST every account: | ||
| - `ACCOUNT_ADDRESS` (ACCOUNT_NAME) , | ||
| - LIST every field that should change: | ||
| - `FIELD_NAME` from `OLD_VALUE` to `NEW_VALUE` | ||
| - [ ] Value change matches to forum post. | ||
|
|
||
| #### Code Structure & Quality | ||
|
|
||
| - [ ] No unused imports, interfaces, or variables. | ||
| - [ ] All addresses are valid Solana public keys. | ||
| - [ ] Instruction data encoding matches target program interface. | ||
| - [ ] No hardcoded addresses where config values should be used or constants in source | ||
|
|
||
| #### Dependency Checks | ||
|
|
||
| - LIST every package changed or added in the spell: | ||
| - `PACKAGE_NAME@VERSION` | ||
| - [ ] Version matches package.json. | ||
| - [ ] Package is updated or in a safer version | ||
| - [ ] Anchor/SDK version matches program deployment. | ||
|
|
||
| #### Payload Generation | ||
|
|
||
| - [ ] Run generation script: `NETWORK=[network] ts-node ./scripts/SCRIPT_NAME/generate-payload.ts --file FILENAME` | ||
| - [ ] Output file created: `FILENAME-NETWORK.txt` | ||
| - [ ] Payload contains hex-encoded data (no errors in generation). | ||
|
|
||
| ### Validation | ||
|
|
||
| #### Testing | ||
|
|
||
| - LIST each spell action (each instruction in the payload): | ||
| - SCRIPT_NAME tested via TEST_NAME in validate.ts | ||
| - [ ] Test ensures the new value was set correctly. | ||
| - [ ] Test uses `assertNoAccountChanges` for accounts that shouldn't change. | ||
| - [ ] Test verifies account state before and after. | ||
| - [ ] Output log: | ||
| ``` | ||
| EXECUTED_TESTS_LOGS | ||
| ``` | ||
|
|
||
| - [ ] All scripts are covered by validation tests. | ||
| - [ ] All assertions pass locally at `COMMIT_HASH` | ||
|
|
||
|
|
||
| #### Simulation Execution and Output | ||
|
|
||
| For each SCRIPT list the payload generated: | ||
| - `ACTION_NAME` | ||
| - [ ] Run validation script: `NETWORK=[network] ts-node ./scripts/SPELL_NAME/validate.ts --file FILENAME` | ||
| - [ ] Simulation completes successfully (no errors). | ||
| - [ ] `payload_generated` matches to `SCRIPT_NAME.txt` |
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.
Uh oh!
There was an error while loading. Please reload this page.