Files
IdeA/.ideai/memory/checkpoint-t1-wake-delivery-bug-fixed-rebuild-pending.md
Blomios ebd992e41a docs(memory): notes projet tâches de fond, tickets V1 et checkpoints ticket #1
Capitalise la mémoire projet accumulée pendant les chantiers B7/B8
(tâches de fond first-class), le système de tickets V1 et le ticket #1 :
design, cadrages d'archi, checkpoints d'avancement et verdicts QA/frontend.
Mise à jour de l'index MEMORY.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 00:21:43 +02:00

3.3 KiB

name, description, metadata
name description metadata
checkpoint-t1-wake-delivery-bug-fixed-rebuild-pending memory note checkpoint-t1-wake-delivery-bug-fixed-rebuild-pending
type
project

Checkpoint ticket #1 — état au 2026-07-03

T1 — VERT (validé live QA)

Wake auto du propriétaire à la complétion + completionDelivered: true prouvés dans le store (.ideai/background-tasks/<owner>.json, task 02aa2493). Fixes portant T1 (unit-green, NON commités) : wake.rs:119 (mark_completion_delivered dès session.send accepté), structured.rs:121 (drain_reply_stream_with_readiness), agent_wake.rs:504 (régression), + itér.1 MediatedInbox enqueue FIFO sans busy. Note : idea_workstate_read n'expose PAS les BackgroundTasks — lire le store JSON.

T3 — root cause trouvée + fix livré (unit-green, NON commité)

Défaut live : aucun bouton Cancel/Retry dans le panneau Work. Cause = le DTO AgentWorkState ne portait pas les tâches de fond et GetProjectWorkState n'avait pas de dépendance BackgroundTaskStore → agent.backgroundTasks toujours vide en live → section masquée (ProjectWorkStatePanel.tsx:638). Front déjà câblé, seule la projection backend manquait. Vitest verts en trompe-l'œil (payload mocké). Cadrage Architect : mémoire workstate-background-tasks-projection-fix (Option A — étendre le read-model unique, best-effort, aucun nouveau port). Livré :

  • BE (DevBackend) : VO AgentBackgroundTaskState + champ background_tasks sur AgentWorkState + builder with_background_tasks + projection union open/undelivered best-effort (workstate/mod.rs) ; DTO Tauri backgroundTasks (dto.rs) ; wiring state.rs. Tests : cargo test -p application 24 passed (workstate.rs), -p app-tauri vert, build workspace OK.
  • FE (DevFrontend) : mapping queued/waiting→pending explicité, test sur vrai shape backend, + correctif tri (finishedAtMs jamais émis → bascule sur updatedAtMs). vitest 460/460, build OK. Verdict : tickets-t3-frontend-validation-verdict.
  • Dette de contrat tracée en ticket #5 (summary non affiché, owner/project inutiles). Low.

RESTE À FAIRE (ordre)

  1. Rebuild AppImage NO_STRIP=true — EN COURS (background bixa34tht). Voir appimage-build-no-strip-relr-dyn-fix.
  2. Utilisateur relance l'AppImage.
  3. QA re-passe T3 LIVE : T3-a apparition running + Cancel actif ; T3-b Cancel agit → cancelled + Retry actif ; T3-c Retry → nouvelle tâche running ; T3-d borne livraison (tâche livrée disparaît = conforme V1, PAS un bug) ; T3-e isolation par agent ; T3-f non-régression live/busy/tickets. Détail dans cadrage Architect.
  4. T2 — reconcile après reboot (fin AVANT wake), protocole MANUEL, coordination reboot utilisateur.
  5. Si T1+T2+T3 verts → Git commit de TOUS les fix (T1 + T3 BE/FE) + merge feature/background-tasks-first-class → develop (résorbe aussi 4 tests protocole MCP périmés rouges sur develop).

Liens : workstate-background-tasks-projection-fix, tickets-t3-frontend-validation-verdict, b8-in-app-trigger-run-in-background, background-tasks-first-class-design.