Changelog
Changelog
Επιλεγμένα σημαντικά σημεία των πρόσφατων εκδόσεων. Για τις πλήρεις εκδόσεις API και την πολιτική διασπαστικών αλλαγών (breaking changes), ανατρέξτε στην Έκδοση API & Πολιτική LTS.
Λεπτομερείς αλλαγές σε μεμονωμένα endpoints: Προδιαγραφή OpenAPI και διαδραστική αναφορά API.
2026-04 · Analytics πίνακα ελέγχου (Dashboard) ανά QR-Code
- Dashboard: Το κουμπί Analytics στη λίστα QR-Code ανοίγει πλέον τη σελίδα στατιστικών του αντίστοιχου QR-Code στη διαδρομή
/dashboard/codes/{id}. - Routing: Το ψευδώνυμο (alias)
/dashboard/codesσυνεχίζει να ανακατευθύνει στο/dashboard, αλλά δεν παρεμποδίζει πλέον λεπτομερείς διαδρομές όπως η/dashboard/codes/{id}. - API: Η σελίδα λεπτομερειών φορτώνει το QR-Code απευθείας μέσω
GET /v1/codes/:id. Έτσι, δεν εξαρτάται πλέον από τα όρια σελιδοποίησης (pagination limits) της λίστας. - Tests: Οι δοκιμές παλινδρόμησης (regression tests) καλύπτουν την ανακατεύθυνση του alias και την απευθείας φόρτωση του κώδικα.
2026-04 · Διάλογος διαγραφής QR-Code στο Dashboard
- Dashboard: Το εικονίδιο του κάδου απορριμμάτων στη λίστα QR-Code ανοίγει πλέον έναν προσαρμοσμένο διάλογο React αντί για ένα εγγενές (native) αναδυόμενο παράθυρο του προγράμματος περιήγησης.
- Feedback: Μετά τη διαγραφή, εμφανίζεται μια ειδοποίηση toast για επιτυχία ή σφάλμα.
- Tests: Το αρχείο
packages/dashboard/tests/dashboard.test.tsαποτρέπει παλινδρομήσεις στη μέθοδοconfirm()στη ροή διαγραφής QR-Code.
2026-04 · Δοκιμή σύντομου συνδέσμου Dashboard για δυναμικά QR-Codes
- Dashboard: Οι σύντομοι κωδικοί (shortcodes) στη λίστα QR-Code είναι πλέον άμεσα κλικάσιμοι ως εξωτερικοί σύνδεσμοι ανακατεύθυνσης. Το εικονίδιο εξωτερικού συνδέσμου δίπλα π.χ. στο
wu3qaaανοίγει τη διεύθυνσηhttps://qr3.app/{shortCode}σε νέα καρτέλα. - i18n: Προστέθηκαν κείμενα tooltip για Γερμανικά και Αγγλικά.
- Tests: Το αρχείο
packages/dashboard/tests/dashboard.test.tsπροστατεύει το href του συνδέσμου, τη συμπεριφορά νέας καρτέλας, τοnoopener noreferrerκαι το εικονίδιο από παλινδρομήσεις.
2026-04 · Διαδρομή Redirect-Worker για δυναμικά QR-Codes
- Fix: Τα δυναμικά QR-Codes στη διεύθυνση
https://qr3.app/{shortCode}επεξεργάζονται ξανά από τον Redirect-Worker. Η διαδρομή παραγωγής (production route) χρησιμοποιεί πλέον τοqr3.app/*, επειδή οι διαδρομές Cloudflare Workers δεν υποστηρίζουν παραμέτρους διαδρομής:code. - Θωράκιση: Οι διαδρομές που δεν ταιριάζουν προωθούνται στο αρχικό landing origin, ώστε κανονικές σελίδες όπως η
/de/pricingνα μην αποκλείονται από τον Redirect-Worker. - Tests: Το αρχείο
packages/redirect/tests/unit/redirect.test.tsελέγχει τη διαδρομή wildcard, την επεξεργασία shortcode και την προώθηση στο origin (pass-through).
2026-04 · Επισκόπηση σαρώσεων DPP χώρου εργασίας (Workspace) (Q3.4.2)
- Neu:
GET /v1/workspace/stats/dpp?days=30— συγκεντρώνει όλες τις σαρώσειςdpp_scansτου χώρου εργασίας (workspace) του API-Key (active_dpps,scans_by_day,top_dppsμε όνομα προϊόντος/κατηγορία). - Dashboard: Κάρτα στην αρχική σελίδα (
/dashboard) με ραβδόγραμμα 30 ημερών + κορυφαίες λίστες (top lists) — παράλληλα με τις κάρτες QR-Code. - Public: Σύντομος σύνδεσμος μάρκετινγκ
GET /dpp/dpp_<id>(ένα τμήμα) για ζωντανές επιδείξεις (live demos), παράλληλα με το/dpp/{gtin}/{serial}.
2026-04 · Analytics σαρώσεων DPP (Q3.4.1)
- Neu:
GET /v1/dpp/:id/stats?days=30— συγκεντρωτικές σαρώσεις του δημόσιου GS1 resolver ανά DPP. Πεδία:total_scans,period_scans,scans_by_day,top_countries,top_devices,top_representations. - Neu: Πίνακας
dpp_scans(Migration0011) — ξεχωριστά από τοscans(Redirect-Worker). Οι διευθύνσεις IP κατακερματίζονται (hashed) με καθημερινά εναλλασσόμενο salt, οι ακατέργαστες IP δεν φτάνουν ποτέ στη D1. - Dashboard: Κάρτα μικρογραφήματος (SVG, χωρίς βιβλιοθήκη γραφημάτων) στη διαδρομή
/dashboard/dpp/:dppIdμε ράβδους 30 ημερών + αναλύσεις των κορυφαίων 3 (top-3 breakdowns). Κατάσταση κενού (empty-state) μόλις ένα DPP είναι ενεργό αλλά δεν έχει ακόμη σαρώσεις.
2026-04 · Ζωντανός προσομοιωτής συμμόρφωσης ΕΕ (Live EU Compliance Simulator) (Q3.3.7)
- Neu:
POST /v1/dpp/:id/validate-update— προσομοιώνει μερικές ενημερώσεις χωρίς διατήρηση κατάστασης (stateless) (κατάσταση, λίστα αγορών, …) χωρίς μόνιμη αποθήκευση. Η απάντηση περιλαμβάνει ταeu_compliance+preview.changed_fields. - Dashboard: Κάρτα προσομοιωτή στις λεπτομέρειες DPP (
/dashboard/dpp/:dppId) — chips γιαDE/AT/FR/IT/ES/NL+ Custom, αναπτυσσόμενο μενού κατάστασης (status dropdown), Preview EU impact / Save changes / Reset. Μη αποκλειστικό (non-blocking) μέσω του RemixuseFetcher. - Θωράκιση: Εξωτερικευμένοι βοηθοί προσομοιωτή (
readUpdatePatchFromForm,marketCountriesKey) + 18 νέα unit tests. Διόρθωση σφάλματος (bugfix): Η εισαγωγή μεμονωμένου μη-ISO κειμένου δεν διαγράφει πλέον τη λίστα αγορών.
2026-04 · Ζωντανή προεπισκόπηση συμμόρφωσης ΕΕ στη φόρμα δημιουργίας (Q3.3.6)
- Geändert: Το
POST /v1/dpp/validateπαρέχει επιπλέον τοeu_compliance— ο ίδιος validator όπως στοGET /v1/dpp/:id/eu-compliance, stateless πριν από την αποθήκευση. - Dashboard: Προεπισκόπηση κάτω από το υπάρχον πλαίσιο επικύρωσης (validation panel) + νέο Save-Guard-Banner πριν από τα κουμπιά υποβολής (submit), εάν υπάρχουν εκκρεμή σφάλματα/προειδοποιήσεις (Errors/Warnings) (i18n-πληθυντικός DE/EN).
2026-04 · Εργαλείο ελέγχου συμμόρφωσης ΕΕ (EU-Validator) + UI κλωστοϋφαντουργικών (Q3.3.4 + Q3.3.5)
- Neu: Εργαλείο ελέγχου συμμόρφωσης ΕΕ (EU-Compliance-Validator) με 5 κανόνες κλωστοϋφαντουργικών (
TEXTILE_AGEC_REQUIRED,TEXTILE_MICROPLASTICS_CONSISTENCY,TEXTILE_SVHC_THRESHOLD,TEXTILE_GREENWASHING,TEXTILE_ESPR_READY). - Neu:
GET /v1/dpp/:id/eu-complianceμεcompliant/espr_ready/issues[]/summary. - Dashboard: Ενότητα συμμόρφωσης ΕΕ (EU-Compliance-Section) στις λεπτομέρειες DPP (πλακίδια σύνοψης, ομαδοποιημένες κάρτες ζητημάτων, σήμα ESPR-Ready στην κεφαλίδα).
2026-04 · Σχήμα DPP κλωστοϋφαντουργικών (Q3.3.1–Q3.3.3)
- Neu: Κατηγορία
textileμε υποχρεωτική αλυσίδα AGEC (Ύφανση/Πλέξιμο → Βαφή/Εκτύπωση → Ραφή), ανά ίναorigin_country+recycled_pct,svhc_substances[], ESPR-Opt-in (PEF, διάρκεια ζωής, Recyclability). - Neu: Βασικό πεδίο
market_countries: string[](ISO 3166-1 alpha-2) σε όλες τις κατηγορίες DPP — ελέγχει τους ειδικούς κανόνες AGEC για τη Γαλλία (FR) και την υποχρεωτική γαλλική σημείωση καταναλωτή. - Neu: Πρότυπο HTML καταναλωτή (Consumer-HTML-Template) με πλαίσιο προειδοποίησης μικροπλαστικών AGEC, αλυσίδα προέλευσης 3 σταδίων (flag-pills), λίστα SVHC, ενότητα Durability και Recyclability.
- Migration:
0010_dpp_market_countries(D1).
2026-04 · Μαζική εισαγωγή DPP (Q3.2.1–Q3.2.5)
- Neu: Το
POST /v1/dpp/importδέχεται CSV und XLSX (συμβατό με Workers μέσω του SheetJSxlsx, ~283 KB gzip bundle). - Skaliert: Όριο βάσει προγράμματος (Free 100 → Enterprise 10k) + τμηματικό (chunked)
db.batch()ανά 100 + όριο σώματος (body limit) 5 MB. - Neu: Αναφορά σφαλμάτων ως CSV στο πεδίο
errors_csvτης απάντησης 201. ΤοGET /v1/dpp/import/templates/:category?format=csv|xlsxπαρέχει έτοιμα πρότυπα για μπαταρίες και κλωστοϋφαντουργικά. - Dashboard: Μεταφόρτωση με μεταφορά και απόθεση (Drag-and-Drop-Upload) στη διαδρομή
/dashboard/dpp/importμε template-proxy και ενσωματωμένη (inline) λήψη CSV.
Μη διασπαστικές αλλαγές (Non-Breaking) — Επεκτάσεις LTS
Όλες οι παραπάνω αλλαγές είναι προσθετικές:
- Οι υπάρχοντες πελάτες (clients) του
POST /v1/dpp/validateαγνοούν το νέο πεδίοeu_complianceχωρίς αλλαγές. - Οι υπάρχουσες ροές
batteryπαραμένουν αμετάβλητες. - Το πεδίο
market_countriesείναι προαιρετικό και έχει ως προεπιλογή το[].
Δείτε την Έκδοση API για την πολιτική διασπαστικών αλλαγών (breaking changes).