Skip to content

Dnevnik sprememb

Dnevnik sprememb

Izbrani poudarki zadnjih izdaj. Za celotne različice API-ja in pravilnik o prelomnih spremembah si oglejte Različice API-ja in pravilnik LTS.

Podrobne spremembe posameznih končnih točk: Specifikacija OpenAPI in interaktivno referenco API.


2026-04 · Analitika nadzorne plošče na posamezno kodo QR

  • Nadzorna plošča: Gumb za analitiko na seznamu kod QR zdaj odpre stran s statistiko posamezne kode QR na naslovu /dashboard/codes/{id}.
  • Usmerjanje: Alias /dashboard/codes še naprej preusmerja na /dashboard, vendar ne prestreza več podrobnih poti, kot je /dashboard/codes/{id}.
  • API: Podrobna stran naloži kodo QR neposredno prek GET /v1/codes/:id; s tem ni več odvisna od omejitev strani na seznamu (pagination).
  • Testi: Regresijski testi pokrivajo preusmeritev aliasa in neposredno nalaganje kode.

2026-04 · Pogovorno okno za brisanje kod QR na nadzorni plošči

  • Nadzorna plošča: Ikona smetnjaka na seznamu kod QR zdaj odpre lastno pogovorno okno React namesto izvornega pojavnega okna brskalnika.
  • Povratne informacije: Po brisanju se prikaže pojavno obvestilo (toast) o uspehu ali napaki.
  • Testi: packages/dashboard/tests/dashboard.test.ts preprečuje regresije pri confirm() v poteku brisanja kode QR.

2026-04 · Test kratkih povezav na nadzorni plošči za dinamične kode QR

  • Nadzorna plošča: Kratke kode na seznamu kod QR so zdaj neposredno klikljive kot zunanje preusmeritvene povezave. Ikona za zunanjo povezavo poleg npr. wu3qaa odpre https://qr3.app/{shortCode} v novem zavihku.
  • i18n: Dodana besedila orodnih namigov (tooltip) za nemščino in angleščino.
  • Testi: packages/dashboard/tests/dashboard.test.ts ščiti povezavo href, vedenje novega zavihka, noopener noreferrer in ikono pred regresijami.

2026-04 · Pot preusmeritvenega delavca (Redirect-Worker) za dinamične kode QR

  • Popravek: Dinamične kode QR na https://qr3.app/{shortCode} ponovno obdeluje preusmeritveni delavec (Redirect-Worker). Produkcijska pot zdaj uporablja qr3.app/*, ker poti Cloudflare Workers ne podpirajo parametrov poti :code.
  • Utrjevanje: Neprilagojene poti se posredujejo ciljnemu naslovu pristajalne strani (landing origin), tako da preusmeritveni delavec ne blokira običajnih strani, kot je /de/pricing.
  • Testi: packages/redirect/tests/unit/redirect.test.ts preverja pot z divjo karto (wildcard), obdelavo kratkih kod in prehod do ciljnega naslova (origin pass-through).

2026-04 · Pregled skeniranj DPP v delovnem prostoru (Q3.4.2)

  • Novo: GET /v1/workspace/stats/dpp?days=30 — združuje vsa skeniranja dpp_scans delovnega prostora ključa API (active_dpps, scans_by_day, top_dpps z imenom izdelka/kategorijo).
  • Nadzorna plošča: Kartica na začetni strani (/dashboard) s 30-dnevnim paličnim grafikonom + seznami najboljših — vzporedno s karticami kod QR.
  • Javno: Tržna kratka povezava GET /dpp/dpp_<id> (en segment) za predstavitve v živo, vzporedno z /dpp/{gtin}/{serial}.

2026-04 · Analitika skeniranj DPP (Q3.4.1)

  • Novo: GET /v1/dpp/:id/stats?days=30 — združena skeniranja javnega razreševalnika GS1 na DPP. Polja: total_scans, period_scans, scans_by_day, top_countries, top_devices, top_representations.
  • Novo: Tabela dpp_scans (migracija 0011) — ločena od scans (preusmeritveni delavec). IP-naslovi so zgoščeni z dnevno rotirajočo soljo (salt), surove IP-naslove pa nikoli ne dosežejo baze D1.
  • Nadzorna plošča: Mini kartica z grafikonom (SVG, brez knjižnice za grafikone) na /dashboard/dpp/:dppId s 30-dnevnimi stolpci + razčlenitvijo najboljših 3. Prazno stanje (empty state), takoj ko je DPP aktiven, vendar še nima skeniranj.

2026-04 · Simulator skladnosti z EU v živo (Q3.3.7)

  • Novo: POST /v1/dpp/:id/validate-update — simulira delne posodobitve brez stanja (stateless) (status, seznam trgov, …) brez obstojnosti. Odgovor vsebuje eu_compliance + preview.changed_fields.
  • Nadzorna plošča: Kartica simulatorja v podrobnostih DPP (/dashboard/dpp/:dppId) — žetoni (chips) za DE/AT/FR/IT/ES/NL + po meri, spustni meni za status, Predogled vpliva na EU / Shrani spremembe / Ponastavi. Neblokirajoče prek Remix useFetcher.
  • Utrjevanje: Zunanji pomočniki simulatorja (readUpdatePatchFromForm, marketCountriesKey) + 18 novih enotskih testov; popravek hrošča: samostojni ne-ISO vnos ne izbriše več seznama trgov.

2026-04 · Predogled skladnosti z EU v živo v obrazcu za ustvarjanje (Q3.3.6)

  • Spremenjeno: POST /v1/dpp/validate dodatno vrne eu_compliance — isti validator kot GET /v1/dpp/:id/eu-compliance, brez stanja (stateless) pred shranjevanjem.
  • Nadzorna plošča: Predogled pod obstoječo ploščo za preverjanje veljavnosti + nova pasica za zaščito pred shranjevanjem (Save-Guard-Banner) pred gumbi za pošiljanje, če so odprte napake/opozorila (i18n množina DE/EN).

2026-04 · Validator EU + uporabniški vmesnik za tekstil (Q3.3.4 + Q3.3.5)

  • Novo: Validator skladnosti z EU s 5 tekstilnimi pravili (TEXTILE_AGEC_REQUIRED, TEXTILE_MICROPLASTICS_CONSISTENCY, TEXTILE_SVHC_THRESHOLD, TEXTILE_GREENWASHING, TEXTILE_ESPR_READY).
  • Novo: GET /v1/dpp/:id/eu-compliance z compliant / espr_ready / issues[] / summary.
  • Nadzorna plošča: Razdelek za skladnost z EU v podrobnostih DPP (povzetki v obliki ploščic, skupinske kartice težav, značka ESPR-Ready v glavi).

2026-04 · Shema DPP za tekstil (Q3.3.1–Q3.3.3)

  • Novo: Kategorija textile z obvezno verigo AGEC (tkanje/pletenje → barvanje/tiskanje → konfekcija), za vsako vlakno origin_country + recycled_pct, svhc_substances[], ESPR-Opt-in (PEF, življenjska doba, možnost recikliranja).
  • Novo: Osnovno polje market_countries: string[] (ISO 3166-1 alpha-2) v vseh kategorijah DPP — upravlja specifična francoska pravila AGEC in obvezno francosko obvestilo za potrošnike.
  • Novo: Potrošniška predloga HTML z opozorilnim poljem AGEC za mikroplastiko, 3-stopenjsko verigo izvora (zastavice), seznamom SVHC ter razdelkom za trajnost (Durability) in možnost recikliranja (Recyclability).
  • Migracija: 0010_dpp_market_countries (D1).

2026-04 · Množični uvoz DPP (Q3.2.1–Q3.2.5)

  • Novo: POST /v1/dpp/import sprejema CSV in XLSX (združljivo z delavci prek SheetJS xlsx, ~283 KB stisnjen paket gzip).
  • Skalirano: omejitev glede na paket (Free 100 → Enterprise 10k) + razdeljen db.batch() po 100 + 5 MB omejitev telesa (body limit).
  • Novo: Poročilo o napakah kot CSV v polju errors_csv odgovora 201; GET /v1/dpp/import/templates/:category?format=csv|xlsx ponuja pripravljene predloge za baterije in tekstil.
  • Nadzorna plošča: Prenos z vlečenjem in spuščanjem (Drag-and-Drop) na /dashboard/dpp/import s posrednikom predlog (template proxy) in neposrednim prenosom CSV.

Neprelomne spremembe — razširitve LTS

Vse zgoraj navedene spremembe so aditivne:

  • Obstoječe stranke POST /v1/dpp/validate prezrejo novo polje eu_compliance brez sprememb.
  • Obstoječi poteki za battery ostajajo nespremenjeni.
  • market_countries je neobvezen in ima privzeto vrednost [].

Glejte Različice API-ja za pravilnik o prelomnih spremembah.