--- issueRef: "#211" version: 10 updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} updatedAt: 1786783097821 --- 2026-08-15 Main - Ticket cree suite a la demande utilisateur: navigation web des dossiers du projet + telechargement fichiers et dossiers. - Inventaire initial: pas de ticket existant. - Surface cible: `WebWorkspace` avec nouveau panneau `Fichiers`. - UX: panneau dedie, navigation progressive via fil d'Ariane + liste du dossier courant + actions par ligne; desktop dockable, mobile plein ecran; action explicite `Telecharger` / `Telecharger le dossier`. - Architect: nouveau contrat backend/web dedie au projet; listing JSON minimal avec paths relatifs au root; endpoints HTTP binaires dedies pour fichier et archive ZIP; confinement strict au root; `.ideai/` masque par defaut; streaming pour les dossiers. - Git: branche `feature/211-project-files-browse-download` creee depuis `develop`; branche unique partagee backend/frontend. - DevBackend: endpoints `GET /api/project-files`, `GET /api/project-files/download-file`, `GET /api/project-files/download-directory`; tri dossiers puis fichiers, `.ideai` masque, controles anti-traversal/symlink sortant. - DevFrontend: nouveau panneau `Fichiers`, integration WebWorkspace desktop/mobile, gateways HTTP binaires/JSON. - QA: verdict VERT. Backend vert sur tests listing/download/zip; frontend vert sur `ProjectFilesPanel`, `httpInvoker`, `typecheck`. `WebMenus.test.tsx` rouge qualifie comme bruit preexistant hors scope, non bloqueur pour #211. - Etape en cours: commit et decision de merge local par Git.