Block a user
In-app feedback: one-tap 'was this tip helpful?'
admin: feature store browser — features sent to ml/serving per scoring call
admin: experiment dashboard — LinUCB per-arm stats and bandit reset
admin: health rollup — gateway, ml/serving, DB, event bus, MLflow, Grafana status
admin: read-only SQL runner against Postgres replica (sunsets to Superset in M4)
admin: ops actions — replay signal, disable/promote policy, force-retrain, revoke token
admin: data quality widget — missing-signal rate, stale-token rate, feature NaN heatmap
admin: reward analytics — reaction distribution over time, per-policy compare
admin: recommendation log — per-tip explainability (features, policy, score, feedback)
admin: model registry panel — embed MLflow at /admin/models
admin: event stream viewer — live tail of signals.* events
admin: feature store browser — features sent to ml/serving per scoring call
Web Push (VAPID) — deliver the moment, not the app
Account deletion endpoint (
DELETE /me) — Phase 0
Privacy: ToS/PP docs, consent capture, versioned per-user acceptance hash