chore(wip): état runtime .ideai (conversations, layouts, mémoire, checkpoint skill-awareness)
Mise à jour de l'état runtime non-code : flux de conversations (handoff/log.jsonl), layouts, index mémoire MEMORY.md, et nouveau checkpoint checkpoint-delivery-submit-logging-fix.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -13,3 +13,4 @@
|
||||
- [checkpoint-orchestrator-designation-qa-verdict](checkpoint-orchestrator-designation-qa-verdict.md) — memory note checkpoint-orchestrator-designation-qa-verdict
|
||||
- [checkpoint-orchestrator-designation-appimage-build](checkpoint-orchestrator-designation-appimage-build.md) — memory note checkpoint-orchestrator-designation-appimage-build
|
||||
- [checkpoint-blocked-until-appimage-030-restart](checkpoint-blocked-until-appimage-030-restart.md) — memory note checkpoint-blocked-until-appimage-030-restart
|
||||
- [checkpoint-delivery-submit-logging-fix](checkpoint-delivery-submit-logging-fix.md) — memory note checkpoint-delivery-submit-logging-fix
|
||||
|
||||
88
.ideai/memory/checkpoint-delivery-submit-logging-fix.md
Normal file
88
.ideai/memory/checkpoint-delivery-submit-logging-fix.md
Normal file
@ -0,0 +1,88 @@
|
||||
---
|
||||
name: checkpoint-delivery-submit-logging-fix
|
||||
description: memory note checkpoint-delivery-submit-logging-fix
|
||||
metadata:
|
||||
type: project
|
||||
---
|
||||
# Checkpoint — hotfix livraison délégation + logs submit
|
||||
|
||||
Date: 2026-06-20
|
||||
|
||||
## Pourquoi ce checkpoint existe
|
||||
|
||||
Après le fix AppImage 0.3.0 précédent, la délégation `Main -> DevBackend` a reproduit le même symptôme que `Main -> Architect` avant redémarrage : le message de délégation apparaît dans l'input de la cellule cible, mais n'est pas soumis.
|
||||
|
||||
Le chantier `feature/agent-skill-awareness-v2` est donc suspendu tant que le canal de délégation n'est pas fiable.
|
||||
|
||||
## Branche et état
|
||||
|
||||
Branche active pendant le hotfix : `feature/agent-skill-awareness-v2`.
|
||||
|
||||
Dirty attendu hors code : fichiers runtime `.ideai/conversations/*`, `.ideai/layouts.json` produits par la session live.
|
||||
|
||||
## Changements code effectués
|
||||
|
||||
Frontend :
|
||||
- `frontend/src/features/terminals/useWritePortal.ts`
|
||||
- Logs détaillés `[write-portal]` : abonnement, attachement front, réception `delegationReady`, chunks de texte, délai avant submit, submit, ack, erreurs.
|
||||
- Fix défensif : `submitSequence: ""` est normalisée vers `"\r"` au lieu d'écrire zéro octet.
|
||||
- En cas d'erreur d'injection, arrêt du retry immédiat infini.
|
||||
- `frontend/src/adapters/terminal.ts`
|
||||
- Logs `[terminal-write]` sur writes non triviaux ou contrôles (`\r`, `\n`, bulk, etc.).
|
||||
- `frontend/src/adapters/input.ts`
|
||||
- Logs `[input-gateway]` pour `delegationDelivered` et `setFrontAttached`.
|
||||
- `frontend/src/domain/index.ts`
|
||||
- Commentaire défaut submit aligné sur ~350 ms.
|
||||
- `frontend/src/features/terminals/useWritePortal.test.tsx`
|
||||
- Test ajouté : `submitSequence: ""` doit envoyer `"\r"`.
|
||||
|
||||
Backend/application/Tauri :
|
||||
- `crates/application/src/orchestrator/service.rs`
|
||||
- `note_delegation_delivered` passe par `application::diag!` persistant.
|
||||
- `set_agent_front_attached` logge les changements d'attachement et le cas médiateur absent.
|
||||
- `crates/infrastructure/src/input/mod.rs`
|
||||
- Logs détaillés `[input-mediator]` : start turn, gate cold start, publish `DelegationReady`, choix front-owned vs headless, bind handle, front attach/detach, headless text/submit start/ok/failure.
|
||||
- Défaut headless `DEFAULT_SUBMIT_DELAY_MS` corrigé de 60 ms à 350 ms pour être aligné avec le write-portal.
|
||||
- Headless normalise aussi une submit sequence vide vers `"\r"`.
|
||||
- `crates/app-tauri/src/commands.rs`
|
||||
- Logs persistants `[pty-write]` autour de `write_terminal` avec session, bytes, contrôle sans contenu bulk.
|
||||
- Logs persistants `[delivery]` pour `delegation_delivered` et `set_front_attached`.
|
||||
|
||||
## Vérifications passées
|
||||
|
||||
- `cargo fmt --all -- --check` : OK.
|
||||
- `npx vitest run src/features/terminals/useWritePortal.test.tsx src/adapters/terminal.test.ts src/features/terminals/TerminalView.portal.test.tsx` : OK, 3 files / 20 tests.
|
||||
- `npx tsc --noEmit` : OK.
|
||||
- `cargo test -p infrastructure input --lib` : OK, 35 tests.
|
||||
- `cargo check -p app-tauri` : OK.
|
||||
- `cargo test -p application --test orchestrator_service` : OK, 45 tests (warning existant `CapturingFs::writes` unused).
|
||||
- `cargo test -p app-tauri --test orchestrator_wiring` : OK, 13 tests.
|
||||
|
||||
## Build AppImage
|
||||
|
||||
Commande Tauri standard : frontend build OK, Rust release OK, bundling Tauri KO avec `failed to run linuxdeploy` comme précédemment.
|
||||
|
||||
Contournement réussi :
|
||||
|
||||
```bash
|
||||
ARCH=x86_64 APPIMAGE_EXTRACT_AND_RUN=1 NO_STRIP=1 \
|
||||
/tmp/appimage_extracted_02f96dbd6ecc47f616b5a57fb8b7aa60/usr/bin/appimagetool \
|
||||
--runtime-file /tmp/idea-appimage-runtime-x86_64 \
|
||||
/home/anthony/Documents/Projects/IdeA/target/release/bundle/appimage/IdeA.AppDir \
|
||||
/home/anthony/Documents/Projects/IdeA/target/release/bundle/appimage/IdeA_0.3.0_amd64.AppImage
|
||||
```
|
||||
|
||||
Artefact :
|
||||
- `/home/anthony/Documents/Projects/IdeA/target/release/bundle/appimage/IdeA_0.3.0_amd64.AppImage`
|
||||
- taille : 106M
|
||||
- `--appimage-offset` : `944632`
|
||||
|
||||
## Reprise recommandée
|
||||
|
||||
1. Relancer IdeA avec l'AppImage ci-dessus.
|
||||
2. Reproduire une délégation simple `Main -> DevBackend` ou `Main -> Architect`.
|
||||
3. Si le message reste dans l'input sans être soumis, récupérer les traces :
|
||||
- logs persistants `application::diag!` (chemin configuré au startup, typiquement app-data logs/idea.log), chercher `[delivery]`, `[pty-write]`, `[rendezvous]`.
|
||||
- console frontend, chercher `[write-portal]`, `[terminal-write]`, `[input-gateway]`.
|
||||
- stderr si lancé depuis terminal, chercher `[input-mediator]`.
|
||||
4. Une fois délégation fiable, reprendre `feature/agent-skill-awareness-v2` depuis le cadrage Architect déjà obtenu.
|
||||
Reference in New Issue
Block a user