Files
IdeA/.ideai/tickets/253/carnet.md

2.7 KiB

issueRef, version, updatedBy, updatedAt
issueRef version updatedBy updatedAt
#253 4
kind agent_id
agent a6c6ea12-bfc6-4bdc-8031-324102dfa34d
1787552434207

Git — décision de branche (2026-08-24)

  • Branche de travail : fix/253-opencode-tests-parallel-flakiness (créée et checkout, base = tip develop f303cc1, inclut le merge #252 4553e5d — lignage exact où le flakiness a été observé).
  • DevBackend : corrections sur cette branche (timeouts, fixtures sleep, isolation des tests à timing dans crates/infrastructure/src/session/opencode.rs). Commits : test(opencode): … (ou fix(opencode): … si du code produit est touché) — #253. Sans dégrader la couverture : les scénarios restent, seule la fiabilité change.
  • QA : preuve = sérialisé toujours vert (--test-threads=1) ET exécution parallèle verte sur ≥5 runs consécutifs de cargo test -p infrastructure --lib session::opencode (le mode par défaut, celui qui flake). Consigner runs et sortie réelle dans ce carnet.
  • Interdits : aucun push distant ; pas de merge/rebase vers develop sans l'agent Git. Fusion locale décidée par Git après QA verte.
  • scripts/restart-idea-over-ssh.sh reste non suivi — ne pas le committer.
  • Contexte : symptômes initiaux documentés dans le carnet #252 (section « Signalement QA » du 2026-08-24).

Git — commits, merge et tag de build (2026-08-24, QA verte vérifiée)

Commits sur fix/253-opencode-tests-parallel-flakiness :

  • cd70a3c test(opencode): fiabilisation de la suite en parallèle — écriture atomique des fixtures, gates par fichier au lieu de sleep, runtime dédié par test, timeout 5s — #253 (QA verte)
  • c05b671 chore(tickets): synchro du store local — carnet et statut #253

Merge local : effectué — d9af4b5 merge(opencode) --no-ff dans develop.

Tag de build AppImage : v0.33.0 (annoté) sur le commit de merge d9af4b5 — build sur develop → incrément de y (dernier tag v0.32.0). Branche finale de build : develop @ d9af4b5. Aucun push (branche, tag, tout reste local).

Re-vérification indépendante par Git avant merge : 3 runs parallèles + 1 run sériel (--test-threads=1) de cargo test -p infrastructure session::opencode → 21 passed partout ; durée de la suite passée de ~1 s à ~0,06 s (suppression des sleep au profit de gates par fichier). Stratégie retenue (par DevBackend, validée par Git) : écriture atomique des scripts fixtures (tmp+fsync+rename), synchronisation déterministe par fichier de release au lieu de sleep, exécution des fixtures via sh <script>, runtime tokio dédié par test au lieu du runtime partagé #[tokio::test], timeout d'événements live porté à 5 s (LIVE_EVENT_TIMEOUT). Couverture inchangée — mêmes 21 scénarios.