Overview
contrib/src/insurance.rs (199 lines) and lease.rs (137 lines) are both genuinely declared in lib.rs's module tree (mod insurance; mod lease;) and are the only business logic in the crate beyond the base asset registry that actually compiles — but contracts/contrib/src/tests/mod.rs only declares asset_registry_tests plus the four modules flagged as uncompiled in [SC-61]. There is no test file for insurance or lease at all, despite them being real, live, deployed functionality.
Tasks
Acceptance Criteria
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.
Overview
contrib/src/insurance.rs(199 lines) andlease.rs(137 lines) are both genuinely declared inlib.rs's module tree (mod insurance; mod lease;) and are the only business logic in the crate beyond the base asset registry that actually compiles — butcontracts/contrib/src/tests/mod.rsonly declaresasset_registry_testsplus the four modules flagged as uncompiled in [SC-61]. There is no test file for insurance or lease at all, despite them being real, live, deployed functionality.Tasks
tests/insurance.rscovering policy creation, claim filing (file_claim/whatever the entrypoint is named), and claim status transitions (ClaimStatus, imported byevents.rs).tests/lease.rscovering lease creation, the lease lifecycle referenced bylease.rs's.expect("Lease not found")call sites (see [SC-59]), and expiry handling.tests/mod.rs.Acceptance Criteria
Notes for Contributors
Requires Rust + Soroban. Workspace:
contracts/(soroban-sdk 23, 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.