Surveys
Operator health view for the survey domain across all tenants — job queue, k-anonymity suppression, cross-tenant distribution mesh and GDPR erasure. Read-only over tenant content: operators never see individual responses.
47
Active surveys
12
Tenants with surveys
18 902
Responses (30 d)
214
Suppressed cells (k=5)
6
Cross-tenant distributions
1
Text-analysis jobs queued
0
Failed jobs
3
OnErasure runs (7 d)
Job queue & workers
| Job | Schedule | Status | Last run |
|---|---|---|---|
| Analytics recompute (sweep) | Every 15 min | OK | 2 min ago |
| Reminder tick (invitation cadence) | Daily 09:00 | OK | 3 h ago |
| Text analysis (TF-IDF + k-means) | Python sidecar · on demand | Queue: 1 | running |
| OnErasure hook (survey_response) | GDPR-triggered | OK | — |
Cross-tenant distribution mesh (opt-in federation)
| Origin → targets | Survey | Opt-in status | Aggregate volume | Health |
|---|---|---|---|---|
| FIPJP → 24 member nations | Rule consultation: tir de précision | 18 accepted · 4 pending · 2 rejected | 4 812 responses (agg.) | OK |
| CEP → 12 European nations | Referee grade structure | 9 accepted · 2 pending · 1 rejected | 1 516 responses (agg.) | OK |
| Svenska Bouleförbundet | National only (no cross-tenant) | — | 312 responses | OK |
Data isolation invariant: responses are stored in the receiving tenant's database; the origin tenant sees aggregated analytics only. k-anonymity is re-applied after every cross-tenant merge.
Privacy invariants (monitored)
🔒 Anonymous surveys — raw export blocked
Model level: no respondent_ref exists · 12 anonymous surveys platform-wide
🔒 k-anonymity n=5 — recursive suppression
Applied to every segment cell + re-applied after cross-tenant merge · 214 suppressed cells (30 d)
🔒 Pseudonymous dedup — sha256(survey_id + user_id)
Deterministic dedup, not reversible · no demographics stored
🔒 OnErasure hook — survey_response
GDPR erasure nulls respondent_ref + demographic snapshot · 3 runs (7 d)
Loading survey health…
No active surveys on the platform. (empty state)
Text-analysis sidecar unreachable — jobs queued, will retry. (error state)