| id |
title |
status |
assignee |
created_date |
labels |
dependencies |
references |
priority |
| TASK-12 |
Port Commitment Channels to Solidity (Labor, Subscription, Staking) |
To Do |
|
2026-04-03 21:42 |
| solidity |
| commitments |
| issuance |
|
|
| /home/jeffe/Github/myco-bonding-curve/src/commitments/ |
| /home/jeffe/Github/payment-infra/contracts/commitment/ |
|
medium |
Description
Translate the three commitment issuance channels from Python to Solidity. These enable non-financial token minting paths for community economies.
- Labor Issuance (src/commitments/labor.py):
- Attestation oracle verifies work → mint tokens at governed rate
- Rate-limited per attestor per time window
- Integrates with WeaveRegistry from payment-infra (commitment types: Dev Hours, Design, Facilitation)
- CommitmentToken.sol (ERC-1155) already exists in payment-infra
- Subscription DCA (src/commitments/subscription.py):
- Recurring pledges with loyalty multipliers
- Time-weighted minting (longer subscription → better rate)
- Chainlink Automation for recurring execution
- Staking Lockups (src/commitments/staking.py):
- Duration-weighted bonus minting: sqrt concave curve
- Lock collateral for N days → receive bonus tokens
- Integrates with LST staking yields from cross-chain module
All channels feed into the bonding curve reserve, increasing collateral backing for tranches.
Acceptance Criteria