5.9 KiB
5.9 KiB
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
- Membership token is required to purchase marketplace offers.
- Membership token is not a product license.
- Product/module licenses are separate entitlements.
- One wallet anchors the identity chain across membership, offers, and activation.
Step 2: Freeze Token Taxonomy
MembershipToken(non-transferable, one per wallet policy configurable).OfferEntitlement(offer-specific rights and policy flags).RuntimeActivation(off-chain activation state driven by entitlement checks).
Step 3: Finalize Membership Contract Interface
mintMembership()payable.hasMembership(address)gating view.setMintPrice(...)admin update with emitted events.- Optional tier ladder based on minted supply.
- Immutable checks for non-transferability at contract level.
Step 4: Lock Signature + Intent Protocol
POST /secret/wallet/intentreturns nonce-bound typed-data payload.- EIP-712 signature proves wallet possession.
- Server verify endpoint enforces replay protection and origin checks.
- Intent payload includes price/currency/deadline for explicit consent.
- Verify response issues wallet session token with deterministic expiry.
- Session lifecycle includes rotate (
/secret/wallet/session/refresh) and revoke (/secret/wallet/session/revoke) controls.
Step 5: Add Membership Mint Transaction Stage
- After signature verification, UI requests membership quote payload.
- Wallet sends on-chain mint transaction to membership contract.
- Backend confirms inclusion and marks membership active.
- UI transitions to
acknowledgedonly when activation evidence is complete.
Step 6: Implement Membership Gate in Checkout
- All offer purchases call
hasMembership(wallet)before checkout. - No entitlement mint is allowed without active membership.
- Gate behavior is deterministic and audit-logged.
Step 7: Ship Offer Registry
- Canonical offer schema (
offer_id, issuer, price, currency, policies). - Offer lifecycle states (
draft,active,paused,retired). - Policy flags (
member_only,workspace_bound,transferable, etc.).
Step 8: Ship Entitlement Purchase Pipeline
- Wallet connect and chain check.
- Membership gate check.
- Signed quote check.
- On-chain entitlement mint/record.
- Evidence receipt persisted with tx hash and policy snapshot.
Step 9: Bind Entitlements to Runtime
- Activation checks must pass before module activation.
- Workspace binding is explicit and evidence-backed.
- Revocation/suspension propagates deterministically to runtime gates.
Step 10: Add Publisher Layer
- Issuer namespace per company.
- Issuer signing keys and role boundaries.
- Revenue split policy per offer.
- Marketplace quality gates before public listing.
Step 11: Harden Compliance and Policy Surfaces
- Terms clearly separate membership rights from license rights.
- Privacy describes wallet/signature processing and app-native member communication.
- Public copy avoids investment framing and speculative claims.
Step 12: Operational Hardening
- Conformance vectors for membership gating and entitlement gating.
- Replay/fraud/rate-limit controls validated in automated tests.
- Chain outage/reorg fail-closed behavior documented and tested.
- Deterministic audit export for enterprise and legal review.
Step 13: Continuous Optimization
- Measure funnel transitions:
- visit -> signature -> membership mint -> first entitlement purchase.
- Tune copy, wallet guidance, and pricing policy using deterministic metrics.
- Expand issuer ecosystem only after quality and support controls are stable.
Step 14: Lock Member App Channel
- Register device channels with wallet-authenticated session.
- Deliver deterministic event inbox (polling canonical, push optional).
- Gate event visibility by active membership status.
- Track ack receipts with immutable event ids and dedupe keys.
Step 15: Ship Free Launcher Control Plane
- Release free launcher with local wallet setup and readiness checks.
- Keep launcher useful without paid runtime activation.
- Expose membership and governance state clearly in-app.
- Ensure setup is resumable across sessions.
Step 16: Lock Governance Paid Install Path
- Governance is first paid license after membership activation.
- Install requires signed package metadata and hash verification.
- Activation requires active governance entitlement and matching policy hash.
- Runtime blocks execution when membership/entitlement status is suspended, revoked, or unknown.
Step 17: Enforce Launcher-Only Commerce Surface
- Public website remains identity/legal/trust surface.
- Production catalog and checkout require app-session auth.
- Public preview routes are disabled by default and noindexed.
- Release gate blocks deploys that expose anonymous production catalog access.
Step 18: Lock Boundary + Availability Class Model
- Suite entitlement binds to one
org_root_ideconomic boundary. - Unlimited internal workspaces allowed inside same boundary.
- Cross-boundary paid execution fails closed without target boundary entitlement.
- Access classes freeze to two values only:
connected(heartbeat-based)sovereign(long-lived local capsule)
- Availability state machine is deterministic:
ACTIVE -> GRACE -> CONTINUITY -> PARKED
CONTINUITYblocks growth actions while preserving existing execution.PARKEDpreserves read/search/export while pausing paid execution.
Step 19: Lock Owner-Gated Admin Plane
- Principal roles freeze to:
org_root_ownerworkspace_member
- Admin controls (health, updates, config) are owner-only.
- Support channel is owner-only for org-boundary issues.
- Member admin attempts return deterministic guidance (
contact_your_org_admin). - Admin event classes are never delivered to non-owner streams.