Skip to content

Conversation

@gid-ctl
Copy link
Owner

@gid-ctl gid-ctl commented Mar 12, 2025

Description:
This PR introduces the foundational components for BitPredict's decentralized prediction markets, delivering a complete operational framework compliant with the project's trustless design principles. The implementation spans smart contract architecture, market lifecycle management, and protocol governance systems.

Key Deliverables:

Contract Initialization & Configuration

  • Protocol settings (minimum stake, fees, oracle config)
  • Bitcoin-native security model via Stacks L2

Core Data Structures & Market Creation

  • markets registry with price/block tracking
  • user-predictions position management

Prediction Participation Mechanism

  • Stake validation and balance checks
  • Real-time stake aggregation ("up"/"down" pools)

Market Resolution & Reward System

  • Oracle-authenticated price finalization
  • Proportional reward calculation engine

Administrative Controls

  • Parameter governance functions
  • Secure fee withdrawal mechanism

Project Documentation

  • Technical architecture breakdown
  • Comprehensive function reference

Checklist:

  • All contracts pass clarinet check
  • Test cases cover edge cases (zero-stake, exact block times)
  • Documentation matches implementation specifics
  • No breaking changes to existing interfaces

Reviewer Notes:

  1. Focus areas:

    • Reward calculation logic (claim-winnings)
    • Oracle authentication flow (resolve-market)
    • STX escrow management (make-prediction)
  2. Security-critical components marked with ⚠️ in code comments

  3. Documentation includes protocol risk disclosures


This implementation establishes BitPredict as a non-custodial speculation platform combining Bitcoin's security with Stacks L2 performance. The system enables:

  • Creation of time-bound BTC price markets
  • Transparent participation mechanics
  • Provably fair reward distribution
  • Sustainable protocol economics

Next Phase:

  • Oracle reputation system implementation
  • Liquidity pool integration
  • Governance module deployment

gid-ctl added 6 commits March 12, 2025 07:50
…ation

- Added contract administration constants including contract-owner and error handling standards.
- Defined error handling constants for various error scenarios.
- Configured protocol settings including oracle integration, minimum stake, fee percentage, and market counter.
- Documented the contract with a detailed description, summary, and advanced features.

This commit sets up the foundational elements for the BitPredict decentralized Bitcoin price prediction engine on Stacks L2.
- Defined `markets` map for prediction market registry.
- Defined `user-predictions` map for tracking participant positions.
- Implemented `create-market` public function to create new prediction markets with validation checks.
- Updated market counter after market creation.

This commit introduces the essential data structures and functionality for managing prediction markets and participant positions.
… markets

- Added `make-prediction` public function to allow users to place prediction stakes.
- Included validation checks for market status, prediction type, minimum stake, and user balance.
- Transferred stake amount from user to contract.
- Updated `user-predictions` map with user prediction details.
- Updated `markets` map with new stake amounts for up and down predictions.

This commit enables users to participate in prediction markets by placing stakes.
- Added `resolve-market` public function to finalize market with the end price.
- Included validation checks for oracle address, market end block, and market resolution status.
- Updated `markets` map with the final price and resolution status.
- Added `claim-winnings` public function to allow users to claim their winnings from resolved markets.
- Included validation checks for market resolution, user prediction, and claim status.
- Calculated winnings, deducted platform fee, and transferred payout to the user.
- Updated `user-predictions` map to mark winnings as claimed.

This commit finalizes the market resolution and winnings claim functionality.
- Implemented `set-oracle-address` to update the oracle address.
- Implemented `set-minimum-stake` to update the minimum stake requirement.
- Implemented `set-fee-percentage` to update the platform fee percentage.
- Implemented `withdraw-fees` to allow contract owner to withdraw accumulated fees.
- Added validation checks for contract owner and parameter constraints.

This commit introduces administrative functions for managing key contract parameters and withdrawing fees.
- Created README.md file.
- Included project overview, description, and key features.
- Added documentation for contract functions and usage instructions.

This commit provides a comprehensive guide to the BitPredict project, enhancing understanding and usability.
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.

2 participants