Skip to content

[Retrait] Supprimer la page publique /stats et le code dédié #4342

Description

@Viczei

Contexte

Sous-ticket de #4311. La page publique /stats doit être retirée du produit. Il n’est donc pas pertinent de corriger localement son graphique Recharts : l’ancien ticket #4331 est remplacé par ce ticket de suppression.

Ce ticket concerne uniquement les statistiques publiques. La page /admin/stats et tout le module modules/admin/stats doivent rester intacts.

Page actuelle

  • Route à retirer : /stats
  • Titre : « Statistiques publiques »
  • Contenus : taux de déclaration de la campagne et distribution des scores

Page publique /stats capturée par ultra11y

Périmètre technique identifié

  • route : packages/app/src/app/stats/page.tsx ;
  • interface : packages/app/src/modules/publicStats/** ;
  • API dédiée : packages/app/src/server/api/routers/publicStats.ts et son enregistrement dans server/api/root.ts ;
  • audit des appels : entrées publicStats.* de server/audit/trpcMiddleware.ts et PUBLIC_STATS_GET_CURRENT_CAMPAIGN_RATE de modules/audit/shared/actionKeys.ts ;
  • tests : packages/app/src/e2e/public-stats.e2e.ts, tests de modules/publicStats et server/api/routers/__tests__/publicStats.test.ts ;
  • domaine potentiellement devenu mort : shared/scoreBracket.ts et ses exports/tests, à supprimer seulement après vérification qu’aucun autre consommateur ne subsiste.

Les helpers de taux de déclaration dans shared/submissionRate.ts sont aussi utilisés par les statistiques d’administration et ne doivent pas être supprimés.

Changement attendu

  1. Supprimer la route et tous les composants/API devenus exclusivement inutilisés.
  2. Supprimer les tests qui validaient l’existence de la page et adapter les registres d’audit.
  3. Retirer /stats des plans de site, navigations et liens internes s’il en existe encore au moment du développement.
  4. Vérifier explicitement que /admin/stats ne régresse pas.

Critères d’acceptation

  • Une requête anonyme vers /stats retourne la page 404 standard ; si une redirection produit est décidée entre-temps, sa destination et son caractère permanent sont documentés dans ce ticket.
  • Aucun lien interne, metadata, sitemap ou test E2E ne présente encore /stats comme une page disponible.
  • Le module publicStats et le routeur tRPC publicStats sont supprimés sans laisser d’import, d’export ou de clé d’audit morts.
  • Le code de domaine exclusivement utilisé par cette page est supprimé ; les helpers partagés avec /admin/stats sont conservés.
  • Le build TypeScript, les tests unitaires et les tests E2E passent.
  • /admin/stats reste accessible aux utilisateurs autorisés et ses tests passent.

Estimation

M — suppression transverse de la route, de son API, des tests et du code devenu mort.

Metadata

Metadata

Assignees

No one assigned

    Labels

    a11ycat: techniqueCatégorie : actions techniques (DB, CI, infra, intégrations, instrumentation, doc)

    Type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions