[P2][config] Valider chaque provider une seule fois dans un ordre déterministe #4

Open
opened 2026-07-31 21:05:10 +00:00 by mathieu · 2 comments
Owner

Constat

Le provider STT primaire et le fallback sont validés séparément puis à nouveau pendant le parcours de map (internal/config/validate.go:130-180). Les providers inactifs STT et cleanup sont parcourus dans l'ordre aléatoire des maps, donc une même configuration peut produire des diagnostics différents.

Tâche

Préserver la priorité primaire/fallback, puis valider une seule fois les entrées restantes triées par nom. Appliquer la même règle au cleanup.

Critères d'acceptation

  • Chaque provider est validé exactement une fois.
  • Primaire et fallback gardent leur priorité d'erreur.
  • Les erreurs des entrées inactives sont stables sur 100 exécutions.
  • Les configurations valides se résolvent à l'identique.

Validation

go test -count=100 ./internal/config ./internal/doctor && go test -race ./internal/config ./internal/doctor

## Constat Le provider STT primaire et le fallback sont validés séparément puis à nouveau pendant le parcours de map (`internal/config/validate.go:130-180`). Les providers inactifs STT et cleanup sont parcourus dans l'ordre aléatoire des maps, donc une même configuration peut produire des diagnostics différents. ## Tâche Préserver la priorité primaire/fallback, puis valider une seule fois les entrées restantes triées par nom. Appliquer la même règle au cleanup. ## Critères d'acceptation - Chaque provider est validé exactement une fois. - Primaire et fallback gardent leur priorité d'erreur. - Les erreurs des entrées inactives sont stables sur 100 exécutions. - Les configurations valides se résolvent à l'identique. ## Validation `go test -count=100 ./internal/config ./internal/doctor && go test -race ./internal/config ./internal/doctor`

Correctif proposé dans la PR #38 (#38). Les validations ciblées et sous race décrites dans la PR passent.

Correctif proposé dans la PR #38 (https://git.2027a.net/mathieu/murmur/pulls/38). Les validations ciblées et sous race décrites dans la PR passent.

Correctif proposé et validé dans la PR #38 : #38.

Correctif proposé et validé dans la PR #38 : https://git.2027a.net/mathieu/murmur/pulls/38.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
mathieu/murmur#4
No description provided.