Files
IdeA/.ideai/tickets/79/issue.md
Blomios 1be5f8cd18 chore(ideai): #77 en QA, ouverture de #78 et #79
Enregistre l'état du registre de tickets : #77 entre en QA, #78 ouvre la
dette UX de langue de l'écran Settings et #79 le test flaky relevé en
cours de route.

État runtime uniquement : aucun code de feature n'est touché.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 13:27:06 +02:00

1.9 KiB

id, number, title, status, priority, sprint, links, agentRefs, createdBy, updatedBy, createdAt, updatedAt, version
id number title status priority sprint links agentRefs createdBy updatedBy createdAt updatedAt version
05a70dc5-fd28-4c58-8ba1-be6058ae3cfc 79 Test flaky : PermissionsPanel « saves project defaults » échoue par intermittence open low null
kind agent_id
agent a6ced819-b893-4213-b003-9e9dc79b9641
kind agent_id
agent a6ced819-b893-4213-b003-9e9dc79b9641
1784287450082 1784287450082 1

Constat

Relevé par DevFrontend pendant #77, sans rapport avec ce ticket.

frontend/src/features/permissions/permissions.test.tsxPermissionsPanel > saves project defaults échoue par intermittence sur une exécution complète de la suite :

 FAIL  src/features/permissions/permissions.test.tsx > PermissionsPanel > saves project defaults
 Test Files  1 failed | 90 passed (91)
      Tests  1 failed | 847 passed (848)

Pourquoi ce n'est pas une régression de #77

Vérifié au moment du constat :

  • git diff HEAD -- src/features/permissions est vide — le lot #77 n'a pas touché cette surface.
  • Le test passe seul.
  • Le passage complet suivant est vert (848/848), sans modification entre les deux.
  • Durée du test : ~1371 ms — sensible au timing.

Pourquoi ça mérite un ticket quand même

Un test qui passe deux fois sur trois est pire qu'un test rouge : il apprend à l'équipe à relancer plutôt qu'à lire. Il finira par mordre en CI, où l'on ne relance pas toujours, et il érode la confiance dans une suite dont ce chantier a montré qu'elle est le principal garde-fou.

Attendu

Identifier la source du non-déterminisme (timers, attente implicite, état partagé entre tests) et rendre le test déterministe. Ne pas le neutraliser ni augmenter un timeout pour le faire taire : si le comportement testé est réellement dépendant du timing, c'est le comportement qu'il faut regarder.

Périmètre

Frontend, tests.