web/docs/roadmap-membership-platform.md

99 lines
3.8 KiB
Markdown

# EDUT Membership Platform Roadmap (Step-Based)
This roadmap is intentionally step-based and dependency-ordered. No timeline commitments are embedded.
## Step 1: Lock Core Model
1. Membership token is required to purchase marketplace offers.
2. Membership token is not a product license.
3. Product/module licenses are separate entitlements.
4. One wallet anchors the identity chain across membership, offers, and activation.
## Step 2: Freeze Token Taxonomy
1. `MembershipToken` (non-transferable, one per wallet policy configurable).
2. `OfferEntitlement` (offer-specific rights and policy flags).
3. `RuntimeActivation` (off-chain activation state driven by entitlement checks).
## Step 3: Finalize Membership Contract Interface
1. `mintMembership()` payable.
2. `hasMembership(address)` gating view.
3. `setMintPrice(...)` admin update with emitted events.
4. Optional tier ladder based on minted supply.
5. Immutable checks for non-transferability at contract level.
## Step 4: Lock Signature + Intent Protocol
1. `POST /secret/wallet/intent` returns nonce-bound typed-data payload.
2. EIP-712 signature proves wallet possession.
3. Server verify endpoint enforces replay protection and origin checks.
4. Intent payload includes price/currency/deadline for explicit consent.
## Step 5: Add Membership Mint Transaction Stage
1. After signature verification, UI requests membership quote payload.
2. Wallet sends on-chain mint transaction to membership contract.
3. Backend confirms inclusion and marks membership active.
4. UI transitions to `acknowledged` only when activation evidence is complete.
## Step 6: Implement Membership Gate in Checkout
1. All offer purchases call `hasMembership(wallet)` before checkout.
2. No entitlement mint is allowed without active membership.
3. Gate behavior is deterministic and audit-logged.
## Step 7: Ship Offer Registry
1. Canonical offer schema (`offer_id`, issuer, price, currency, policies).
2. Offer lifecycle states (`draft`, `active`, `paused`, `retired`).
3. Policy flags (`member_only`, `workspace_bound`, `transferable`, etc.).
## Step 8: Ship Entitlement Purchase Pipeline
1. Wallet connect and chain check.
2. Membership gate check.
3. Signed quote check.
4. On-chain entitlement mint/record.
5. Evidence receipt persisted with tx hash and policy snapshot.
## Step 9: Bind Entitlements to Runtime
1. Activation checks must pass before module activation.
2. Workspace binding is explicit and evidence-backed.
3. Revocation/suspension propagates deterministically to runtime gates.
## Step 10: Add Publisher Layer
1. Issuer namespace per company.
2. Issuer signing keys and role boundaries.
3. Revenue split policy per offer.
4. Marketplace quality gates before public listing.
## Step 11: Harden Compliance and Policy Surfaces
1. Terms clearly separate membership rights from license rights.
2. Privacy describes wallet/signature processing and app-native member communication.
3. Public copy avoids investment framing and speculative claims.
## Step 12: Operational Hardening
1. Conformance vectors for membership gating and entitlement gating.
2. Replay/fraud/rate-limit controls validated in automated tests.
3. Chain outage/reorg fail-closed behavior documented and tested.
4. Deterministic audit export for enterprise and legal review.
## Step 13: Continuous Optimization
1. Measure funnel transitions:
- visit -> signature -> membership mint -> first entitlement purchase.
2. Tune copy, wallet guidance, and pricing policy using deterministic metrics.
3. Expand issuer ecosystem only after quality and support controls are stable.
## Step 14: Lock Member App Channel
1. Register device channels with wallet-authenticated session.
2. Deliver deterministic event inbox (polling canonical, push optional).
3. Gate event visibility by active membership status.
4. Track ack receipts with immutable event ids and dedupe keys.