For state-changing operations:
1. Validate configuration.
2. Fetch fresh chain state.
3. Verify NEAR quote invariant.
4. Verify relevant token programs.
5. Build official instructions.
6. Obtain recent blockhash.
7. Simulate where appropriate.
8. Request wallet signature.
9. Submit.
10. Confirm.
11. Read post-transaction state.
12. Verify expected state transition.
A transaction signature alone is not sufficient proof of application success.