Skip to content

[SC-75] Root Cargo.toml's SC-43 cross-reference needs re-scoping after SC-58/59/60 #1346

Description

@yusuftomilola

Overview

The workspace Cargo.toml's [profile.release] comment says overflow-checks are "Kept deliberately... Converting the traps into typed errors is [SC-43]" — that issue is closed, and presumably converted arithmetic overflow traps specifically. [SC-58]/[SC-59]/[SC-60] found dozens of unrelated .unwrap()/.expect() traps (storage lookups, not arithmetic) still present across three crates, which SC-43's narrower scope likely never touched — worth clarifying in the comment (and in contracts/README.md if it's referenced there too) that SC-43 covered overflow specifically, not "traps" broadly, so a future reader doesn't assume the general problem is already solved.

Tasks

  • Re-read what SC-43 actually changed and confirm its scope was arithmetic overflow only.
  • Update the Cargo.toml comment to reference [SC-43] as scoped to overflow specifically, and cross-reference [SC-58]/[SC-59]/[SC-60] for the broader non-arithmetic trap cleanup.

Acceptance Criteria

  • The Cargo.toml comment accurately scopes what SC-43 did and doesn't overclaim it solved trap-vs-typed-error broadly.

Dependencies

Follows from [SC-58]/[SC-59]/[SC-60].

Notes for Contributors

Requires Rust + Soroban. Workspace: contracts/ (soroban-sdk 23, 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    contractdocumentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions