Commit Graph

41 Commits

Author SHA1 Message Date
sam 955ae61e86 Merge pull request 'feat: page de telechargement des applications mobiles (Android / iOS)' (#10) from feat/ci-cd-securisation-infcdaal3 into main
CI - Intégration continue / quality-and-tests (push) Successful in 3m27s
CD - Déploiement continu / deploy (push) Successful in 1m46s
Reviewed-on: #10
2026-07-09 22:53:59 +00:00
sam 29e6fec64d feat: page de telechargement des applications mobiles (Android / iOS)
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m32s
Page publique /telecharger reprenant le modele de Ressources-relationnel :
- config/mobile.php (lien de store prioritaire, sinon binaire local, sinon 'bientot')
- DownloadController + vue au style DSFR, lien dans la sidebar
- variables MOBILE_* et depot public/downloads/ (binaires gitignores)
- 3 tests (page publique, lien store, bouton desactive)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 00:37:27 +02:00
sam 35c2fb9ca0 Merge pull request 'fix(front): heberge Alpine.js via Vite au lieu du CDN (bloque par la CSP)' (#8) from feat/ci-cd-securisation-infcdaal3 into main
CI - Intégration continue / quality-and-tests (push) Successful in 3m22s
CD - Déploiement continu / deploy (push) Successful in 1m42s
Reviewed-on: #8
2026-07-09 17:21:26 +00:00
sam df8af066fc fix(front): heberge Alpine.js via Vite au lieu du CDN (bloque par la CSP)
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m29s
La Content-Security-Policy stricte bloquait le CDN jsdelivr, donc Alpine ne
se chargeait pas : menu profil toujours ouvert et app de respiration KO.
Alpine est desormais bundle par Vite (servi depuis 'self') → compatible CSP,
sans dependance externe.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 19:19:54 +02:00
sam 889902aa4f Merge pull request 'feat(tickets): suivi bidirectionnel des tickets utilisateur via Gitea' (#7) from feat/ci-cd-securisation-infcdaal3 into main
CI - Intégration continue / quality-and-tests (push) Successful in 3m26s
CD - Déploiement continu / deploy (push) Successful in 1m52s
Reviewed-on: #7
2026-07-08 21:40:09 +00:00
sam 7d52c1e440 feat(tickets): suivi bidirectionnel des tickets utilisateur via Gitea
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m27s
Le formulaire 'fire-and-forget' devient un vrai systeme de suivi :
- table locale tickets (user <-> numero d'issue Gitea)
- liste 'Mes tickets' avec etat (En cours / Resolu) et jalon
- page de suivi : etat, labels, jalon, fil de discussion (commentaires)
- reponse depuis le web (ajoute un commentaire sur l'issue Gitea)
- controle d'acces : un utilisateur ne voit que ses propres tickets
- GiteaIssueService etendu (getIssue, getComments, addComment)
- remplace l'ancien SuggestionController ; 5 tests de bout en bout

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 23:38:42 +02:00
sam d452a9cfa3 Merge pull request 'docs(env): DB_HOST generique (serveur MySQL du reseau) dans le template prod' (#6) from feat/ci-cd-securisation-infcdaal3 into main
CI - Intégration continue / quality-and-tests (push) Successful in 3m26s
CD - Déploiement continu / deploy (push) Successful in 1m41s
Reviewed-on: #6
2026-07-08 20:55:36 +00:00
sam 69da55b292 docs(env): DB_HOST generique (serveur MySQL du reseau) dans le template prod
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m30s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 22:43:41 +02:00
sam a5452624cb Merge pull request 'ci(deploy): genere vendor et assets sur l'hote (le bind-mount masque ceux de l'image)' (#5) from feat/ci-cd-securisation-infcdaal3 into main
CD - Déploiement continu / deploy (push) Successful in 1m40s
Reviewed-on: #5
2026-07-08 20:29:35 +00:00
sam d0eb1252d5 ci(deploy): genere vendor et assets sur l'hote (le bind-mount masque ceux de l'image)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 22:11:41 +02:00
sam e7623a8666 Merge pull request 'Feat/ci cd securisation infcdaal3' (#4) from feat/ci-cd-securisation-infcdaal3 into main
CI - Intégration continue / quality-and-tests (push) Successful in 3m21s
CD - Déploiement continu / deploy (push) Successful in 1m34s
Reviewed-on: #4
2026-07-08 19:21:19 +00:00
sam 9a0015f205 test: neutralise Vite dans le TestCase de base (CI sans assets compiles)
CI - Intégration continue / quality-and-tests (pull_request) Successful in 3m30s
Corrige l'echec ExampleTest (ViteManifestNotFoundException) en CI :
withoutVite() est desormais applique globalement, le rendu des vues ne
depend plus du manifeste public/build/manifest.json.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 21:20:16 +02:00
sam 9deb64b0f2 Merge pull request 'Feat/ci cd securisation infcdaal3' (#3) from feat/ci-cd-securisation-infcdaal3 into main
CD - Déploiement continu / deploy (push) Successful in 1m33s
CI - Intégration continue / quality-and-tests (push) Failing after 3m9s
Reviewed-on: #3
2026-07-08 19:14:43 +00:00
sam 94b4218ba5 docs: section systeme de tickets + synchronisation CI/CD (PHPStan, SonarQube, deploiement SSH)
- dossier : 3.2 remontee des demandes depuis l'app (formulaire -> issue Gitea)
- dossier : CI/CD reecrit (PHPStan, couverture, SonarQube, deploiement SSH) + diagramme + annexes
- slides : mention du formulaire in-app + legende CD SSH

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:56:00 +02:00
sam f1825434ed feat: systeme de tickets utilisateur connecte a Gitea
CI - Intégration continue / quality-and-tests (pull_request) Failing after 3m10s
Formulaire de suggestions/signalements (utilisateur connecte) qui cree une
issue dans le depot Gitea via son API v1 :
- GiteaIssueService (appel API), SuggestionController (validation + creation)
- vue suggestions/create au style DSFR, lien dans la sidebar (@auth)
- config services.gitea + variables GITEA_URL/TOKEN/REPO
- tests de bout en bout (auth, validation, appel API mocke)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:43:49 +02:00
sam d11a297fd2 chore(ci): runner act_runner sur volume nomme (compatible Portainer)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:22:58 +02:00
sam 6680003b4d fix(securite): mise a jour des dependances pour corriger 27 CVE (Filament, Laravel, Symfony, Guzzle)
- composer update : filament 3.3.54, laravel/symfony/guzzle patches
- composer audit ne remonte plus aucune vulnerabilite
- ajout d'une etape composer audit (informative) dans la CI

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:22:32 +02:00
sam d70d60b96f Merge pull request 'Feat/ci cd securisation infcdaal3' (#2) from feat/ci-cd-securisation-infcdaal3 into main
CD - Déploiement continu / deploy (push) Successful in 1m33s
CI - Intégration continue / quality-and-tests (push) Failing after 2m39s
Reviewed-on: #2
2026-07-08 17:03:41 +00:00
sam 9ec95111a0 ci: alignement sur le standard qualite (Larastan, couverture, SonarQube) et deploiement SSH
CI - Intégration continue / quality-and-tests (pull_request) Failing after 2m35s
- ci.yml: ajout analyse statique PHPStan/Larastan, couverture PHPUnit (clover+junit) et analyse SonarQube conditionnelle
- deploy.yml: deploiement continu par SSH (git reset + docker compose up --build + migrations + cache), conteneur cesizen-app
- phpstan.neon (niveau 5), grumphp.yml (hooks qualite locaux), sonar-project.properties, docker-compose.sonar.yml
- ajout larastan/larastan et phpro/grumphp en require-dev

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:59:02 +02:00
sam 4ffce393de chore(models): annotations @property (Role, User) pour l'analyse statique
Permet a Larastan (PHPStan niveau 5) de resoudre $user->role->libelle.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:59:02 +02:00
sam 22bdf7307a Merge pull request 'Feat/ci cd securisation infcdaal3' (#1) from feat/ci-cd-securisation-infcdaal3 into main
CD - Déploiement Web (Production) / build-and-deploy (push) Failing after 39s
CI - Web (Laravel) / quality-and-tests (push) Failing after 3m59s
Reviewed-on: #1
2026-07-08 16:47:05 +00:00
sam 89b4107266 docs: dossier de deploiement/securisation, presentation BLOC 3 et CHANGELOG
CI - Web (Laravel) / quality-and-tests (pull_request) Failing after 4m4s
- docs/Dossier_Deploiement_Securisation_CESIZen.docx (15-20 pages)
- presentation_bloc3.js -> CESIZen_Presentation_Bloc3.pptx (10 slides)
- diagrammes architecture et CI/CD (docs/img)
- CHANGELOG.md (versionnage semantique)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:44:13 +02:00
sam 70d4767890 chore(app): mises a jour applicatives et normalisation du code (Laravel Pint)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:44:13 +02:00
sam c51f17a74c test: fiabilisation de la suite de tests
- BusinessLogicTest: utilise le vrai modele StressEvent + auth Sanctum
- AdminAccessTest: compte actif requis pour l'acces au panel
- SecurityHeadersTest: verifie les en-tetes de securite
- suppression du modele orphelin EvenementStress

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:44:13 +02:00
sam ebe1836f7e feat(securite): en-tetes HTTP, trust proxies et configuration de production durcie
- middleware SecurityHeaders (HSTS, CSP, X-Frame-Options, etc.)
- trustProxies pour le reverse proxy Nginx Proxy Manager
- .env.production.example (APP_DEBUG=false, sessions chiffrees, cookies Secure)
- politique de securite SECURITY.md

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:43:17 +02:00
sam d75afe0aac ci: pipelines Gitea Actions (CI/CD) + modeles de tickets et runner
- ci.yml: tests PHPUnit, Pint, audit securite, build Vite
- deploy.yml: build image -> registre Gitea -> webhook Portainer -> health check
- modeles d'issues (incident / evolution) et de Pull Request
- docker-compose du runner act_runner

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:43:17 +02:00
sam c3e1c95f1b chore(repo): ajout du .gitignore racine et arret du suivi de node_modules/.idea
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 18:43:17 +02:00
sam 6515d8348d Correction fonctionnalité rear display 2026-05-20 22:17:01 +02:00
sam d0045a7d61 Ajout fonctionnalité écran arriere 2026-05-20 21:50:54 +02:00
sam 0074c28dcd Ajout doc 2026-05-18 23:11:49 +02:00
sam 4cba9ce74b Correction ajout image pour les informations 2026-05-14 19:29:48 +02:00
sam 89610b807c ajout de filtre de guides et informations 2026-05-14 19:09:28 +02:00
sam 4633805dbd save 2026-05-14 19:02:29 +02:00
sam 7f95b8a2ef save 2026-05-14 19:00:55 +02:00
sam 8eb5d93514 Save 2026-05-14 16:59:59 +00:00
sam 15fcbcc9eb Save 2026-05-14 16:54:32 +00:00
sam 85ad36880c Multiples corrections 2026-05-14 18:52:40 +02:00
sam 5b2a2e7ddb ajout bibliothèque méditation et changement de test 2026-04-26 13:02:19 +02:00
sam f3092f2dc4 Ajout d'un test unitaire sur auth et calcul de stress 2026-04-23 18:30:26 +02:00
sam c2e9decc41 correction sur la partie WEB/respiration 2026-04-22 23:47:20 +02:00
sam ccbe5ad801 Première grosse version fonctionnel 2026-04-22 23:30:31 +02:00