38 lines
1.8 KiB
Markdown
38 lines
1.8 KiB
Markdown
---
|
|
issueRef: "#188"
|
|
version: 5
|
|
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
|
|
updatedAt: 1786620908011
|
|
---
|
|
2026-08-13 — implémentation backend + frontend
|
|
|
|
Backend
|
|
- `ReplyChunk::UserPrompt` conserve `attachments: string[]` pour compatibilité.
|
|
- Ajout de `attachmentRefs: ChatPromptAttachmentDto[]` avec `reference`, `filename`, `mime`, `sizeBytes`, `readablePath`.
|
|
- `agent_send` génère ces refs après import effectif dans l'ordre canonique backend : `[image N]` pour les images, `[file N]` pour les autres fichiers.
|
|
- Le prompt modèle inclut les mêmes refs ; l'UI n'invente plus la numérotation.
|
|
|
|
Frontend
|
|
- `UserPrompt` consomme `attachmentRefs` avec fallback legacy depuis `attachments: string[]`.
|
|
- Les attachments s'affichent comme appendice compact du message utilisateur (`[image 1] screenshot.png`, etc.).
|
|
- Ajout d'une poignée de resize locale par cellule pour la zone chat custom, avec bornes, persistance localStorage et reset à la valeur par défaut.
|
|
- Aucun changement du layout métier.
|
|
|
|
Fichiers modifiés
|
|
- crates/backend/src/dto.rs
|
|
- crates/app-tauri/src/commands.rs
|
|
- crates/app-tauri/src/chat.rs
|
|
- crates/app-tauri/tests/chat_bridge.rs
|
|
- crates/app-tauri/tests/dto_chat.rs
|
|
- frontend/src/domain/index.ts
|
|
- frontend/src/features/agents/CustomAgentChatView.tsx
|
|
- frontend/src/features/agents/CustomAgentChatView.test.tsx
|
|
- frontend/src/features/layout/LayoutGrid.tsx
|
|
- frontend/src/features/layout/LayoutGrid.chat.test.tsx
|
|
|
|
Tests verts déclarés
|
|
- Backend: dto_chat, chat_bridge, chat_prompt_attachment_projection_tests
|
|
- Frontend: CustomAgentChatView.test.tsx, LayoutGrid.chat.test.tsx, LayoutGrid.cellControlsLayering.test.tsx, typecheck, diff --check
|
|
|
|
Point résiduel
|
|
- Fallback frontend legacy sans `attachmentRefs` déduit image/fichier depuis l'extension du filename ; la projection backend reste la source canonique. |