cedric
842e87543c
revert: garder les mentions dans les commentaires importés
Déploiement API BETA / build (push) Successful in 2m22s
Déploiement API PROD / deploy (push) Successful in 54s
Déploiement API PROD / build (push) Successful in 2m23s
Déploiement API BETA / deploy (push) Successful in 44s
2026-07-05 20:10:51 +04:00
cedric
ecbcf5d86e
fix: retirer la mention initiale des commentaires importés
Déploiement API BETA / build (push) Successful in 2m16s
Déploiement API PROD / build (push) Successful in 2m24s
Déploiement API BETA / deploy (push) Successful in 44s
Déploiement API PROD / deploy (push) Successful in 53s
2026-07-05 19:39:33 +04:00
cedric
128c027af1
fix: extraire l'id de la relation avant de la déréférencer
Déploiement API BETA / build (push) Successful in 2m27s
Déploiement API PROD / build (push) Successful in 2m21s
Déploiement API BETA / deploy (push) Successful in 47s
Déploiement API PROD / deploy (push) Successful in 53s
2026-07-05 19:22:29 +04:00
cedric
29bdf72640
fix: réparer la relation commentaire.parole / parole.commentaires
Déploiement API BETA / build (push) Successful in 2m25s
Déploiement API PROD / build (push) Successful in 2m22s
Déploiement API BETA / deploy (push) Successful in 46s
Déploiement API PROD / deploy (push) Successful in 53s
2026-07-05 19:04:39 +04:00
cedric
fb60226bd4
fix: publier les commentaires bokante importés
Déploiement API BETA / build (push) Successful in 2m22s
Déploiement API PROD / build (push) Successful in 2m23s
Déploiement API BETA / deploy (push) Successful in 47s
Déploiement API PROD / deploy (push) Successful in 52s
2026-07-05 18:39:01 +04:00
cedric
34f3a7783b
docs: documenter les commentaires fédérés (bokante)
Déploiement API BETA / build (push) Successful in 2m20s
Déploiement API PROD / build (push) Successful in 2m21s
Déploiement API BETA / deploy (push) Successful in 44s
Déploiement API PROD / deploy (push) Successful in 56s
2026-07-05 02:06:23 +04:00
cedric
03960cc952
Merge pull request 'Commentaires fédérés via Mastodon (bokante.o-k-i.net) — backend' ( #5 ) from feat/comment-fedi into master
...
Déploiement API BETA / build (push) Successful in 2m20s
Déploiement API PROD / build (push) Successful in 2m24s
Déploiement API BETA / deploy (push) Successful in 44s
Déploiement API PROD / deploy (push) Successful in 53s
Reviewed-on: #5
2026-07-04 21:24:31 +00:00
cedric
719b4c7905
chore: régénérer les types Strapi (champs bokante)
Déploiement API BETA / build (push) Successful in 2m20s
Vérification PR / build (pull_request) Successful in 2m23s
Déploiement API BETA / deploy (push) Successful in 46s
Vérification PR / deploy-beta (pull_request) Successful in 47s
2026-07-05 01:18:44 +04:00
cedric
e416f94061
feat: backfiller le catalogue existant, une parole/heure
2026-07-05 01:07:31 +04:00
cedric
26471d8b0e
fix: déplacer le miroir bokante de beforeUpdate vers afterCreate
...
Avec draftAndPublish sur Strapi 5, publier une entrée crée une
nouvelle ligne (document-service publishEntry -> createEntry) au lieu
de mettre à jour la ligne existante : beforeUpdate ne se déclenche
donc jamais sur une vraie action Publier, seulement sur l'édition
d'une entrée déjà publiée. Le miroir bokante est maintenant posté
dans afterCreate, sur la condition result.publishedAt, avec
synchronisation brouillon/publié pour rester idempotent à travers les
cycles dépublier/republier.
2026-07-05 00:59:59 +04:00
cedric
861e75fde2
feat: planifier l'import des commentaires bokante (20 min)
2026-07-04 23:39:25 +04:00
cedric
6c828a2394
feat: importer les réponses bokante en commentaires
2026-07-04 23:38:41 +04:00
cedric
2a4cea0854
feat: publier un statut miroir bokante à la publication
2026-07-04 23:37:15 +04:00
cedric
648e51fe3c
feat: client HTTP minimal pour l'API Mastodon de bokante
2026-07-04 23:33:57 +04:00
cedric
0043a07ec1
feat: schéma pour les commentaires fédérés
2026-07-04 23:31:09 +04:00
cedric
7e705d3976
Merge pull request 'Audit sécurité/qualité : corrections critiques, tests, CI et lint' ( #4 ) from fix/audit-2026-07-04 into master
...
Déploiement API BETA / deploy (push) Successful in 45s
Déploiement API PROD / deploy (push) Successful in 1m25s
Déploiement API BETA / build (push) Successful in 2m19s
Déploiement API PROD / build (push) Successful in 2m27s
Reviewed-on: #4
2026-07-04 17:01:30 +00:00
cedric
2c84ea0f25
fix: corriger les erreurs ESLint restantes après activation
...
Déploiement API BETA / build (push) Successful in 2m24s
Déploiement API BETA / deploy (push) Successful in 1m37s
Vérification PR / build (pull_request) Successful in 2m23s
Vérification PR / deploy-beta (pull_request) Successful in 48s
- retirer les paramètres/variables inutilisés (result, ctx/next, qs)
- corriger l'indentation tabs/espaces mélangés dans src/admin/app.js
- retirer les échappements regex inutiles dans stripMarkdown
- remplacer while(true) par for(;;) (faux positif no-constant-condition)
2026-07-04 20:01:16 +04:00
cedric
2224c8f3bb
chore: activer ESLint sur le backend
...
Installe eslint, ajoute le script lint, modernise le parser
(retrait de babel-eslint obsolète) et applique l'autofix
(points-virgules manquants sur l'ensemble du code, conformément
à la règle "semi" déjà présente dans .eslintrc mais jamais
appliquée faute d'ESLint installé et d'un script pour l'exécuter).
2026-07-04 20:00:51 +04:00
cedric
90c048a282
fix: whitelister les champs autorisés sur create/update (mass assignment)
2026-07-04 15:08:19 +04:00
cedric
1d54d287e1
fix: retirer createdBy/updatedBy du payload dans beforeUpdate
2026-07-04 15:04:18 +04:00
cedric
3b9b28d326
fix: ne plus écraser les commentaires existants d'une parole
2026-07-04 14:59:58 +04:00
cedric
4ee7ed3e5e
fix: corriger la signature de parole.findOne (ctx au lieu de documentId)
2026-07-04 14:58:43 +04:00
cedric
0afa9251d6
ci: exécuter les tests dans deploy-beta et deploy-prod
2026-07-04 11:39:53 +04:00
cedric
250ae822ea
chore: retirer les secrets de fallback hardcodés dans admin.js
2026-07-04 11:39:45 +04:00
cedric
b36f53f022
chore: supprimer les dossiers legacy extensions/ et components/
2026-07-04 11:39:36 +04:00
cedric
e4187a697a
fix: envoyer le commentaire en texte brut (éviter l'injection HTML)
2026-07-04 11:38:56 +04:00
cedric
c0d6834178
feat: implémenter réellement la sauvegarde hebdomadaire de la base
2026-07-04 11:38:26 +04:00
cedric
6f77c17003
fix: valider data.user/data.artistes avant déréférencement
2026-07-04 11:38:02 +04:00
cedric
c4f45f712a
fix: éviter un crash sur updatedBy non peuplé
2026-07-04 11:37:40 +04:00
cedric
c66c972a93
fix: réparer la cascade de renommage des slugs d'artiste
2026-07-04 11:37:20 +04:00
cedric
85ecdf3072
fix: retirer l'override register qui exposait le hash de mot de passe
2026-07-04 11:36:50 +04:00
cedric
291aa54912
fix: corriger l'IDOR sur update/delete (parole, artiste, commentaire)
2026-07-04 11:36:20 +04:00
cedric
bc5d0fb498
fix: refuser par défaut is-payload-owner sans en-tête Authorization
2026-07-04 11:35:41 +04:00
cedric
e515944fb9
refactor: extraire la vérification JWT/payload en policy partagée
2026-07-04 10:04:00 +04:00
cedric
1562ecd706
ci: exécuter les tests avant le build sur chaque PR
2026-07-04 09:56:26 +04:00
cedric
416032942a
fix: restreindre bulk-translate aux appels par token API
2026-07-04 09:55:45 +04:00
cedric
9fa37c516c
chore: retirer la config rest-cache (plugin non installé, incompatible v5)
2026-07-04 09:54:39 +04:00
cedric
d87ab299c4
chore: déclarer axios comme dépendance directe
2026-07-04 09:52:36 +04:00
cedric
4c13f47156
fix: ne pas bloquer la publication si Telegram/Revolt échoue
2026-07-04 09:51:10 +04:00
cedric
36917d79b4
fix: ajouter un timeout DeepL et isoler les échecs par langue
2026-07-04 09:47:26 +04:00
cedric
ddb6d3f2f0
fix: corriger les mauvais identifiants utilisés (id vs documentId)
2026-07-04 09:43:28 +04:00
cedric
8b17882d6b
fix: corriger le ReferenceError dans artiste.create
2026-07-04 09:37:37 +04:00
cedric
f592d4ded7
fix: stopper l'exécution après un refus d'autorisation dans parole.create
2026-07-04 09:36:17 +04:00
cedric
796b4379fd
test: ajouter Vitest au backend
2026-07-04 09:36:01 +04:00
cedric
b99b6f2a25
chore: relever maxLimit de 100 à 200
Déploiement API BETA / build (push) Successful in 2m8s
Déploiement API PROD / build (push) Successful in 2m11s
Déploiement API BETA / deploy (push) Successful in 44s
Déploiement API PROD / deploy (push) Successful in 52s
2026-07-03 22:23:17 +04:00
cedric
d9868a1d5d
refactor: generaliser stems en kits (type Stems/Acapella+Instru)
Déploiement API BETA / build (push) Successful in 2m10s
Déploiement API PROD / build (push) Successful in 2m13s
Déploiement API BETA / deploy (push) Successful in 45s
Déploiement API PROD / deploy (push) Successful in 53s
2026-07-03 16:57:06 +04:00
cedric
c62b54fba7
feat: add stems links field (kDrive/NIYAJ) to paroles
Déploiement API PROD / build (push) Successful in 2m5s
Déploiement API PROD / deploy (push) Successful in 52s
Déploiement API BETA / build (push) Successful in 2m9s
Déploiement API BETA / deploy (push) Successful in 46s
2026-07-03 14:14:57 +04:00
cedric
34a54eaae9
feat: add pt-BR/ja/ko translation languages
Déploiement API BETA / build (push) Successful in 2m12s
Déploiement API PROD / build (push) Successful in 2m9s
Déploiement API BETA / deploy (push) Successful in 47s
Déploiement API PROD / deploy (push) Successful in 1m0s
2026-07-03 13:40:22 +04:00
cedric
2003948a9a
refactor: DeepL client uses fetch instead of axios
2026-07-03 13:34:38 +04:00
cedric
cac88c39b2
Merge pull request 'feat: add social network field to artiste' ( #3 ) from feat/improve-artist-page into master
...
Déploiement API BETA / build (push) Successful in 2m4s
Déploiement API BETA / deploy (push) Successful in 45s
Déploiement API PROD / build (push) Successful in 2m8s
Déploiement API PROD / deploy (push) Successful in 53s
Reviewed-on: #3
2026-06-26 17:36:33 +00:00