Capitalise la mémoire projet produite pendant la campagne de tests fonctionnels MCP (rendez-vous inter-agents, backstop no-reply, réconciliation live-state au reboot) et synchronise l'état runtime `.ideai/` (agents, layouts, skills, index mémoire). Inclut la mise à jour du contexte de l'agent Git. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2.4 KiB
2.4 KiB
name, description, metadata
| name | description | metadata | ||
|---|---|---|---|---|
| mcp-t10a-harness-interrupt-does-not-cancel-rendezvous | memory note mcp-t10a-harness-interrupt-does-not-cancel-rendezvous |
|
Finding T10a (2026-06-24, run a6ced819)
Setup
Main → idea_ask_agent(DevFrontend, "travaille ~90s puis idea_reply late-10a"). Pendant l'attente, l'utilisateur interrompt Main (Échap harness Claude Code). Le tool use idea_ask_agent est rejeté côté harness.
Observé
- DevFrontend a fini ses ~95 s de travail réel (11:20:39→11:22:14 UTC) puis
idea_reply("late-10a")→ ACCEPTÉ « delivered » à 11:22:18 (PAS « no pending request »). - DevFrontend workstate = done (pas d'orphelin côté cible). Pas de cascade.
- Main (demandeur) workstate resté
working: l'interrupt a coupé le tour de Main avant son nettoyage ; le chemin interrupt ne réconcilie pas la live-state du demandeur.
Interprétation
L'interrupt Claude Code annule le tool call local mais le process Main survit → la socket MCP (mcp-server du demandeur) reste connectée → IdeA ne reçoit aucun signal d'annulation → le rendez-vous reste pending → le reply tardif de la cible est livré dans un demandeur qui a déjà abandonné (perdu pour Main mais rapporté « delivered »).
Conséquence
- Le T10a du plan (« annulation en vol → reply tardif non-livrable proprement ») n'est pas exerçable via interrupt harness tant que le process demandeur survit. Une vraie annulation exigerait : tuer le process demandeur (drop socket) OU un cancel protocolaire JSON-RPC.
- Comportement néanmoins bénin : pas de wedge, pas de cascade, cible réconciliée (done). Seuls écarts : (a) reply tardif « delivered » au lieu de rejeté ; (b) live-state du demandeur laissée working par le chemin interrupt (mais reconcile-au-reboot la rattraperait, cf. reconcile-live-state-implemented-feature-branch).
Lié à mcp-functional-tests-t1-t9-green-live-2026-06-24, mcp-functional-test-plan-2026-06-24.