# Aha moments (canonical ladder)

What actually counts as a tenant making progress. **Binding a card is not the only, or the
strongest, signal.** Ordered strongest → weakest.

**Signal status taxonomy** (use these three states everywhere — region inventories included):
- ✅ **live** — field exists in a queryable warehouse for that region today.
- 🟡 **v1-planned** — on the roadmap (e.g. EMEA upgrade memo), not yet built in any region.
- ❌ **blocked-external** — exists in an external system; needs an ingestion service before it's usable.

| Rank | Aha moment | What it proves | Status |
|------|------------|----------------|--------|
| 1 | **Data import completed** | Real migration — they moved a workload in. | ✅ live (BQ lifecycle) |
| 2 | **Sustained QPS** (≥1) | A live workload is running, not a one-off test. | ❌ blocked-external — EMEA computes it from the **Clinic API** (Prometheus `tidb_executor_statement_total`) |
| 2 | **First DDL** | Schema/build intent — they're constructing, not just SELECTing. | ❌ blocked-external — **O11Y** (slowlog/statements); not extracted in any region yet |
| 3 | **Spending-limit raised** | Capacity/commercial commitment (window 30d). | 🟡 v1-planned — EMEA upgrade roadmap, not yet started in any region |
| 3 | **Card on file** | Commercial intent (proxy — not invoiced revenue). | ✅ live |
| 4 | **Multi-cluster (≥3)** | Multiple environments — mild depth signal. | ✅ live |
| 5 | **First query executed** | First real use; the true first activation drop-off. | ✅ live |
| 6 | Cluster created | Provisioned only. **Near-noise** (most signups do it). | ✅ live |

## Signals not yet usable — the upstream asks

The highest-value signals not yet in a warehouse. Most are **services to build, not SQL**:

- **QPS** (❌ blocked-external) → Clinic API metrics (Prometheus `tidb_executor_statement_total`,
  rate/1h). EMEA's `cluster_metrics.py` already does this via `clinic.pingcap.com/.../data/metrics`.
  Same metric Grafana shows — port that fetch, don't re-invent.
- **First DDL** (❌ blocked-external) → TiDB Cloud O11Y (slowlog/statements). The one signal genuinely
  still O11Y-only, not extracted in any region. Access guide: https://pingcap.feishu.cn/wiki/AoO4wmSKviDfG5kKvhdcA3t8nLf
- **Spending-limit events** (🟡 v1-planned) → EMEA upgrade roadmap, not yet started. Raw events exist
  in DevOps/billing data (~473 EMEA tenants); window 30d when wired. Not Grafana, not metadb.
- **Domain / AI-category fit** → enrichment: EMEA uses a `domain_intelligence` cache + OpenAI web search.
- **Invoice / billed customer** → true monetization beyond card-on-file (BO / billing ops).
- **`track_step` (connected guard)** → CRM/ops write-back.

> Source-of-truth for these attributions: `pingcap-inc/pingcap-support` →
> `emea_lambda_tasks/monitor/{cluster_metrics.py, schema.sql, README.md}`.

Each region's `*-data-inventory.md` records which of these are live vs. blocked for that region today.
