4.8 KiB
4.8 KiB
FedWiki Service Mapping
This document maps the FedWiki Service tiers (defined in Discourse) to member-console implementation. The Discourse post is the authoritative product spec — any discrepancies should be resolved in its favor.
Service tiers and what delivers them
| Requirement | Tier | Delivered by |
|---|---|---|
| Account creation for non-members | Public | Integration boundary |
| Auto-provisioned default entitlements (1 site, 16 MB) | Public | Default entitlements |
| Tier-aware UI with usage visibility | Public | Member entitlement and usage UI |
| Plan ladder + supersession framework (operator tooling, transition primitive) | Foundation | Plan ladders and the Transition primitive |
| Operator UX foundation (IA, design system, MPA conversion, a11y) | Foundation | Operator UX foundation (docs/operator-ia.md, docs/design-system.md, operator-mpa-conversion, docs/operator-ux-conventions.md, member-console lint) |
| Plan discovery and comparison UI | Standard | Member plan catalog and comparison |
| Subscription-driven entitlement upgrade | Standard | The Transition primitive; upgrade flow (Stripe Checkout) for the member flow |
| Upgrade flow (Public → Standard via Checkout) | Standard | Upgrade flow (Stripe Checkout) |
Downgrade flow (Standard → Public; clamp policy + advisory) |
Standard | Downgrade flow, change member-downgrade-flow (2026-05-31) |
Site-selection / read-only on downgrade (force_reduce) |
Standard | Read-only primitive from the extension-model design, change provider-extension-contract (2026-06-07) |
| Network egress metering (512 MB / 2 GB — contested: post #16 proposes dropping the limits; no metering mechanism exists) | Both | "Usage metering" milestone on the forge (open) |
| Custom domain support | Standard | Custom domain support, changes custom-domain-verification, custom-domain-support and domains-registry (2026-07-24/25) |
| Flexible service tracking and billing | Flexible | "Usage metering" milestone on the forge (open) |
| Usage-based billing (overage) | Standard | "Usage metering" milestone on the forge (open) |
| Storage metering + downgrade compliance check | Both | "Usage metering" milestone on the forge (open) |
| Forum integration (read-only vs posting) | Both | The Discourse integration, change discourse-integration (2026-07-20) |
| Backup self-service restore | Standard | Backlog |
| Site replication (mirror external sites) | Standard | Backlog |
Scope Boundary
Member-console is responsible for identity, entitlements, billing, and the member-facing UI. Several items in the Discourse post are infrastructure or external-system concerns that member-console does not own:
| Concern | Owner | Member-Console Role |
|---|---|---|
| Backup retention (hourly/daily/weekly/monthly/yearly) | Infrastructure / ops | None — backup policy is an ops concern. Self-service restore UI is Backlog. |
| Service isolation (containers, VMs, dedicated VPS) | Infrastructure / ops | None — Flexible tier infrastructure is provisioned manually. |
| Friends auth method | FedWiki configuration | None — wiki-level auth plugin, not member-console. |
| Nextcloud filesystem access | Integration / ops | None — external service integration. |
| Uptime monitoring (status.wiki.cafe) | Infrastructure / ops | None — separate monitoring stack. |
| Forum access control (read-only vs posting) | Discourse configuration + member-console entitlement | Deliver posting access from the org-held entitlement — fulfillment fans out to the org's members via Discourse group membership (change discourse-integration); group→permission mapping stays Discourse-side. |
Terminology Alignment
| Discourse Term | Member-Console Concept |
|---|---|
| Cooperative Member | Person with active subscription to Standard product |
| User in good standing | Person whose account is not suspended or banned |
| Personal org | organization.workspaces where workspace_type = 'personal' |
| Site | fedwiki.sites record |
| Nested subdomain / sub-site | Additional fedwiki.sites under the same workspace |
| Quota (storage, sites) | entitlements.numeric_entitlements with current_value |
| Limit (network egress) | Not yet modeled — future metering infrastructure ("Usage metering" milestone on the forge) |
| Service tier | Product in billing.products + associated entitlement template |
| Replica | Not yet modeled — mirror of external FedWiki site (Backlog) |
| Friends auth | FedWiki security plugin — outside member-console scope |
| Custom domain | DNS + SSL binding to a fedwiki.sites record (change domains-registry — entitlement-gated boolean rule + DNS/SSL story) |