{"generatedAt":"2026-11-01T12:38:56.674Z","window_days":1,"k_anonymity":3,"total_demand_events":0,"clusters":[],"formula":{"en":"Demand events = zero-result searches + calls to unknown tool names, counted only after a text reached k-anonymity (>= 3 distinct clients AND >= 3 distinct networks in a day). Texts are clustered by word overlap (Jaccard >= 1/3). Labels are drawn only from a curated vocabulary (tool-catalog words + an es/en list); raw query text is never published here (it goes to a private daily log). score = (c + 1) / (N + K) (Laplace-smoothed share). expected_uses_per_day = c / days observed (min 1 day), with a Poisson 95% interval (Wilson-Hilferty). share_ci95_wilson = Wilson interval of c / N.","es":"Eventos de demanda = búsquedas sin resultados + llamadas a nombres inexistentes, contados solo después de que un texto alcanzó k-anonimato (>= 3 clientes Y >= 3 redes distintas en un día). Se agrupan por solapamiento de palabras (Jaccard >= 1/3). Las etiquetas salen solo de un vocabulario curado (palabras del catálogo + una lista es/en); el texto de las consultas nunca se publica aquí (va a un registro privado diario). score = (c + 1) / (N + K). expected_uses_per_day = c / días observados (mín. 1 día), con intervalo de Poisson al 95 % (Wilson-Hilferty). share_ci95_wilson = intervalo de Wilson de c / N."},"note":{"en":"Counters reset on restart until persistence exists; estimates from few events are very uncertain.","es":"Los contadores se reinician al reiniciar hasta que exista persistencia; con pocos eventos las estimaciones son muy inciertas."}}