Skip to content

feat(settlement): add per-developer minimum balance threshold and adm… - #578

Merged
greatest0fallt1me merged 1 commit into
CalloraOrg:mainfrom
dominiccreates:feature/min-balance
Jun 28, 2026
Merged

feat(settlement): add per-developer minimum balance threshold and adm…#578
greatest0fallt1me merged 1 commit into
CalloraOrg:mainfrom
dominiccreates:feature/min-balance

Conversation

@dominiccreates

Copy link
Copy Markdown
Contributor

this pr closes #527 Adds a per‑developer minimum balance threshold to the GrantFox settlement contract, allowing an admin to enforce a required balance for each developer. This ensures accounts stay funded and active throughout the campaign.

@drips-wave

drips-wave Bot commented Jun 28, 2026

Copy link
Copy Markdown

@dominiccreates Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@greatest0fallt1me

Copy link
Copy Markdown
Contributor

Merged via direct push to main (admin)

@greatest0fallt1me
greatest0fallt1me merged commit b3d2e5f into CalloraOrg:main Jun 28, 2026
1 of 6 checks passed
greatest0fallt1me pushed a commit that referenced this pull request Jun 29, 2026
Recent "-X theirs" auto-resolutions in PRs #578/#579 left contracts/vault/src/lib.rs
in a non-compiling state with 107 errors. This commit reconstructs the intended state:

- remove duplicate get_max_deduct (was defined at L376 and L1305; kept the
  documented copy at L376)
- remove panic-version broadcast (kept the Result-returning version that
  matches the surrounding contract style and reuses VaultError::MetadataTooLong)
- replace inline VaultError enum with the canonical one in errors.rs via
  `mod errors; pub use errors::VaultError;` (the inline copy was missing the
  contracterror macro import and was diverging from errors.rs)
- declare `mod validators;` so validators.rs is wired into the crate
- fix two StorageKey::Meta typos (variant is MetaKey)
- add the missing `&ut` (USDC token) argument to two
  SettlementClient::receive_payment calls (the settlement trait takes 5 args,
  the call sites were passing 4)
- change `max_fee_bps: u16` -> `u32` in `deduct` (Soroban contract ABI does
  not support u16; updated the u16::MAX sentinel to u32::MAX accordingly)

Verified with `cargo check -p callora-vault --lib`.
greatest0fallt1me pushed a commit that referenced this pull request Jun 29, 2026
Recent "-X theirs" auto-resolutions in PRs #578/#579 left contracts/vault/src/lib.rs
in a non-compiling state with 107 errors. This commit reconstructs the intended state:

- remove duplicate get_max_deduct (was defined at L376 and L1305; kept the
  documented copy at L376)
- remove panic-version broadcast (kept the Result-returning version that
  matches the surrounding contract style and reuses VaultError::MetadataTooLong)
- replace inline VaultError enum with the canonical one in errors.rs via
  `mod errors; pub use errors::VaultError;` (the inline copy was missing the
  contracterror macro import and was diverging from errors.rs)
- declare `mod validators;` so validators.rs is wired into the crate
- fix two StorageKey::Meta typos (variant is MetaKey)
- add the missing `&ut` (USDC token) argument to two
  SettlementClient::receive_payment calls (the settlement trait takes 5 args,
  the call sites were passing 4)
- change `max_fee_bps: u16` -> `u32` in `deduct` (Soroban contract ABI does
  not support u16; updated the u16::MAX sentinel to u32::MAX accordingly)

Verified with `cargo check -p callora-vault --lib`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add per-developer minimum balance threshold

2 participants