Matou Contribution Schema
Overview
The Matou Contribution Schema is a comprehensive data structure that defines how contributions are created, tracked, validated, and rewarded within the Matou DAO ecosystem. This schema integrates Ostrom's commons governance principles with modern contribution system design, ensuring cultural alignment, transparency, and scalability.
The schema serves as the foundation for:
- Contribution lifecycle management from creation to completion
- Automated reward distribution through smart contracts
- Governance decision-making and proposal tracking
- Cultural validation and community oversight
- Performance analytics and contributor development
Schema Structure
Core Entities
{
"contribution": {
"metadata": "ContributionMetadata",
"content": "ContributionContent",
"status": "ContributionStatus",
"relationships": "ContributionRelationships",
"rewards": "ContributionRewards",
"validation": "ContributionValidation"
}
}
Entity Relationships
Data Fields
1. ContributionMetadata
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
id | UUID | Yes | Unique contribution identifier | ctr_2024_001_001 |
created_at | ISO 8601 | Yes | Creation timestamp | 2024-01-15T10:30:00Z |
updated_at | ISO 8601 | Yes | Last update timestamp | 2024-01-15T14:45:00Z |
version | String | Yes | Schema version | 0.1 |
proposal_id | UUID | Yes | Associated proposal ID | prop_2024_001 |
contribution_type | Enum | Yes | Type classification | governance, technical, cultural, community |
priority | Enum | Yes | Priority level | low, medium, high, critical |
estimated_duration | Integer | Yes | Estimated hours to complete | 8 |
actual_duration | Integer | No | Actual hours spent | 10 |
deadline | ISO 8601 | No | Completion deadline | 2024-01-30T17:00:00Z |
2. ContributionContent
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
title | String | Yes | Human-readable title | "Create proposal review dashboard" |
description | Text | Yes | Detailed description | "Build a web interface for..." |
objectives | Array[String] | Yes | Specific objectives | ["User authentication", "Data visualization"] |
deliverables | Array[String] | Yes | Expected outputs | ["Working dashboard", "Documentation"] |
acceptance_criteria | Array[String] | Yes | Success criteria | ["Passes security review", "User testing complete"] |
skill_requirements | Array[String] | Yes | Required skills | ["React", "Node.js", "Database design"] |
eligible_roles | Array[Enum] | No | Restrict who can apply/accept based on platform roles | ["governance_steward", "community_admin", "treasury_steward"] |
3. ContributionStatus
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
current_status | Enum | Yes | Current status | draft, open, on_offer, assigned, in_progress, in_review, signed_off, completed, rejected, blocked, deleted |
status_history | Array[StatusChange] | Yes | Status change log | [{"status": "open", "timestamp": "2024-01-15T10:30:00Z"}] |
blocked_reason | String | No | Blocking issue description | "Waiting for API access" |
4. ContributionRelationships
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
parent_contribution | UUID | No | Parent contribution ID | ctr_2024_001_000 |
child_contributions | Array[UUID] | No | Nested contributions | ["ctr_2024_001_003", "ctr_2024_001_004"] |
related_contributions | Array[UUID] | No | Related contributions | ["ctr_2024_001_005"] |
dependent_contributions | Array[UUID] | No | Dependent contributions | ["ctr_2024_001_002"] |
contribution_reviewer | UUID | Yes | Project steward ID | steward_001 |
assigned_contributor | UUID | Yes | Project owner ID | steward_002 |
5. ContributionRewards
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
rewards | Array[Reward] | Yes | Array of different reward types | [{"type": "ctr", "amount": 100}, {"type": "util", "amount": 50}] |
total_reward_value | Float | Yes | Total value of all rewards in NZD | 150.00 |
reward_distributed | Boolean | Yes | Overall reward distribution status | false |
distribution_timestamp | ISO 8601 | No | Complete reward distribution time | 2024-01-16T18:00:00Z |
Standard Reward Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
type | Enum | Yes | Reward type | "ctr", "util", "nzd", "com" |
amount | Integer/Float | Yes | Base reward amount | 100 |
tier_multiplier | Float | Yes | Contributor tier multiplier | 1.2 |
quality_multiplier | Float | No | Quality-based multiplier | 1.1 |
final_amount | Integer/Float | No | Final calculated reward amount | 132 |
distributed | Boolean | Yes | Individual reward distribution status | false |
distribution_timestamp | ISO 8601 | No | Individual reward distribution time | null |
Deferred Reward Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
type | String | Yes | Reward type | "deferred" |
deferred_reward_type | Enum | Yes | Type of deferred reward | "profit_share", "fixed_amount", "hybrid" |
deferred_terms | Object | Yes | Deferred reward terms and conditions | See detailed breakdown below |
value_assessment | Object | Yes | Value assessment details | See detailed breakdown below |
justification | String | Yes | Reason for deferred reward | "Currently no available funds for contribution" |
distributed | Boolean | Yes | Overall distribution status | false |
distribution_timestamp | ISO 8601 | No | Distribution timestamp | null |
deferred_status | Object | Yes | Current status and monitoring info | See detailed breakdown below |
Deferred Terms Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
profit_share.percentage | Float | No | Percentage of profits to share | 1.0 |
profit_share.profit_period | Enum | No | Profit sharing period | "lifetime", "fixed_period" |
profit_share.period_end_date | ISO 8601 | No | End date for fixed period | "2025-01-31T23:59:59Z" |
profit_share.minimum_profit_threshold | Float | No | Minimum profit before rewards | 1000.00 |
profit_share.maximum_reward_cap | Float | No | Maximum reward cap | 50000.00 |
fixed_amount.amount | Integer/Float | No | Fixed reward amount | 10000 |
fixed_amount.token_type | Enum | No | Type of token/currency | "util", "ctr", "nzd" |
fixed_amount.distribution_trigger | Enum | No | Distribution trigger type | "time_based", "funds_availability", "milestone_based", "whichever_first" |
Value Assessment Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
method | Enum | Yes | Assessment method | "community_vote", "expert_evaluation", "algorithmic" |
assessed_by | UUID | Yes | Assessor identifier | "steward_001" |
assessment_date | ISO 8601 | Yes | Assessment timestamp | "2024-02-15T10:00:00Z" |
Deferred Status Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
status | Enum | Yes | Current status | "pending", "active", "distributing", "completed", "expired" |
last_checked | ISO 8601 | Yes | Last status check time | "2024-02-15T10:00:00Z" |
next_check_date | ISO 8601 | Yes | Next scheduled check | "2024-03-15T10:00:00Z" |
total_distributed | Integer/Float | Yes | Total amount distributed so far | 0 |
distribution_history | Array | Yes | History of distributions | [] |
Reward Types
Standard Reward Type Specifications
| Reward Type | Description | Token/Currency | Distribution Method |
|---|---|---|---|
ctr | Contribution tokens for governance rights | CTR | Smart contract minting |
com | Community tokens for governance rights | COM | Smart contract minting |
util | Utility tokens for platform access | UTIL | Treasury transfer |
nzd | New Zealand dollars for fiat payments | NZD | Bank transfer/stablecoin |
Deferred Rewards
{
"type": "deferred",
"deferred_reward_type": "percentage_sales|fixed_amount|hybrid",
"deferred_terms": {
"profit_share": {
"percentage": 1.0,
"profit_period": "lifetime|fixed_period",
"period_end_date": "2025-01-31T23:59:59Z",
"minimum_profit_threshold": 1000.00,
"maximum_reward_cap": 50000.00
},
"fixed_amount": {
"amount": 10000,
"token_type": "util|ctr|nzd",
"distribution_trigger": "time_based|funds_availability|milestone_based|whichever_first",
"time_based": {
"distribution_date": "2025-01-15T10:00:00Z",
"time_from_completion": "1_year"
},
"fund_availability": {
"required_pool_amount": 10000,
"pool_type": "util_pool|ctr_pool|nzd_pool"
},
"milestone_based": {
"milestone_type": "project_completion|revenue_target|user_count|feature_launch|custom",
"milestone_description": "Project reaches 1000 active users",
"milestone_target": 1000,
"milestone_metric": "active_users|revenue|completion_percentage|custom_metric",
"milestone_condition": "greater_than|equal_to|less_than",
"milestone_deadline": "2025-06-30T23:59:59Z",
"milestone_verification": {
"verification_method": "automated|manual|hybrid",
"verification_source": "database|api|manual_report|smart_contract",
"verification_frequency": "daily|weekly|monthly|on_demand"
},
"milestone_status": "pending|in_progress|achieved|expired"
}
}
},
"value_assessment": {
"method": "community_vote|expert_evaluation|algorithmic",
"assessed_by": "steward_001",
"assessment_date": "2024-02-15T10:00:00Z"
},
"justification": "Currently no available funds for contribution",
"distributed": false,
"distribution_timestamp": null,
"deferred_status": {
"status": "pending|active|distributing|completed|expired",
"last_checked": "2024-02-15T10:00:00Z",
"next_check_date": "2024-03-15T10:00:00Z",
"total_distributed": 0,
"distribution_history": []
}
}
6. ContributionValidation
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
evidence_submitted | Array[Evidence] | Yes | Completion evidence | [{"type": "file", "url": "dashboard.zip"}] |
completion_notes | Text | Yes | Contribution completion notes | "Contribution deliverables are all complete to the required acceptance criteria with the evidence provided." |
review_outcome | Enum | No | Review result | approved, rejected, revision_required |
review_feedback | Text | No | Review comments | "Excellent work, meets all criteria" |
quality_rating | Integer | No | Quality score (1-10) | 9 |
reviewed_by | UUID | No | Reviewer ID | reviewer_001 |
reviewed_at | ISO 8601 | No | Review timestamp | 2024-01-16T16:00:00Z |
signed_off_by | UUID | No | Sign-off steward ID | steward_001 |
signed_off_at | ISO 8601 | No | Sign-off timestamp | 2024-01-16T17:00:00Z |
Validation Rules
1. Data Integrity Rules
- Unique Identifiers: All contribution IDs must be globally unique
- Required Fields: All required fields must be present and non-null
- Data Types: All field values must match their defined types
- Timestamps: All timestamps must be valid ISO 8601 format
- References: All UUID references must point to valid entities
2. Business Logic Rules
- Status Transitions: Only valid status transitions are allowed
- Assignment Rules: Contributors can only be assigned to open contributions
- Dependency Validation: Parent contributions cannot be completed before children
- Sign-off Requirements: All contributions must be signed off by a steward before completion
- Reward Calculation: Final rewards must respect tier and quality multipliers for standard reward types
- Deferred Rewards: Deferred rewards require contribution validation and support multiple distribution triggers (time-based, pool-availability, or percentage-based)
- Cultural Alignment: Cultural alignment scores must be provided for cultural contributions
- Reward Distribution: All reward types in the array must be distributed before marking as complete
3. Technical Validation Rules
- File Uploads: Evidence files must meet size and format requirements
- URL Validation: All URLs must be valid and accessible
- Data Relationships: Circular dependencies are not allowed
- Performance Limits: Large data operations must be optimized
Integration Points
1. Governance System Integration
The contribution schema integrates with the governance system to ensure seamless coordination between contribution management and decision-making processes:
- Proposal Status Synchronization: When contribution statuses change, the system automatically updates associated proposal statuses to maintain consistency across the governance workflow
- Voting Integration: Contribution completion directly impacts voting outcomes and decision-making processes, ensuring that governance decisions reflect actual work progress
- Decision Tracking: All contribution-related decisions are automatically recorded in the governance history, providing a complete audit trail of community decisions and their implementation
2. Token System Integration
The schema connects with the token infrastructure to enable automated reward distribution and treasury management:
- Multi-Token Rewards: Support for CTR, UTIL, and NZD rewards with automated distribution through smart contracts and treasury systems
- CTR Minting: Smart contract integration automatically mints CTR tokens when contributions are completed and verified, ensuring timely reward distribution
- UTIL Transfer: Automated UTIL token transfers occur upon contribution completion, providing immediate access to utility tokens for completed work
- NZD Payments: Fiat currency rewards are processed through treasury management systems with proper compliance and tracking
- Deferred Distribution: Deferred contribution recognition enables multi-token rewards with flexible distribution triggers including time-based, pool-availability, and percentage-based sales rewards
- Treasury Management: Real-time treasury balance updates occur as rewards are distributed, maintaining accurate financial records and preventing overspending
3. Identity System Integration
The contribution system integrates with identity management to ensure proper authentication, authorization, and reputation tracking:
- DID Verification: Decentralized ID validation ensures that only verified community members can participate in contributions and receive rewards
- Role Assignment: Automatic role-based permissions are assigned based on contributor status, ensuring appropriate access levels and responsibilities
- Reputation Tracking: Contributor reputation systems integrate with contribution outcomes, building long-term trust and recognition within the community
Conclusion
The Matou Contribution Schema provides a comprehensive foundation for managing contributions within the DAO ecosystem. By integrating cultural values, governance processes, and technical requirements, this schema ensures:
- Cultural Alignment: Contributions respect and advance community values
- Transparency: All contribution data is visible and auditable
- Scalability: Machine-readable data enables automation and growth
- Fairness: Clear rules and validation ensure equitable treatment
- Efficiency: Automated workflows reduce administrative overhead
- Flexible Rewards: Multi-token reward system supports diverse contribution types and deferred recognition with multiple distribution triggers
The schema is designed to evolve with the community's needs while maintaining the core principles of decentralized governance and cultural preservation. Regular reviews and updates ensure it continues to serve the community effectively as the DAO grows and develops.