You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Admin : réglages et journal des actions (A-11, A-12) #348
🔨 Démarrage — branche issue/348-settings-and-log, empilée sur issue/341-users-and-roles (#499), elle-même au bout de la pile #363, #365, #398, #479. Aucune migration prévue : settings et admin_actions existent.
Niveau de risque proposé : 2 (un réglage change le comportement de l'app et de la modération, de façon réversible et bornée ; level:2, revue OWASP ciblée, retour arrière décrit).
Plan en commits autonomes
Schémas partagés des réglages et du journal.
API : catalogue des réglages (clé, groupe, bornes, valeur par défaut, validation par clé) et GET /admin/settings.
API : PATCH /admin/settings/:key (admin, motif obligatoire, journal avant/après).
API : GET /admin/actions filtrable (auteur, type d'action, type de cible, période) et ses valeurs de filtre.
Client API.
Admin : journal (A-12), liste filtrable et détail avant/après.
Admin : réglages (A-11), liste groupée et panneau avec historique.
Admin : modification d'un réglage (confirmation avec motif).
Périmètre et limites
Catalogue = les réglages que le code lit réellement : premium.min_steps, max_pending_routes, certification.*, coherence.*, search.cluster_area_km2, recommendation.weights. Non lus par le code, donc non listés : premium.min_ratings, premium.min_rating, les seuils de vérification des lieux.
Vérification humaine : Marco a testé en local le 2026-10-16, sur le contenu de la PR avant son découpage en commits (identique à fbcbf6d hors la virgule décimale des champs, ajoutée ensuite), dans l'admin connecté : la page Réglages (liste groupée, panneau, historique, modification d'un réglage avec motif, valeurs refusées) et la page Journal (liste, filtres, détail avant/après, lien vers la cible, cible supprimée sans lien). Il a jugé que « c'est ok ».
Critère d'acceptation : tenu pour le réglage et le journal ; non démontrable pour l'accès des parcours, premium.min_steps ne servant qu'à la fiche de modération et le recalcul nocturne étant #56. Détail dans la PR.
Activity
Nascimento95 commentedon Oct 16, 2026
🔨 Démarrage — branche
issue/348-settings-and-log, empilée surissue/341-users-and-roles(#499), elle-même au bout de la pile #363, #365, #398, #479. Aucune migration prévue :settingsetadmin_actionsexistent.Niveau de risque proposé : 2 (un réglage change le comportement de l'app et de la modération, de façon réversible et bornée ;
level:2, revue OWASP ciblée, retour arrière décrit).Plan en commits autonomes
GET /admin/settings.PATCH /admin/settings/:key(admin, motif obligatoire, journal avant/après).GET /admin/actionsfiltrable (auteur, type d'action, type de cible, période) et ses valeurs de filtre.Périmètre et limites
premium.min_steps,max_pending_routes,certification.*,coherence.*,search.cluster_area_km2,recommendation.weights. Non lus par le code, donc non listés :premium.min_ratings,premium.min_rating, les seuils de vérification des lieux.premium.min_stepsde 4 à 5 change l'accès au prochain recalcul » : le réglage et son journal sont tenus ; le recalcul nocturne lui-même est le ticket Planifier le recalcul nocturne et le passage en needs_fix #56, absent.Nascimento95 commentedon Oct 16, 2026
🔎 PR ouverte : #500 (niveau 2, label
level:2, baseissue/341-users-and-roles).Vérification humaine : Marco a testé en local le 2026-10-16, sur le contenu de la PR avant son découpage en commits (identique à
fbcbf6dhors la virgule décimale des champs, ajoutée ensuite), dans l'admin connecté : la page Réglages (liste groupée, panneau, historique, modification d'un réglage avec motif, valeurs refusées) et la page Journal (liste, filtres, détail avant/après, lien vers la cible, cible supprimée sans lien). Il a jugé que « c'est ok ».Critère d'acceptation : tenu pour le réglage et le journal ; non démontrable pour l'accès des parcours,
premium.min_stepsne servant qu'à la fiche de modération et le recalcul nocturne étant #56. Détail dans la PR.