Overview
Each crate defines its own errors — assetsup/src/error.rs, contrib/src/error.rs, multisig-wallet/src/errors.rs, multisig_transfer/src/errors.rs. Independently numbered enums mean the same integer means different things per contract, making backend error handling ambiguous and cross-contract calls hard to interpret.
Tasks
Acceptance Criteria
Notes for Contributors
Requires Rust + Soroban. Workspace: contracts/ (soroban-sdk 22, members: assetsup, contrib, multisig-wallet, multisig_transfer, asset-maintenance). Run cargo test --all, cargo fmt --all -- --check, and cargo clippy --all-targets --all-features -- -D warnings before opening a PR — CI enforces all three. Comment below to be assigned.
Overview
Each crate defines its own errors —
assetsup/src/error.rs,contrib/src/error.rs,multisig-wallet/src/errors.rs,multisig_transfer/src/errors.rs. Independently numbered enums mean the same integer means different things per contract, making backend error handling ambiguous and cross-contract calls hard to interpret.Tasks
Unauthorized,NotInitialized,AlreadyInitialized,InvalidInput) into a shared types crate with fixed codes.Acceptance Criteria
Notes for Contributors
Requires Rust + Soroban. Workspace:
contracts/(soroban-sdk22, members:assetsup,contrib,multisig-wallet,multisig_transfer,asset-maintenance). Runcargo test --all,cargo fmt --all -- --check, andcargo clippy --all-targets --all-features -- -D warningsbefore opening a PR — CI enforces all three. Comment below to be assigned.