Implement BitPredict Core Functionality with Admin Controls and Documentation#1
Open
Implement BitPredict Core Functionality with Admin Controls and Documentation#1
Conversation
…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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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
✅ Core Data Structures & Market Creation
marketsregistry with price/block trackinguser-predictionsposition management✅ Prediction Participation Mechanism
✅ Market Resolution & Reward System
✅ Administrative Controls
✅ Project Documentation
Checklist:
clarinet checkReviewer Notes:
Focus areas:
claim-winnings)resolve-market)make-prediction)Security-critical components marked with
⚠️in code commentsDocumentation 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:
Next Phase: