{
  "market": "good-morning-st-albans",
  "updated": "2026-06-16",
  "status": "internal_prep_only",
  "linearIssues": [
    "MY-2571",
    "MY-2577"
  ],
  "purpose": "Buttondown-first referral and leaderboard live-wiring test matrix. Static evidence only; no subscriber email, webhook write, public leaderboard refresh or reward fulfilment is enabled.",
  "killSwitch": "If any live metadata, confirmation-state, privacy, abuse or approval test fails, keep /share/, /subscribe/ and /leaderboard/ in static placeholder mode.",
  "publicFields": [
    "rank",
    "displayName",
    "area",
    "confirmedReferrals",
    "rewardTier"
  ],
  "privateNeverPublish": [
    "email",
    "subscriber_id",
    "ip_address",
    "buttondown_api_response",
    "raw_metadata",
    "api_key"
  ],
  "tests": [
    {
      "id": "metadata-round-trip",
      "stage": "Buttondown form",
      "owner": "Operator",
      "passCondition": "Confirmed subscriber record contains all expected metadata fields with the test referral token intact.",
      "liveBlocker": "Do not enable referral counts or welcome copy that claims referrals are tracked."
    },
    {
      "id": "confirmed-only-counter",
      "stage": "Private ledger",
      "owner": "Operator",
      "passCondition": "Every counted referral points to a confirmed subscriber and a non-empty referral_source.",
      "liveBlocker": "Keep leaderboard rows empty and reward tiers as placeholders."
    },
    {
      "id": "dedupe-and-abuse",
      "stage": "Private ledger",
      "owner": "Operator",
      "passCondition": "Suspicious clusters are excluded or manually cleared before any public rank is generated.",
      "liveBlocker": "Do not publish prize eligibility or sponsor-backed rewards."
    },
    {
      "id": "redacted-public-json",
      "stage": "Static artifact",
      "owner": "Operator",
      "passCondition": "Public JSON passes privacy review and contains only the approved public columns.",
      "liveBlocker": "Keep placeholder leaderboard JSON in place."
    },
    {
      "id": "approval-gate",
      "stage": "Launch approval",
      "owner": "Editorial",
      "passCondition": "Approval is current, specific to Good Morning St Albans and covers the exact public action.",
      "liveBlocker": "No public refresh, subscriber email, social post, sponsor prize or reward fulfilment."
    }
  ]
}
