This beta release introduces key foundational modules for Dispute Resolution, WIP token operations, and Royalty Management, as well as internal integration testing improvements and client-side enhancements.
New Features
Dispute Module
* Added raiseDispute() function (excluding dispute_assertion())
* Integration with $IP → $WIP conversion for dispute bonding
* Basic integration test coverage for raiseDispute()
WIP Token Module
* Introduced WIP client with the following functions:
* approve(), deposit(), transfer(), transferFrom(), withdraw(), balanceOf()
* Added getWalletBalance() to the Story client
* Initial integration tests for:
* deposit(), transfer(), withdraw(), balanceOf()
Royalty Module Enhancements
* Added claimAllRevenue()
* Updated:
* payRoyaltyOnBehalf()
* getRoyaltyVaultAddress()
* claimableRevenue() and related helpers
* Added MockERC20 client for transfer simulations
* Removed deprecated snapshot logic and other unused code
* Improved integration tests (note: some tests skipped due to incomplete features)
PAccount Module
* Added owner() read function
* Improved function descriptions for consistency
* Refactored internal helper functions for parameter validation clarity
Testing
* Integration tests added for Dispute, WIP, and Royalty modules
* Some tests (e.g. approve(), transferFrom(), full royalty flow) are pending in future PRs
* owner() function lacks a dedicated test (to be added)
Notes
* Allowance Required: Users must call approve() on the UMA arbitration policy contract to set the correct allowance for dispute bonding.
* Partial Feature Coverage: This beta release is part of a staged rollout; several modules have incomplete test coverage or are awaiting dependent features.
story-protocol/python-sdk0.3.8a1
Key Changes
- **Added mainnet support**
- chain_id '1515' is now supported
- **Register() Bug Fix**
- Fixed camel case bug so that metadata is properly updated
- **New release**
- Manual publish of new version release to PyPi