Ce que ce site compte
L’usage du site et de son API est compté dans 2 registres. Aucun ne relie une ligne à un visiteur. La graphie proposée pour un douar est gardée à part, avec une clé qui change chaque jour.
Chaque requête
Chaque appel à l’API et chaque requête MCP est compté une fois, dans Workers Analytics Engine de Cloudflare. La ligne garde la route sans ses codes, ou l’outil d’un message MCP quand il en appelle un et sa méthode sinon, le nom que se donne un client MCP, le premier mot du User-Agent, le pays, le statut et la durée de la requête. C’est toute la ligne : de quoi voir comment l’API est utilisée, jamais par qui.
Un outil ou une méthode hors d’une liste fixe devient « other », tout comme un nom de client que le filtre vide. Cloudflare garde ces lignes 3 mois. Un fichier statique n’exécute aucun code, donc l’ouvrir n’est pas compté ici.
Ce qui est demandé
Un second registre, dans D1, compte 5 types de ligne : une recherche, un lieu ouvert, un outil qu’un assistant appelle via le serveur MCP, le nom que se donne un client MCP, et un fichier téléchargé. Une ligne garde le jour, ce qui a été demandé, le nombre de résultats qu’une recherche a affichés, la langue de la page, le pays et la version du jeu de données en ligne à ce moment-là. Elle dit aussi si le User-Agent ressemble à celui d’un robot, et la classe du site qui a envoyé le visiteur, comme reddit ou un moteur de recherche, jamais son adresse.
Le client à l’origine de la requête est noté aussi : « browser » pour la recherche du site et sa balise, et le premier mot du User-Agent pour qui passe par l’API ou le MCP directement.
Une recherche
Une recherche est gardée en minuscules et coupée à 64 caractères. Elle est rejetée entièrement si elle contient un @, une barre oblique, tout ce qui ressemble à une adresse web, plus de 6 mots, ou 6 chiffres ou plus quelle qu’en soit l’écriture, à moins que ces chiffres ne forment le code réel d’un lieu. C’est ainsi qu’un e-mail ou un numéro de téléphone tapé par erreur dans le champ reste dehors.
Le champ de recherche du site ne signale une recherche qu’une fois stabilisée : 1,5 seconde après l’arrêt des résultats, ou dès qu’un résultat est ouvert, jamais à chaque frappe. Quand le Do Not Track du navigateur est activé, le champ ne signale aucune recherche et la balise ne note aucun lieu ni fichier ouvert. Le champ demande quand même ses résultats à l’API, et Analytics Engine compte ces requêtes comme tout autre appel à l’API, sans ce qui a été tapé.
Ce qui reste
Une ligne, c’est un jour et quelques catégories, de quoi faire un compte. Aucune ligne ne garde de clé, de cookie ou d’adresse qui la relie à une autre.
Les lignes brutes du registre de la demande sont supprimées après 90 jours. Ce qui reste, ce sont des comptages par jour, dont est tirée la page des lieux les plus consultés. Une recherche garde ses mots dans ce comptage seulement quand ils sont le nom ou le code d’un lieu, ou qu’ils ont été tapés 3 fois ou plus ce jour-là ; sinon, seul le compte reste. La règle compte des lignes, donc les 3 peuvent venir d’un même visiteur.
Une graphie proposée
La page d’un douar accepte une graphie latine pour un douar qu’aucune source ne nomme en lettres latines. Chaque nuit, le moteur d’écriture vérifie les propositions, et affiche une graphie proposée par 2 visiteurs si elle se lit assez près de l’arabe du douar. Pour distinguer 2 visiteurs, une proposition est gardée avec une clé tirée de l’adresse du visiteur et d’un secret qui change chaque jour : la même adresse donne la même clé un jour donné et une autre le lendemain, et la clé ne permet pas de retrouver l’adresse. L’adresse elle-même n’est pas gardée.
Une proposition contient le douar, son nom arabe, la graphie, la clé et le jour, et elle est effacée au bout de 90 jours. Une graphie affichée est gardée avec le douar et le jour où elle l’a été, sans rien sur qui l’a proposée.
Tout cela est public, dans le code source.