sui-move-testing
Installation
SKILL.md
Sui Move Testing
Test the invariant and threat surface, not only the happy-path function name.
Target repository instructions, accepted design records, pinned toolchain behavior, and published compatibility commitments take precedence over this standard's examples.
Cover every risk layer
- Pure math: tables, boundaries, monotonicity, inverse dust bounds, and properties.
- Lifecycle: every legal edge and rejection from every illegal source state.
- Authorization: allowed and forbidden actions, rotation, revocation, last-authority destruction or handoff, pause, and version precedence.
- Accounting: reserves, fees, allocations, vesting, burns, and conservation after operations and sequences.
- Adversarial: direct public calls, PTB composition, replay, third-party signature submission, expiry, wrong domain, wrong type or object, slippage, stale or selectable oracle data, callback-like handoffs, randomness selection, duplicate settlement, and hostile assets.
- Events: every payload field and full reducer replay against final state.
- Upgrades: compatibility rejection for incompatible changes to existing public function signatures or struct and enum layouts and abilities; permitted generic-constraint relaxation; initializer non-rerun; old-version safety or operational rejection; capability binding; policy narrowing; new-type migration; and dependency relinking.
- Deployment and dependencies: dry run, finality, normalized artifacts, exact pins, and live external ABI checks.