Skip to content

feat(contracts): SC-HARD-13/14/15/16 peer review, quadratic funding, … - #1462

Open
Ebuka042-pixel wants to merge 1 commit into
StellarDevHub:mainfrom
Ebuka042-pixel:feat/sc-hard-13-14-15-16-peer-review-qf-zk-ttl
Open

Ebuka042-pixel wants to merge 1 commit into
StellarDevHub:mainfrom
Ebuka042-pixel:feat/sc-hard-13-14-15-16-peer-review-qf-zk-ttl

Conversation

@Ebuka042-pixel

Copy link
Copy Markdown

…ZK verifier, TTL manager

SC-HARD-13 — Peer Review Incentive Protocol with Staking & Slashing

  • Commit-reveal blind grading (sha256(grade || salt))
  • Median consensus with insertion-sort; accurate reviewers share reward pool
  • Outlier slashing into community treasury (basis-point configurable)
  • Stake lock-up / withdrawal with pending-review guard
  • Separate test.rs + proptests.rs (property tests via proptest crate)
  • Standardized event emission via contract-events crate

SC-HARD-14 — Quadratic Funding & Voting Allocation Engine

  • QF formula: payout ∝ (Σ sqrt(c_i))² — breadth of donors beats single whales
  • Sybil resistance: whitelist-only donors, one donation per project per address
  • Integer Newton's-method sqrt scaled by SCALE=1_000_000 for 6-decimal precision
  • Separate test.rs with edge-case and acceptance-criteria assertions

SC-HARD-15 — ZK Proof Verifier Compute Optimization

  • O(1) instruction-budget verification via binding hash commitment
  • sha256(vk_hash || public_inputs || nullifier || student_xdr) pattern
  • Persistent nullifier store prevents replay attacks
  • Admin-updatable verifying key hash for circuit upgrades
  • Separate test.rs covering valid proof, invalid proof, replay, key upgrade

SC-HARD-16 — Standardized State Archival Defense & Dynamic TTL Extension

  • contracts/src/storage_ttl.rs: canonical constants (INSTANCE_BUMP=518400, PERSISTENT_BUMP=518400, >100k ledger target per acceptance criteria)
  • storage_ttl_manager: clean lib.rs + separate test.rs
  • sc16_bump_instance() helper added to all 30 remaining workspace contracts
  • contracts/Cargo.toml: added peer_review and contract_events as members

chore: .gitignore — exclude .snap.new, contracts/**/.snap,
contracts/target/, target/ (Rust test snapshots)

closes #1359
closes #1360
closes #1361
closes #1362

…ZK verifier, TTL manager

SC-HARD-13 — Peer Review Incentive Protocol with Staking & Slashing
- Commit-reveal blind grading (sha256(grade || salt))
- Median consensus with insertion-sort; accurate reviewers share reward pool
- Outlier slashing into community treasury (basis-point configurable)
- Stake lock-up / withdrawal with pending-review guard
- Separate test.rs + proptests.rs (property tests via proptest crate)
- Standardized event emission via contract-events crate

SC-HARD-14 — Quadratic Funding & Voting Allocation Engine
- QF formula: payout ∝ (Σ sqrt(c_i))² — breadth of donors beats single whales
- Sybil resistance: whitelist-only donors, one donation per project per address
- Integer Newton's-method sqrt scaled by SCALE=1_000_000 for 6-decimal precision
- Separate test.rs with edge-case and acceptance-criteria assertions

SC-HARD-15 — ZK Proof Verifier Compute Optimization
- O(1) instruction-budget verification via binding hash commitment
- sha256(vk_hash || public_inputs || nullifier || student_xdr) pattern
- Persistent nullifier store prevents replay attacks
- Admin-updatable verifying key hash for circuit upgrades
- Separate test.rs covering valid proof, invalid proof, replay, key upgrade

SC-HARD-16 — Standardized State Archival Defense & Dynamic TTL Extension
- contracts/src/storage_ttl.rs: canonical constants (INSTANCE_BUMP=518400,
  PERSISTENT_BUMP=518400, >100k ledger target per acceptance criteria)
- storage_ttl_manager: clean lib.rs + separate test.rs
- sc16_bump_instance() helper added to all 30 remaining workspace contracts
- contracts/Cargo.toml: added peer_review and contract_events as members

chore: .gitignore — exclude *.snap.new, contracts/**/*.snap,
  contracts/target/, target/ (Rust test snapshots)
@vercel

vercel Bot commented Sep 28, 2026

Copy link
Copy Markdown

@Ebuka042-pixel 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

@Ebuka042-pixel 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