Changelog
Changelog
Points forts sélectionnés des dernières versions. Pour les versions complètes de l’API et la politique de rupture de compatibilité, consultez la Politique de versioning de l’API & LTS.
Modifications détaillées des différents points de terminaison : Spécification OpenAPI et référence API interactive.
2026-04 · Analyses du tableau de bord par code QR
- Tableau de bord : Le bouton d’analyses dans la liste des codes QR ouvre désormais la page de statistiques du code QR correspondant sous
/dashboard/codes/{id}. - Routage : L’alias
/dashboard/codesredirige toujours vers/dashboard, mais n’intercepte plus les routes détaillées comme/dashboard/codes/{id}. - API : La page de détails charge le code QR directement via
GET /v1/codes/:id; elle ne dépend donc plus des limites de pagination de la liste. - Tests : Les tests de régression couvrent la redirection d’alias et le chargement direct du code.
2026-04 · Boîte de dialogue de suppression des codes QR sur le tableau de bord
- Tableau de bord : L’icône de corbeille dans la liste des codes QR ouvre désormais une boîte de dialogue React dédiée au lieu d’une fenêtre contextuelle native du navigateur.
- Retour d’information : Après la suppression, une notification toast apparaît pour indiquer le succès ou l’échec.
- Tests :
packages/dashboard/tests/dashboard.test.tsempêche les régressions surconfirm()dans le flux de suppression de code QR.
2026-04 · Test de lien court sur le tableau de bord pour les codes QR dynamiques
- Tableau de bord : Les codes courts dans la liste des codes QR sont désormais directement cliquables en tant que liens de redirection externes. L’icône de lien externe à côté de par ex.
wu3qaaouvrehttps://qr3.app/{shortCode}dans un nouvel onglet. - i18n : Ajout des textes d’infobulle pour l’allemand et l’anglais.
- Tests :
packages/dashboard/tests/dashboard.test.tsprotège le href du lien, le comportement du nouvel onglet,noopener noreferreret l’icône contre les régressions.
2026-04 · Route du Worker de redirection pour les codes QR dynamiques
- Correctif : Les codes QR dynamiques sous
https://qr3.app/{shortCode}sont à nouveau traités par le Worker de redirection. La route de production utilise désormaisqr3.app/*car les routes de Cloudflare Workers ne prennent pas en charge les paramètres de chemin:code. - Renforcement : Les chemins non correspondants sont transmis à l’origine de la page d’atterrissage afin que les pages normales comme
/de/pricingne soient pas bloquées par le Worker de redirection. - Tests :
packages/redirect/tests/unit/redirect.test.tsvérifie la route générique, le traitement du code court et le passage à l’origine.
2026-04 · Aperçu des scans DPP de l’espace de travail (Q3.4.2)
- Nouveau :
GET /v1/workspace/stats/dpp?days=30— agrège tous lesdpp_scansde l’espace de travail de la clé API (active_dpps,scans_by_day,top_dppsavec nom de produit/catégorie). - Tableau de bord : Carte sur la page d’accueil (
/dashboard) avec un graphique à barres sur 30 jours + listes des tops — en parallèle des cartes de codes QR. - Public : Lien court marketing
GET /dpp/dpp_<id>(un segment) pour les démos en direct, en parallèle de/dpp/{gtin}/{serial}.
2026-04 · Analyses des scans DPP (Q3.4.1)
- Nouveau :
GET /v1/dpp/:id/stats?days=30— scans agrégés du résolveur public GS1 par DPP. Champs :total_scans,period_scans,scans_by_day,top_countries,top_devices,top_representations. - Nouveau : Table
dpp_scans(migration0011) — séparée descans(Worker de redirection). Les adresses IP sont hachées avec un sel rotatif quotidien, les IP brutes n’atteignent jamais D1. - Tableau de bord : Carte mini-graphique (SVG, sans bibliothèque de graphiques) sur
/dashboard/dpp/:dppIdavec barres sur 30 jours + ventilations du top 3. État vide dès qu’un DPP est en ligne mais n’a pas encore eu de scans.
2026-04 · Simulateur de conformité UE en direct (Q3.3.7)
- Nouveau :
POST /v1/dpp/:id/validate-update— simule des mises à jour partielles sans état (statut, liste de marchés, …) sans persistance. La réponse contienteu_compliance+preview.changed_fields. - Tableau de bord : Carte de simulateur dans les détails du DPP (
/dashboard/dpp/:dppId) — puces pourDE/AT/FR/IT/ES/NL+ personnalisé, menu déroulant de statut, Preview EU impact / Save changes / Reset. Non bloquant via RemixuseFetcher. - Renforcement : Assistants de simulation externalisés (
readUpdatePatchFromForm,marketCountriesKey) + 18 nouveaux tests unitaires ; correction de bug : une entrée non-ISO isolée ne supprime plus la liste des marchés.
2026-04 · Aperçu de la conformité UE en direct dans le formulaire de création (Q3.3.6)
- Modifié :
POST /v1/dpp/validatefournit en pluseu_compliance— le même validateur queGET /v1/dpp/:id/eu-compliance, sans état avant l’enregistrement. - Tableau de bord : Aperçu sous le panneau de validation existant + nouvelle bannière de protection de sauvegarde avant les boutons de soumission si des erreurs/avertissements sont en suspens (pluralisation i18n DE/EN).
2026-04 · Validateur UE + UI Textile (Q3.3.4 + Q3.3.5)
- Nouveau : Validateur de conformité UE avec 5 règles textiles (
TEXTILE_AGEC_REQUIRED,TEXTILE_MICROPLASTICS_CONSISTENCY,TEXTILE_SVHC_THRESHOLD,TEXTILE_GREENWASHING,TEXTILE_ESPR_READY). - Nouveau :
GET /v1/dpp/:id/eu-complianceaveccompliant/espr_ready/issues[]/summary. - Tableau de bord : Section de conformité UE dans les détails du DPP (tuiles de résumé, cartes de problèmes groupées, badge ESPR-Ready dans l’en-tête).
2026-04 · Schéma DPP Textile (Q3.3.1–Q3.3.3)
- Nouveau : Catégorie
textileavec chaîne d’obligation AGEC (tissage/tricotage → teinture/impression → confection), par fibreorigin_country+recycled_pct,svhc_substances[], opt-in ESPR (PEF, durée de vie, recyclabilité). - Nouveau : Champ de base
market_countries: string[](ISO 3166-1 alpha-2) sur toutes les catégories de DPP — contrôle les règles AGEC spécifiques à la France et la notice obligatoire pour les consommateurs français. - Nouveau : Modèle HTML consommateur avec boîte d’avertissement sur les microplastiques AGEC, chaîne d’origine à 3 étapes (badges de drapeaux), liste SVHC, sections durabilité et recyclabilité.
- Migration :
0010_dpp_market_countries(D1).
2026-04 · Importation en lot de DPP (Q3.2.1–Q3.2.5)
- Nouveau :
POST /v1/dpp/importaccepte CSV et XLSX (compatible Worker via SheetJSxlsx, bundle gzip d’environ 283 Ko). - Mise à l’échelle : Limite basée sur le forfait (Free 100 → Enterprise 10k) +
db.batch()fragmenté par 100 + limite de corps de 5 Mo. - Nouveau : Rapport d’erreurs au format CSV dans le champ
errors_csvde la réponse 201 ;GET /v1/dpp/import/templates/:category?format=csv|xlsxfournit des modèles prêts à l’emploi pour les batteries et le textile. - Tableau de bord : Téléchargement par glisser-déposer sous
/dashboard/dpp/importavec proxy de modèle et téléchargement CSV en ligne.
Sans rupture — Extensions LTS
Toutes les modifications mentionnées ci-dessus sont additives :
- Les clients existants de
POST /v1/dpp/validateignorent le nouveau champeu_compliancesans modification. - Les flux
batteryexistants restent inchangés. market_countriesest facultatif et a pour valeur par défaut[].
Consultez le Versioning de l’API pour la politique de rupture de compatibilité.