Grandus E-commerce — nový ERP push provider pre obojsmernú synchronizáciu
· ERP a transfery
Najväčšia novinka týždňa: kompletný push provider pre Grandus E-commerce platformu. Doteraz Monokaido z Grandusu len importovalo (pull) — teraz dokáže produkty a kategórie aj zapisovať späť do Grandusu (push). Provider je plne integrovaný do existujúceho erp-transfer subsystému a podporuje POST pri prvom push-i a PUT pri následných synchronizáciách (rozhodne sa podľa záznamu v novej tabuľke grandus_product_export). Pri opakovaných push-och provider porovná SHA-256 hash payloadu — ak sa nič nezmenilo od posledného úspešného push-u, produkt preskočí (pri 67 000 produktoch znižuje plný re-sync zo 74 hodín na minúty). Echo guard: Go importér automaticky preskočí produkty, ktoré sme do toho istého Grandus inštancie sami pushli — koniec duplicitných záznamov pri obojsmernej synchronizácii. Cez celý push-cyklus sa udržiava last_progress_at ako liveness signál, takže legitímne dlhotrvajúce push-y (>30 min pri veľkých katalógoch) nie sú falošne označené ako „stuck". Partial unique index zaručuje že per (config, transfer_type) môže bežať vždy len jeden aktívny push — koniec race-conditions medzi cron-om a manuálnym tlačidlom. Súčasťou je aj rich category resolver s UTF-8 truncation hardeningom (utf8mb3 sanitization v Grandus MySQL), pre-flight validátormi a safe flush wrapperom; kompresia fotiek nad 2 MiB cez sharp pred uploadom (sRGB konverzia, magic-byte sniff, pixel cap proti OOM/DoS, animované GIF flatten warning, observable per-chunk štatistiky); a per-product transfer block s cancel-aware sleep-om pri retry backoffoch.