Community playbook

The testers are the moat. This playbook describes how the community is structured, how people join and grow, how we keep it healthy, and what we measure.

Structure

  • Workspace pools. Each developer manages tiers and members for their own campaigns (Testers page). Weight and permissions are per tier and enforced server-side.
  • House Pool. A platform-operated pool (the Customer flagged isPlatformPool) whose members carry reputation across campaigns. Tiers:
Tier Weight How you get there
Newcomer 0 → 1 after 3 cleared contributions and 48 h account age apply
Trusted 2 10 cleared, ≥ 1 deployed, no BLOCKED in 90 days
Senior 3 50 cleared, ≥ 5 deployed, 3 confirmed re-verifications
Lead 4 operator promotion; may moderate public campaigns
  • Public campaigns. Developers opt in per campaign (Campaign.visibility = PUBLIC, minTierWeight). They appear in Discover for qualifying House Pool members.

Joining

  1. Tester Hub → Apply to the House Pool (TesterApplication: motivation, devices, browsers, languages, optional X handle, referrer).
  2. Operators review in the operator view (/admin → Applications); automatic approval to Newcomer is available (HOUSE_POOL_AUTO_APPROVE=true) for open beta phases.
  3. Enrollment: Authentik enrollment flow on the tester application slug (operator step — see operations). New identities get a Tester row on first hub visit.

Referrals

A tester can issue referral invites (TesterInvite.referrerTesterId). When the newcomer's first contribution is cleared and later deployed, both receive a REFERRAL ledger entry. Referral invites are capped per tester per month.

Rituals

  • Weekly digest (POST /api/platform-admin/digests/run, scheduled in Coolify): each active tester gets a notification with their contributions, deploys they influenced, points, and one recommended public campaign.
  • Ship notifications: when an item deploys, every contributor and voter is notified and asked to re-verify.
  • Share (opt-in, default off): after a confirmed deploy the hub offers a pre-filled X post ("A change I proposed just shipped on ") through a web intent. No hosted post generation; the tester edits and sends. Rate limited (25 per 30 minutes per tester).
  • Leaderboard: opt-in, per workspace and House Pool, weekly and all-time.

Moderation

  • The safety pipeline flags before humans see anything; Lead testers and operators clear or block public-campaign items from /moderation.
  • Reputation, not funds, is slashed for BLOCKED submissions; three BLOCKED items in 90 days suspend House Pool membership pending review.
  • Disputes: a tester may contest a REJECTED status from My contributions; the developer has 7 days to respond or the reputation effect is reversed.
  • Code of conduct is linked from the hub and the extension panel.

Growth loop and metrics

public campaign → discover → contribute → deploy notification → confirm → share → new tester
Metric Target for beta
Weekly active testers growth week over week
Median time to first feedback after joining < 24 h
Cleared / submitted > 85 %
Deployed / THRESHOLD_MET > 60 %
4-week tester retention > 40 %
Referral share of new testers > 20 %

Developer-facing promises

  • Testers see only what a campaign exposes; emails are never shown to developers unless a tester accepts a pool invite.
  • Public campaigns receive only House Pool members at or above the chosen tier.
  • Developers can revoke any member; operators can suspend across the network.