matthieu
c47434b502
feat(mail) : MailSyncService — syncAll/syncFolder/syncFolderStructure + lock + garde 50%
2026-05-19 23:37:31 +02:00
matthieu
f245863b78
feat(mail) : MailMessageRepository — findMaxUidInFolder, findLastNByFolder, findAllUidsByFolder
2026-05-19 23:35:30 +02:00
matthieu
b546f528df
feat(mail) : ImapMailProvider — implémentation complète MailProviderInterface
2026-05-19 23:35:12 +02:00
matthieu
b5b4288cc0
feat(mail) : DTO MailSyncReport + test unitaire
2026-05-19 23:32:29 +02:00
matthieu
3a2d8d5bde
feat(mail) : install webklex/php-imap + symfony/lock, configure lock store
2026-05-19 23:32:01 +02:00
matthieu
23191bdab6
docs(mail) : plan détaillé Phase 2 — ImapMailProvider, MailSyncService, commande app:mail:sync (9 tasks)
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-19 23:29:18 +02:00
matthieu
5f92cbbf4f
feat(mail) : fixture MailConfiguration OVH defaults (disabled)
2026-05-19 23:22:05 +02:00
matthieu
f80680e874
feat(mail) : MailProviderInterface + MailProviderException
2026-05-19 23:20:58 +02:00
matthieu
697197864f
feat(mail) : DTOs — MailFolderDto, MailMessageHeaderDto, MailAttachmentDto, MailMessageDetailDto
2026-05-19 23:20:35 +02:00
matthieu
0da26ff418
feat(mail) : migration — 4 tables mail_configuration, mail_folder, mail_message, task_mail_link
2026-05-19 23:20:03 +02:00
matthieu
cd9c16a990
feat(mail) : TaskMailLink entity + repository
2026-05-19 23:17:16 +02:00
matthieu
0c597bc653
feat(mail) : MailMessage entity + repository
2026-05-19 23:16:52 +02:00
matthieu
0c80159d7e
feat(mail) : MailFolder entity + repository
2026-05-19 23:16:17 +02:00
matthieu
3cac87aa24
feat(mail) : MailConfiguration entity + repository + singleton test
2026-05-19 23:15:47 +02:00
matthieu
07b7d054d5
docs(mail) : plan détaillé Phase 1 — entités, repos, migration, DTOs, interface (10 tasks TDD)
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-19 23:10:36 +02:00
matthieu
361cc8cfab
docs(mail) : master plan d'intégration mail OVH IMAP — 7 phases (foundations, sync, API, services front, UI, intégration tâches, admin)
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-19 22:49:39 +02:00
matthieu
930e1a1e37
fix(help) : retire definePageMeta auth (middleware global déjà appliqué)
2026-05-19 21:12:05 +02:00
matthieu
55301c9c63
feat(help) : centre d'aide in-app — page /help avec sidebar + 9 sections markdown stylées, icône ? dans la topbar
2026-05-19 21:09:19 +02:00
matthieu
5fb7fbe66c
fix(workflow) : M4 - aligne la séquence workflow.id après recréation de l'identity (évite conflit avec row Standard de M1)
2026-05-19 20:59:37 +02:00
matthieu
c1560468e6
fix(workflow) : WorkflowDrawer - input position natif (MalioInputText n'accepte pas les number)
2026-05-19 20:59:37 +02:00
matthieu
f86698e7cd
docs(workflows) : plan d'implémentation + validations Matthieu sur le spec + gitignore dumps locaux
2026-05-19 20:59:37 +02:00
matthieu
1fd2c05db3
chore : bump version to v0.4.0
2026-05-19 20:59:37 +02:00
matthieu
9f179e400d
feat(workflow) : MCP - list-statuses projectId + list-workflows + switch-project-workflow + maj descriptions create/update-task
2026-05-19 20:59:12 +02:00
matthieu
6a37349cf7
feat(workflow) : bulk status désactivé sur sélection multi-projets, scoped au workflow du projet
2026-05-19 20:59:12 +02:00
matthieu
52b78d6bbc
feat(workflow) : ProjectWorkflowSwitchModal + section workflow et bouton switch dans ProjectDrawer
2026-05-19 20:59:12 +02:00
matthieu
e6d765f7bb
feat(workflow) : my-tasks - kanban groupé par catégorie avec badge statut, suppression drag-to-status
2026-05-19 20:59:12 +02:00
matthieu
5d42009348
feat(workflow) : kanban projet et archives basés sur workflow.statuses du projet
2026-05-19 20:59:12 +02:00
matthieu
8e4ddf00a8
feat(workflow) : admin UI - WorkflowDrawer + AdminWorkflowTab + remplacement onglet Statuts, suppression composants obsolètes
2026-05-19 20:59:12 +02:00
matthieu
18bc96082f
feat(workflow) : DTOs front Workflow + category sur TaskStatus + workflow embarqué sur Project + service + i18n
2026-05-19 20:59:12 +02:00
matthieu
6a084489ea
feat(workflow) : endpoint POST /projects/{id}/switch-workflow + processor transactionnel
2026-05-19 20:59:12 +02:00
matthieu
80a41db34f
feat(workflow) : protège la suppression d'un workflow lié à des projets (409)
2026-05-19 20:59:12 +02:00
matthieu
cf94635121
feat(workflow) : valide que task.status appartient au workflow du projet
2026-05-19 20:59:12 +02:00
matthieu
eec61c089c
feat(workflow) : migration M4 - alignement schéma Doctrine (indexes + IDENTITY)
2026-05-19 20:59:12 +02:00
matthieu
a9f87be8e5
feat(workflow) : listener garantissant un seul workflow isDefault=true
2026-05-19 20:59:12 +02:00
matthieu
25f2fc4b16
feat(workflow) : fixtures - workflow Standard + statuts catégorisés + projets attachés
2026-05-19 20:59:12 +02:00
matthieu
a21914312a
feat(workflow) : migration M3 - workflow requis sur Project (RESTRICT)
2026-05-19 20:59:12 +02:00
matthieu
f6a947ec15
feat(workflow) : migration M2 - rattache les statuts existants à Standard + category
2026-05-19 20:59:12 +02:00
matthieu
03f3c85fd8
feat(workflow) : migration M1 - création table workflow + seed Standard
2026-05-19 20:59:12 +02:00
matthieu
8a68e0d397
feat(workflow) : ajoute workflow requis sur Project (RESTRICT)
2026-05-19 20:59:12 +02:00
matthieu
43e6d1aed2
feat(workflow) : ajoute workflow et category sur TaskStatus
2026-05-19 20:59:12 +02:00
matthieu
a3e3fd6da6
feat(workflow) : ajoute l'entité Workflow et son repository
2026-05-19 20:59:12 +02:00
matthieu
b8b03048b6
feat(workflow) : ajoute l'enum StatusCategory (5 catégories canoniques)
2026-05-19 20:59:12 +02:00
Matthieu
ba86a71e12
docs(workflows) : ajout note de reprise sur autre poste
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-19 20:59:12 +02:00
Matthieu
6a942def3f
docs(workflows) : spec workflows de statuts par projet
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-19 20:59:12 +02:00
gitea-actions
d4fdb84a17
chore: bump version to v0.3.34
Auto Tag Develop / tag (push) Successful in 5s
Build & Push Docker Image / build (push) Successful in 19s
v0.3.34
2026-05-13 14:23:42 +00:00
Matthieu
5585fa7ef6
fix(mcp) : exclude DataFixtures from discovery to avoid require-dev autoload error in prod
Auto Tag Develop / tag (push) Successful in 7s
2026-05-13 16:23:35 +02:00
gitea-actions
b301ebbad0
chore: bump version to v0.3.33
Auto Tag Develop / tag (push) Successful in 5s
Build & Push Docker Image / build (push) Successful in 52s
v0.3.33
2026-05-13 12:59:31 +00:00
Matthieu
feaa9f1875
feat(api-token) : génération du token MCP depuis la page profil
...
Auto Tag Develop / tag (push) Has been cancelled
Backend :
- POST /api/me/regenerate-api-token : nouveau controller, ROLE_USER (exclut CLIENT)
- User.apiToken exposé via groupe me:read sur GET /api/me
Frontend :
- Section 'Token API MCP' sur /profile (masquée pour les CLIENT du portail)
- Boutons Copier + Régénérer avec modal de confirmation
- Service api-token + DTO mis à jour + clés i18n fr
2026-05-13 14:59:18 +02:00
gitea-actions
b25be8fd6a
chore: bump version to v0.3.32
Auto Tag Develop / tag (push) Successful in 5s
Build & Push Docker Image / build (push) Successful in 43s
v0.3.32
2026-05-06 13:58:46 +00:00
Matthieu
3e6b0e877a
fix(time-tracking) : filtres projet/tag server-side et vue liste au mois
...
Auto Tag Develop / tag (push) Has been cancelled
- Pousse les filtres projet et tag a l'API (au lieu d'un filtrage client-side
partiel sur la page courante) pour eviter les resultats incomplets en cas
de pagination
- Ajoute les watchers selectedProjectId/selectedTagId qui declenchent un reload
- Mode liste : navigation et plage de chargement passent a 1 mois (au lieu
d'une fenetre de 7 jours qui rendait le mode liste inutilisable)
- Renomme l'option vide du filtre User en "Tous" (etait "User", ambigu)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-06 09:51:18 +02:00