Skip to content

feat(contracts): SC-HARD-09/10/11/12 multisig timelock, payment strea… - #1463

Open
emmanueltony792-blip wants to merge 1 commit into
StellarDevHub:mainfrom
emmanueltony792-blip:feat/sc-hard-09-10-11-12-multisig-streaming-did-insurance
Open

emmanueltony792-blip wants to merge 1 commit into
StellarDevHub:mainfrom
emmanueltony792-blip:feat/sc-hard-09-10-11-12-multisig-streaming-did-insurance

Conversation

@emmanueltony792-blip

Copy link
Copy Markdown

…ming, DID registry, parametric insurance (#1355 #1356 #1357 #1358)

SC-HARD-09 (multisig_wallet_timelock):

  • Monotonic nonce replay guard on every proposal submission
  • m-of-n threshold enforcement with contracterror variants
  • Timelocked execution (configurable period in ledger seconds)
  • Signer add/remove with reentrancy guard
  • Separate test.rs: nonce duplicate/lower rejection, threshold, timelock, batch proposals

SC-HARD-10 (payment_streaming):

  • Per-second linear vesting using ledger timestamps (start_time/stop_time)
  • deposit * elapsed / duration arithmetic with overflow checks
  • Multi-stream support (ID-keyed Map)
  • Sender cancel_stream returns (recipient_owed, sender_clawback) tuple
  • Separate test.rs: partial withdrawals, exact vested amounts, cancel clawback

SC-HARD-11 (did_registry):

  • W3C DID Core 1.0 compliant did:stellar document storage
  • Multi-key rotation via rotate_key (old owner locked out after handoff)
  • Controller delegation for contributor proof additions
  • Service endpoint attribute updates
  • Deactivation: revoked DIDs reject all subsequent mutations
  • Separate test.rs: 19 tests covering full lifecycle

SC-HARD-12 (parametric_insurance):

  • Multi-oracle whitelist with per-trigger value accumulation
  • Quorum threshold: claim blocked until min oracle reports received
  • Median calculation (insertion sort, no_std) used as trigger value
  • Automated payout credit on claim, withdraw_claim for token transfer
  • Solvency check at policy purchase time
  • Separate test.rs: quorum tests, median above/below, expiry, double-claim

closes #1355
closes #1356
closes #1357
closes #1358

…ming, DID registry, parametric insurance (StellarDevHub#1355 StellarDevHub#1356 StellarDevHub#1357 StellarDevHub#1358)

SC-HARD-09 (multisig_wallet_timelock):
- Monotonic nonce replay guard on every proposal submission
- m-of-n threshold enforcement with contracterror variants
- Timelocked execution (configurable period in ledger seconds)
- Signer add/remove with reentrancy guard
- Separate test.rs: nonce duplicate/lower rejection, threshold, timelock, batch proposals

SC-HARD-10 (payment_streaming):
- Per-second linear vesting using ledger timestamps (start_time/stop_time)
- deposit * elapsed / duration arithmetic with overflow checks
- Multi-stream support (ID-keyed Map)
- Sender cancel_stream returns (recipient_owed, sender_clawback) tuple
- Separate test.rs: partial withdrawals, exact vested amounts, cancel clawback

SC-HARD-11 (did_registry):
- W3C DID Core 1.0 compliant did:stellar document storage
- Multi-key rotation via rotate_key (old owner locked out after handoff)
- Controller delegation for contributor proof additions
- Service endpoint attribute updates
- Deactivation: revoked DIDs reject all subsequent mutations
- Separate test.rs: 19 tests covering full lifecycle

SC-HARD-12 (parametric_insurance):
- Multi-oracle whitelist with per-trigger value accumulation
- Quorum threshold: claim blocked until min oracle reports received
- Median calculation (insertion sort, no_std) used as trigger value
- Automated payout credit on claim, withdraw_claim for token transfer
- Solvency check at policy purchase time
- Separate test.rs: quorum tests, median above/below, expiry, double-claim
@vercel

vercel Bot commented Sep 28, 2026

Copy link
Copy Markdown

@emmanueltony792-blip is attempting to deploy a commit to the Ayomide Adeniran's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Sep 28, 2026

Copy link
Copy Markdown

@emmanueltony792-blip 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

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant