Rasadnik Milić · Plant Garden · WooCommerce → Vendure

Status migracije

Što je izgrađeno u 67 dana i čime je dokazano, i u kojim smjerovima projekt ide dalje. Dokument pokriva gradnju i provjeru; prelazak na produkciju dobiva svoju listu, a ova se stranica tada arhivira.

Stanje na 17. rujna 2026. · putanje premjerene 18. rujna 2026. · brojke i gate premjereni 20. rujna 2026. Deset repozitorija umjesto jednog od 17. 9. — grana i commit više nisu jedna brojka; raspored stoji u organizaciji, a strojno u flora-base/repos.json. Do 18. 9. ovdje je stajalo main · 27415265 · 7 commitova ispred origin/main, što je bio monorepo. Gate 20. 9. u 16 h: ./flora check → 8 prošlo, 0 palo, 2 bez gatea, izlazni kod 0, 4.443 testa kroz sedam gateova (flora-core 3.531 u 346 datoteka, sync-nexus 650, flora-libs 76, storefrontovi 78 + 75, flora-base 33; flora-atlas ne broji testove nego 187 poveznica). Osam redaka, a sedam gateova: flora-base se mjeri dvaput, i izvorno i u linux grani. Do 20. 9. je ovdje pisalo 6 prošlo, 2 palo, 2 bez gatea, 4.377 testova — to je brojka od 18. 9. u 22 h. Ništa nije popravljeno: obje su trgovine tada pale na astro build jer Vendure nije radio, a 20. 9. je radio (lsof -i :3000 ima slušatelja — vlasnikov). Rezultat gatea ovisi o tome je li port 3000 podignut, i to nije svojstvo koda. Provjereno u repozitoriju, ne po dokumentaciji

Redoslijed rada, vlasnikova odluka 19. rujna 2026. Nadglasava svaki drugi poredak u dokumentaciji i u promptovima. Prvih pet koraka su put od pusha do stranice koju netko može otvoriti — ne točan sadržaj na kraju tog puta.

  1. CI/CD dovršen. Gate, slika i deploy rade; trgovinama nedostaju build i objava.
  2. Neka verzija API-ja na pravoj domeni — dev-platform.plant-garden.com. Prompt 09a.
  3. Neka verzija na Cloudflare Pagesu — dev-v2.plant-garden.si. Prompt 10a.
  4. To testirano — stranica se otvori i doista zove API.
  5. Pipeline brz. Prompt 11a, zadnji jer se brzina mjeri na putu koji radi cijeli.

Tek iza toga: nexus, nadzor nad svime, pravi produkcijski katalog i vrijednosti, popravak frontenda, CMS.

Podaci ulaze u prvih pet samo zato što astro build staje nad praznim katalogom, po dizajnu. To se rješava kopijom lokalne dev baze, ne uvozom. Prompt 08a (pravi katalog iz WooCommercea) je zato namjerno neaktivan — ostaje samo zato što nosi dva izmjerena nalaza na slovenskom dućanu: SKU 1453 i 1464 nisu u SI kanalu iako ih SI prodaje, pa 327 veza na 163 proizvoda tiho nestane; i ProductVariant.name nema sl prijevod, pa slovenska košarica ispisuje hrvatska imena dok kartice pokazuju slovenska.

Zašto ovo piše ovdje, a ne samo u promptovima. Redoslijed se u dva dana dvaput odlutao — jednom u backup, jednom u katalog — jer su ti promptovi bili napisani i spremni, a odluka je živjela samo u razgovoru. Zapisana odluka nadživi razgovor; nezapisana ne.

Funkcionalno

Trgovina radi — katalog, checkout, plaćanja, mailovi, GLS, zakonske obveze, dizajn i sync zaliha. Narudžba prolazi kroz sustav od kraja do kraja, s oba načina plaćanja i s točnom poštom; testirano na 25 narudžbi. Ostaje marketinška pošta na Brevo i Trello most.

Operativno

main je u koraku s remoteom — sve je pogurnuto. Poslužitelj, isporuka koda, backup i nadzor nisu dio ovog dokumenta: to je post-produkcijska lista koja dobiva svoju stranicu. Ovdje se mjeri je li sve izgrađeno i je li sve testirano.

Put do prve žive trgovine

sedam faza iza · provjera u tijeku · pogon pred nama
0Temelji
1Katalog
2Naplata
3Kupac
4Zakon
5Sadržaj
6Storefront
7Integracije
·Provjera i popravci
8Pogon
cilj Slovenija živo na novom sustavu. Pred ovim dokumentom stoji jedna stvar: provjera po cjelinama — 196 provjera u 22 cjeline, koje se prolaze redom. Prvi prolaz kroz cijene već je našao kvar koji nijedan test nije hvatao; zato se prolazi. Pogon (poslužitelj, isporuka koda, sigurnosna kopija, nadzor) nije faza ovog dokumenta nego post-produkcijska lista koja dolazi poslije. Od integracija ostaju marketinška pošta i Trello most; naljepnice, webhookovi i sync zaliha rade.

Gdje smo sve izgrađeno · ide se kroz provjere

Dućan radi sve što rade obje postojeće WooCommerce trgovine, i nekoliko stvari koje one ne mogu. Ono što je ostalo nije gradnja nego prolaz kroz 196 provjera po cjelinama — tab Testiranje. Sve prije ovoga je u tabu Kronologija, sve poslije u tabu Roadmap.

Ovog tjedna

  • Zaliha se više ne razilazi — sync radi automatski od 11. rujna, nadzor (nexus) živi na vlastitom serveru od 14. i otad je dobio sedam krugova dorade. Ostaje ga spojiti na produkcijski dućan, a to je korak prelaska, ne gradnja. Vlastita stranica →
  • SEO i E2E su zatvoreni — oba storefronta grade sitemap.xml (1.650 HR / 1.637 SI) i robots.txt iz CMS-a, a Playwright harness vozi put kroz naplatu.
  • Preporuke i adresnica — upsell i cross-sell preneseni iz WooCommercea, a GLS naljepnica poravnata sa živim pluginom: broj narudžbe, kontakt pošiljatelja i napomena za dostavu koju je netko pročitao.
  • Tuđi pluginovi su pogledani — sedam pregledanih, dva usvojena, pet odbijeno. Procjena je zatvorena; ne čeka se ništa.

Smjerovi kamo projekt ide · stanje 17. 9. 2026.

Ovo nisu zadaci nego smjerovi — svaki je ili odluka koja je pala, ili odluka koja čeka. Zadaci iz njih žive u tabu Roadmap; ovdje stoji samo kamo se ide i koliko je toga izvedeno.

Podjela na repozitorije izvedena 17. 9., CI na njoj 18. 9.

  • Monorepo se razlaže u deset repozitorija, s tankim meta repom flora koji nosi samo bootstrap, skupni gate i zapis SHA-trojki: flora-core (Vendure + WP plugin), flora-atlas (memorija: roadmap, status, prompti, specovi), flora-docs, flora-infra, flora-libs, po jedan repo za svaki storefront, sync-nexus i flora-samples.
  • Odluka je izmjerena, ne osjećaj: od 1.105 commitova u 90 dana 68,8 % dira točno jedno područje — njima granica ne košta ništa. Najtješnji šav je www-hr ↔ www-si sa 102 commita, i to je artefakt paralelne izgradnje dvaju storefronta: 101 datoteka je bajt-identična, 41 se razlikuje, 17 postoji samo na HR.
  • Zajednički paket flora-client nosi Shop API klijent i pravna i komercijalna pravila — ne izgled. Brendovi smiju izgledati posve različito. Odlučeno 17. 9. navečer: živi u flora-libs, vlastitom library repozitoriju, uz legal-tooling koji ondje već ima tri potrošača. Cijena te odluke — shema i klijent više nisu jedan commit — zapisana je uz nju, zajedno s contract testom koji je pokriva.
  • Redoslijed je posložen tako da svaki korak vrijedi sam za sebe: prvo CI, pa sync-nexus van (najlakši rez — 176 commitova, dva dodira s jezgrom, vlastiti jezik i deploy), pa memorija u flora-atlas.
  • Izvedena je, i ovaj je redak do 18. 9. navečer tvrdio suprotno. Ovdje je stajalo „na disku je i dalje jedan repozitorij" — točno 16. rujna kad je pisano, netočno već idućeg dana. ./flora status 18. 9. u 22 h nabraja deset repozitorija, svih deset u koraku s origin/main; do tog su jutra dvije trgovine još stajale nepushane.
  • Podjela je 18. 9. navečer dobila i CI. Sedam repozitorija dobilo je .gitlab-ci.yml, isprva kroz jedan zajednički predložak u flora-infri. Taj je predložak 25. 9. ukinut — svaki repozitorij sada drži cijeli svoj pipeline u vlastitoj mapi .ci/, jedna datoteka po fazi. flora-infra je usput prestao biti skelet: u njemu su OpenTofu, Ansible, runner i vlastiti ./run. Detalji su na Infrastrukturi, mjerenja i cijena podjele na Projektnoj organizaciji.

Treći brend poslije podjele

  • rasadnik-milic.hr dolazi kao vlastiti storefront, uz postojeća dva. To je i razlog zašto se pravila sele u paket: treći brend ne smije značiti treću kopiju istog koda.
  • Danas bi bio treća kopija — svaka dizajnerska promjena radi se dvaput, po odluci od 1. rujna; s trećim sajtom to postaje triput.

Slike imaju strop od 600 px novo, nije riješeno

  • Izmjereno danas na uzorku od 400 izvornih slika: 82 % ih je točno 600×600, a samo 8 od 400 prelazi 800 px u bilo kojoj dimenziji. Izvornika većih od toga u katalogu nema.
  • Što to znači: zumiranje na stranici proizvoda, retina prikaz i velike naslovne slike nisu stvar koda — traže ponovni uvoz iz WordPressovih originala, ako oni postoje.
  • Gdje se vodi: Pohrana. Prije nego se išta odluči, treba izmjeriti što stoji na starom poslužitelju.

Pogon i pohrana čeka odluke

  • Paket poslužitelja stoji neodlučen od 20. srpnja — A, B ili C. Bez njega nema ni staginga, ni isporuke, ni kopije. Infrastruktura.
  • Slike na trajnu pohranu (roadmap 41) i dalje su preduvjet za sve ostalo: dok su pečene u sliku kontejnera, svaki deploy briše ono što je uneseno kroz sučelje.
  • Post-produkcijska lista dobiva svoj dokument kad sustav ode živo; ova se stranica tada arhivira.

Brojke sve izmjereno 29. 9. 2026. · commitovi iz origin/main, jer su lokalne kopije iza

Gate danas pada na tri mjesta, i nijedno nije u kodu. ./flora check daje 5 prošlo, 3 palo, 2 bez gatea, uz 6.133 testa. Obje trgovine padaju na fetch failed — grade se protiv živog Vendurea na portu 3000, koji nije podignut; od 28. 9. čitanje se ponovi četiri puta i onda kaže što je dobilo, umjesto da tiho padne. Treći je flora-base (linux), 58/73: slika node:24-bookworm-slim nema git, a testovi za push all ga zovu — traje šesti dan. Kako se ishod mijenjao iz dana u dan stoji u kartici Kronologija, ne ovdje.

Novo upozorenje u buildu, i nije kvar: otkad pravni dokumenti žive u Vendureu, build javlja Vendure has no terms or privacy in force for language „hr" — checkout stays closed until they are published. U bazi stoji 10 verzija pravnih dokumenata, ali nijedna nije na snazi. Build zato prolazi i preskače pravne stranice. To je sadržajni zadatak, ne tehnički: netko mora objaviti tekstove u Dashboardu.

1.929commita u deset repozitorija
54dana s commitom, 20. 7. – 29. 9.
6.133testa u sedam gateova
34plugina
100migracija baze
55rute storefronta (28 HR + 27 SI)

Kako se ove brojke čitaju. Zbroj commita nije usporediv s monorepom (koji je stao na 1.117): rez je istu povijest ostavio u više repozitorija, pa se dio commita broji višekratno, a četiri repozitorija povijest uopće nisu dobila. Dani rada broje dane u kojima je bilo commita kroz svih deset repozitorija — ne dane sa sesijom; graf ispod broji i te, i njih je više. Broj testova je iz ./flora check na ovom računalu, ne s GitLaba; te dvije mjere kasne jedna za drugom koliko i zadnji push. Sve ostalo je izravan izlaz naredbe.

Kadenca rada

Commita po danu, 13. srpnja – 29. rujna 2026.

dan s commitom radni dan bez commita
Commita u main
0
13. 7. 20. 7. 1. 8. 15. 8. 29. 9.

Ochre stupci su radni dani koji nisu ostavili commit. Njih ne bi bilo vidljivo iz gita — dokazuje ih 180 sesija: 91 iz Claude Codea, kroz 13 projektnih mapa (glavno stablo i dvanaest radnih stabala), i 89 iz Codexa, filtriranih po radnoj mapi zapisanoj u sesiji, ne po tekstu. Tako je rad počeo 13. srpnja, tjedan prije prvog commita, a tjedan 19.–25. kolovoza ima sesije svaki dan. Prijeđi mišem za brojke po danu. Spajanje dizajna 9. rujna promijenilo je i prošlost grafa: 85 commitova s grane sad se broji po danu kad su napisani (2.–8. rujna), pa 4. rujna više nije prazan stupac nego 47 commitova.

Poruka je ono što je čovjek napisao — rezultati alata, sistemske napomene i ispisi naredbi se ne broje. Stupac je 5. rujna prebrojan iznova, jednom metodom kroz sve dane; ranije su brojke nastale drugom metodom, a razlika je malena (sesije se poklapaju na 50 od 55 dana, nigdje više od 25 poruka razlike). Za 20.–23. srpnja zapisa sesija nema iako je ušlo 156 commitova — mjereno, ne pretpostavljeno: te dane ne nalazi nijedan izvor. 4. rujna nema stupca jer tog dana u main nije ušlo ništa — svih 47 commitova otišlo je na granu dizajna, koju ovaj graf ne mjeri, a sesija tog dana ima 90 poruka.

Dopuna 23. 9. Dani 19.–23. rujna prebrojani su istom metodom; 19. i 20. su dotad stajali bez brojke sesija. Claude Codeova strana danas ima 141 zapis sesije kroz 21 projektnu mapu — bilo je 91 kroz 13 kad je gornja rečenica pisana. Codexova strana (89) nije premjerena, pa se ni ukupnih 180 ne prepisuje. 21. i 23. rujna su ochre stupci: 68 odnosno 12 poruka, nijedan commit. 20. rujna je ispravljen s 27 na 52 — 27 je bila mjera u 16 h, a tog je dana navečer ušlo još 25 commitova.

Šav 17.–18. rujna: od ovdje stupac više ne mjeri isto, i to se ne da zagladiti. Svi stupci do 17. rujna broje commitove u main monorepa. Monorepo je 17. 9. zamrznut i 18. rujna je primio nula commitova — da je definicija ostala ista, graf bi od tog dana pokazivao prazno, a taj je dan bio najgušći u projektu. Zato stupac od 18. 9. broji zbroj svih deset repozitorija: 159. Nije usporediv sa stupcima lijevo od sebe i ne pretvara se da jest.

I 17. rujan je ovdje ispravljen. Stajala su 4 commita — brojka izmjerena tog dana u tijeku, prije nego su zamrzavanje i PRESELJENO.md ušli. Konačni broj u monorepu je 14, i toliko sada stoji. Ali ni to ne opisuje taj dan: istog je dana u deset novih repozitorija ušlo još 67 commitova, koje ovaj stupac ne broji jer bi ih pomiješao s poviješću koju su rezovi kopirali, a ne stvorili. 17. rujna je dakle stupac koji svjesno prikazuje manje nego što se dogodilo — dan reza se ne da nacrtati jednom brojkom.

18. rujan je 20. 9. premjeren: 177, ne 159. Stara je brojka uzeta u 22 h tog istog dana — dakle u tijeku, kao i 17. rujan iznad. Zadnja dva stupca su 19. 9. (72) i 20. 9. (27), izmjerena istom naredbom nad svih deset repozitorija: git log --since="<dan> 00:00" --until="<dan> 23:59". Poruke i sesije za ta dva dana nisu prebrojene i stoje kao nije prebrojeno, ne kao nula — nula bi tvrdila da sesija nije bilo.

Sesije su prebrojane iznova 18. 9. Claude Codeova strana danas ima 127 zapisa sesija kroz 20 projektnih mapa — bilo je 91 kroz 13. Codexova strana (89) nije premjerena u ovom prolazu, pa se ni ukupna brojka od 180 ne prepisuje. 17. rujna ima 62 poruke u 7 sesija (stajalo je 13 u 5, iz istog mjerenja u tijeku), a 18. rujna 202 poruke u 9 sesija. Za 16. rujna ista metoda daje 166 umjesto zapisanih 165; razlika od jedne poruke je šum metode i nije prepisana.

Uvjeti za „design-ready" gate iz flora-atlas/stanje/roadmap.md · bilo flora-atlas/stanje/roadmap.md

Roadmap postavlja pet uvjeta koje sustav mora ispuniti prije nego se uopće krene u dizajn i brend. Ovako stoje danas. Uvjeti se mjere na testnom sustavu, jer to je ono što ovaj dokument pokriva — ono što se može dokazati tek na produkciji ide na post-produkcijsku listu i ne drži nijedan uvjet otvorenim.

01

Kupac dovrši narudžbu na HR i SI, pouzećem ili virmanom, i dobije točne mailove

Prolazi, i to odavno. Put je vožen od kraja do kraja na oba storefronta: 25 narudžbi, 12 kupaca, 10 adresnica, oba načina plaćanja (pouzeće i virman s HUB3 barkodom), 13 tipova pošte, GLS izbor paketomata i praćenje pošiljke. Od 15. rujna isti put vozi i Playwright (e2e/checkout.spec.ts, HR i SI). Ono što ostaje nije dokaz da radi, nego da se pokrene na pravom dućanu — a to je korak prelaska.

Da
02

Svaka funkcija stare trgovine ima ekvivalent ili zapisanu odluku da se ispušta

Ostatak: konsolidacija marketing maila na Brevo, Trello most, i ručna migracija 32 stranice i 14 postova s HR-a.

Blizu
03

Zakonske obveze: PDV, Omnibus, R1, pravo odustanka, GDPR

Sve izgrađeno i testirano. PDV hortikulture u HR potvrdio si 9. rujna: 5 % — i sustav je već na toj stopi, 1.476 varijanti, dokazano na pravoj narudžbi (taxRate: 5); 71 varijanta na 25 % su oprema, ne sadnice. Ostaje jedna netehnička stvar: pisana odluka da R1 račune i dalje izdaje Synesis, ne Vendure.

Izgrađeno
04

Osoblje vodi trgovinu od kraja do kraja bez WordPressa

Dashboard pokriva narudžbe, radne statuse, plaćanja, adresnice, mailove, pravne dokumente i postavke po kanalu.

Da
05

Sve se može uništiti i vratiti iz backupa u sat vremena, dokazano vježbom

Ovaj uvjet ne pripada ovom dokumentu. Backup, vježba oporavka, poslužitelj, isporuka koda i nadzor postoje tek kad postoji produkcija — pa se mjere na post-produkcijskoj listi, ne ovdje. Jedino što je od njega mjerljivo danas jest da je kod na GitLab remoteu i da je main u koraku s origin/main.

post-produkcija

Što se promijenilo od zadnje verzije provjera 17. 9. 2026.

Od sinoć u 21:20 u main je ušlo 14 commitova, a velika stvar koja je stajala necommitana u radnom stablu — podjela repozitorija — upisana je u main 17. 9. Sve dolje je izmjereno danas.

Novo od sinoć 14 commitova

  • Tri nove status stranice — infrastruktura, pohrana, organizacija — plus tabovi na prve dvije i jedinstvena širina na svih pet.
  • Nexus: redak narudžbe vodi prvo unutra pa u oba dućana, testne narudžbe se siju kroz blagajnu umjesto kroz bazu, a brisanje testnih podataka prvo otkazuje adresnice da ih ne izgubi.
  • Gate je narastao s 3.474 na 3.497 testa (3.324 server u 324 datoteke), izlazni kod 0.

Odluka je sada u gitu commitano 17. 9.

  • Podjela repozitorija je razrađena na stranici Projektna organizacija: deset repozitorija plus tanak meta repo, mjerenja iza odluke, paket flora-client koji storefronti dijele, cijena koju podjela nosi i dva preostala otvorena pitanja. Stranica je dobila pet tabova.
  • Rupa iz jutarnje provjere je zatvorena. Dok je stajala necommitana, odluka nije postojala ni za koga osim za ovo računalo — isto što ova stranica ima zapisano za ansible.log i za 444 MB slika. Ta dva ostaju otvorena.
  • Klijent je dobio mjesto istu večer: flora-libs, vlastiti library repozitorij — pa ih je deset, ne devet. Odluka je donesena protiv preporuke analize (55 : 35 za „uz core"), a mjerenje koje je vodilo na drugu stranu ostalo je zapisano jer imenuje rizik kojim se sad upravlja: 31 od 34 promjene u tom sloju je praćenje GraphQL sheme.

Izmjereno danas novi nalaz

  • Izvorne slike su 600×600. Uzorak od 400 datoteka iz static/assets/source: 329 ih je točno 600×600 (82 %), samo 8 prelazi 800 px. Katalog ima 3.263 izvorne slike i 206 MB pregleda.
  • Posljedica nije estetska nego opsežna: zum, retina i velike naslovne slike traže ponovni uvoz iz WordPressovih originala — ako oni postoje. To se mjeri na starom poslužitelju, ne ovdje.

Analiza pohrane postoji, ali ne u repozitoriju nezapisano

  • Neka je sesija izmjerila da je oko dvije trećine baze dnevnik uvoza, da slike postoje samo u jednoj veličini i da kopije nema. Prvo od toga nisam mogao provjeriti — razvojni Postgres danas ne radi, pa brojka ostaje tuđe mjerenje dok se ne zapiše s dokazom.
  • Drugo jest provjereno i stoji u kartici iznad. Treće je već zapisano na stranici Pohrana.
  • Pouka je ista kao i za podjelu: nalaz koji nije u flora-atlas/stanje/ ne postoji — ni za sljedeću sesiju, ni za vlasnika.

Što se promijenilo 16. rujna prethodna provjera

Prošla verzija ove stranice napisana je 15. rujna u 19:46. Od tada je u main ušao 59 commitova, a tri su tvrdnje bile netočne već u trenutku pisanja. Devet ih je ušlo dok je ova provjera trajala — druga sesija je u 18:03 spojila E16 — pa su brojke ispod mjerene dvaput, a vrijede one druge. Sve dolje je izmjereno u gitu, u radnom stablu i pokretanjem gatea — ne prepisano iz dokumentacije.

Preslagano po tvojim uputama večer 16. 9.

  • Produkcija više nije „što stoji na putu”Poslužitelj, isporuka koda, backup i nadzor ne mogu biti gotovi prije nego produkcija postoji, pa su izdvojeni u post-produkcijsku listu koja dobiva svoj dokument. Ova se stranica arhivira kad sustav ode živo.
  • Uvjeti za „design-ready” mjere se na testnom sustavuUvjet 01 (kupac dovrši narudžbu s oba plaćanja i točnom poštom) prolazi — vožen je kroz 25 narudžbi i od 15. rujna ga vozi i Playwright. Uvjet 05 (backup i vježba oporavka) prebačen je u post-produkciju.
  • „Gdje smo” je skraćeno na jedan stupacBila su četiri popisa i jedan blok upozorenja; ostalo je ono što se radi ovog tjedna. Povijest je u Kronologiji, budućnost u Roadmapu.
  • Kronologija je dobila vlastiti tab i tražilicu29 stavki lanca bilo je najduži dio Statusa. Traži se po cijelom tekstu stavke, s pogocima označenima u tekstu; slova s kvačicama ne moraš pisati.
  • Jedan protokol testiranja umjesto dvaStari tab Testiranje (56 koraka A–M) je maknut, a kontrolna knjiga preimenovana u Testiranje i pomaknuta na kraj trake. Pokrivali su isto, knjiga dublje; dvije liste tražile su da se isto testira dvaput. Stara poveznica #cjeline i dalje otvara taj tab.
  • Na mobitelu tabovi postaju padajući izbornikČetiri taba u redu tražila su vodoravni skrol, a tab koji se ne vidi ne postoji. Ispod 640 px stoji gumb s imenom otvorenog taba; gumbi u izborniku su isti oni s ulogom tab, pa nema druge navigacije koja bi se mogla raziće s prvom.
  • Sync je gotov, tuđi pluginovi pogledani, git ažuriranTri stavke koje su stajale kao otvorene: sync radi automatski i ostaje ga samo spojiti na produkcijski dućan; procjena tuđih pluginova je zatvorena (7 pregledanih, 2 usvojena); main je u koraku s remoteom od 18:16.

Ispravljeno na ovoj stranici 6 stavki

  • C1 „Sync zaliha” stajala je kao predradnjeSve tri faze su u main i dokazane uživo 10.–11. rujna, a nadzor živi na vlastitom serveru od 14. rujna. Stranica je to ispravno pisala u svom lancu događaja i krivo u roadmapu — dvije sekcije iste datoteke govorile su suprotno.
  • B4 „Sitemap i robots.txt” pisala je da ničega nemaOboje je izgrađeno 15. rujna u 0b592438, sat vremena prije nego je stranica napisana. Izmjereno na lokalnom buildu: 1.650 URL-ova HR, 1.637 SI. Ostao je samo mrtvo polje robotsTxt na kanalu.
  • B8 „E2E test” pisala je da nijedan test ne dokazuje kupnjuPlaywright harness s testom kroz naplatu ušao je istim commitom. Stavka je prebačena u „izgrađeno, nedokazano” — test postoji, ali nije u gateu i nijednom nije zabilježeno da je prošao.
  • Pretraga je pisala „još nije u main”Grana search-fix spojena je 15. rujna u 14:33 (b209642c), sedam sati prije nego je stranica napisana.
  • Tri brojača su lagala jedan drugomeIzvoz u zupčaniku imao je ukucane totale („od 50”, „od 21”, „od 139”) dok su značke na tabovima računale stvarno stanje (56, 23, 196). Sada se sva tri broje iz same stranice, pa ne mogu zaostati.
  • „Popis od 170 provjera”Kontrolna knjiga ih ima 196, u 22 cjeline. Ispravljeno na oba mjesta u tekstu.

Novo od 15. rujna 59 commitova

  • Upsell i cross-sell iz WooCommerceaNovi plugin product-relations; kanal filtrira resolver jer Vendure relacije po kanalu ne filtrira sam. Traka na proizvodu i cross-sell blok u košarici.
  • GLS adresnica poravnata sa živim pluginomBroj narudžbe i kontakt pošiljatelja na naljepnici; napomena za dostavu ide na adresnicu tek kad ju je netko pročitao i odlučio.
  • Nadzor zaliha kroz četiri kruga doradeE12–E15 u main: sažetak i sklopivi odsjeci dijagnostike, kalendarski rasponi i grafovi narudžbi u zoni čitatelja, pošta koja imenuje dućane i čita se na telefonu.
  • Prodajna povijest za popularnostIzvoz iz WooCommercea jednom naredbom; usput popravljen kvar u kojem je drugi ključ sortiranja gasio primarni.
  • LAN launchernpm run dev sam nađe privatnu adresu računala, pa oba storefronta vidi i drugi uređaj u mreži.

Dokumentacija poravnata s kodom isto veče

  • README.mdBrojke premjerene: 94 migracije (bilo 73), gate 3.464 u pet paketa (bilo „1.892 server, HR nema testova"), 30 registriranih plugina u 30 mapa u gitu — prvi put se brojke poklapaju, jer je 31. mapa (email-templates) prazna i necommitana. Sitemap, robots.txt i Playwright preseljeni iz „ne postoji" u „postoji", s brojkama i s ogradom da E2E nije dokaz dok se ne pokrene i zapiše.
  • flora-atlas/stanje/README.mdIspravljeni brojevi plugina i READMEova (30 registriranih, 28 od 30 ima README — legal-checkout i login-control nemaju), i dodano pravilo 5: gradnja i pogon su odvojeni dokumenti — post-produkcijska lista ne pripada ovoj stranici ni gateu za „design-ready”.
  • flora-atlas/stanje/roadmap.mdStavka 39: sitemap i robots.txt izgrađeni, ostalo je samo brisanje mrtvog polja robotsTxt. Stavka 13: harness postoji, nijedno pokretanje nije zapisano, mail nije pokriven. Stavka 3: remote u koraku, CI i dalje ne postoji. Stavka 57: dopisano E10–E16 i kako se nexus deploya — dvadeset Ansible prolaza 16. rujna, zadnji dovršeni u 20:58.
  • Još tri mjesta koja popis nije imaoflora-atlas/docs-dev/integrations.md je sync zaliha i dalje vodio pod „mora se izgraditi", a SEO redak tvrdio da robotsTxt nitko ne zapisuje; flora-atlas/stanje/wordpress-sync.md je pisao „ništa od ovoga nije izvedeno" iako su uvoznik i mapiranje živi od početka; a indeks nije spominjao compliance-spec, mapu superpowers/ (27 specova, 25 planova) ni n8n/. Sve troje popravljeno istim prolazom.
  • flora-atlas/stanje/plugin-inventory.mdDodan redak za nexus-stock-report i objašnjeno zašto mora biti registriran zasebno; ispravljeno brojanje (36 unosa, 30 vlastitih, 31 mapa). Provjereno programski: svih 30 registriranih plugina sad ima svoj redak.

Stranica je preseljena novo mjesto

  • flora-atlas/stanje/status-sites/index.htmlBila je docs/status-migracije.html. Sve status stranice sad žive u jednoj mapi, a ova je njihov ulaz.
  • Poveznica na susjedeTraka ispod naslova vodi na sync zaliha i nadzor. Nove stranice dolaze u istu mapu i u istu traku.
  • Posluzivane kopije nemasamples/status/ je ukinut — ls flora-samples/ 18. 9. ne nalazi status/. Stranice se otvaraju dvoklikom izravno iz flora-atlas/stanje/status-sites/.
  • Dva gumba u uglu umjesto triTema je preselila u ploču iza zupčanika, gdje su i izvoz i uvoz — tri plutajuća gumba počela su stajati jedan preko drugoga. Iznad zupčanika je sada gumb na vrh, a njegov se rub puni koliko je stranice pročitano: prazan krug na vrhu, pun na dnu.

Što se promijenilo 9. rujna prethodna provjera

Zapis starije provjere, ostavljen kao dio loga. Tada je stranica bila napisana na stanju od 8. rujna; ovo su mjesta na kojima je bila zastarjela — mjereno u gitu i uživo na Vendureu.

Popravljeno na ovoj stranici 6 stavki

  • „85 commitova na grani, nijedan u main”Grana dizajna je spojena 9. rujna, tvojom rukom. Stavka A1 više ne čeka odluku o spajanju, nego tvoj prolaz kroz stranice.
  • „Sučelje filtra po cijeni na grani, server u main”Isto spajanje; stavka D1 sad ima obje polovice na jednom mjestu. Ostaje samo sortiranje.
  • „PDV 5 % ili 13 % nije potvrđen”Potvrdio si 5 % — i sustav je već bio na toj stopi. Maknuto iz „Što stoji na putu” i iz „Čeka tebe”; uvjet 03 ima još samo pisanu odluku o R1.
  • „Prodavatelj i IBAN nisu upisani”Upisani su 9. rujna iz uvjeta poslovanja za oba društva. Ostaje ono što u uvjetima nema: telefon PLANT GARDEN-a i adrese za povrat.
  • „37 commitova ispred remotea, ništa pogurnuto od 3. rujna”Push je napravljen — na stanje prije spajanja dizajna. Brojka je zato porasla na 104, ne pala; uvjet 05 i lanac to sad kažu točno.
  • Brojke26 → 27 plugina, 87 → 89 migracija, 43 → 51 ruta storefronta, 2.374 → 2.593 testova. Graf kadence prebrojan iznova jer spajanje pripisuje 85 commitova danima 2.–8. rujna.

Novo — nađeno danas, nije na roadmapu bilo 4 stavke

  • SI pretraga vidi 865 od 1.535 proizvodazatvoreno 24. 9. Indeks je danas pun i jednak u sva tri jezika: select "languageCode", count(distinct "productId") from search_index_item group by 1 daje 1.547 proizvoda i 4.623 zapisa za en, hr i sl — nijedan jezik ne zaostaje. Ostatak ovog retka je zapis kako je izgledalo dok je bilo otvoreno. Proizvodi su imali slovenski naziv, ali indeks pretrage za sl nije imao 670 proizvoda. Isti upit na istom kanalu s languageCode=hr vraća svih 1.535. Izmjereno na tvom Vendureu (:3000), Shop API, 9. rujna. Stavka A5 u roadmapu. Ispravak 15. rujna: ovdje je isprva pisalo da je uzrok „varijante nose samo hrvatski prijevod”. Nije. en ima jedan prijevod varijante u cijelom katalogu i potpunu pokrivenost indeksa, a sl ima 1.543 prijevoda proizvoda i polovicu — pa prijevodi ne mogu biti uzrok. Uzrok je bio kanal iz kojeg se reindeks pokreće; riješeno, vidi 15. rujna.
  • Migracija 1790000067000 je u main dvaputJučer je pisalo „prenumerirati prije spajanja, ne poslije”. Spojeno je bez prenumeriranja: add-customer-tax-fields i add-order-sales-channel-code dijele isto vrijeme. Radi, jer diraju različite tablice i TypeORM ih u tom slučaju uzima po imenu datoteke — ali redoslijed ovisi o abecedi, ne o namjeri. Dug, ne kvar; zapisan u A1.
  • Pet mailova još ispisuje nasumični kodLjudski broj 1-26-48392 stoji na potvrdi narudžbe i podsjetniku za virman. order-shipped, order-delivered, order-cancelled, bank-transfer-payment-received i contract-withdrawal-received i dalje pišu order.orderCode. Kupac bi u pet poruka vidio dva različita identifikatora. Stavka A6.
  • Podaci koje samo ti imašTelefon PLANT GARDEN-a u GLS postavkama je još lažni 031031031 — taj broj kurir zove. Adrese za povrat prazne su za oba društva. Ni jedno ni drugo nije u uvjetima poslovanja koje si poslao.

Ostalo nakon spajanja čišćenje

  • Osam radnih stabala i 30 lokalnih granaSve su spojene osim spikea CMS-a (worktree-spike-cms-keystatic-sveltia, 1 commit od 7. kolovoza). Radna stabla pod .claude/worktrees/ i Dev/rasadnik/gls-m6 više ne nose ništa što main nema. Brisanje je sigurno, ali je tvoje.
  • package-lock.json je izmijenjen, a necommitanOd današnjeg npm install nakon spajanja (67 dodano, 73 maknuto). Ili commit, ili git checkout — ne ostavljati.
  • Izvor narudžbe u DashboarduPodatak jest u bazi i API ga vraća (direct), a ekran ti je pokazao „Nije zabilježeno”. Najvjerojatnije predmemorija Dashboarda; provjera u anonimnom prozoru nije zapisana kao obavljena. Za onih 25 testnih narudžbi „Nije zabilježeno” je istina — plugin ne popunjava unatrag.

Post-produkcija poslije ovog dokumenta · redoslijed je ovisnost, ne prioritet

Ovo nije popis nedovršenog. Sve dolje postoji tek kad postoji produkcija — poslužitelj, isporuka koda, sigurnosna kopija, nadzor. Dok se gradi i provjerava, te stavke ne mogu biti ni gotove ni pokvarene, pa ovdje stoje samo kao red kojim dolaze. Dobit će svoj dokument: kad ovaj sustav ode u produkciju, ova se stranica arhivira i post-produkcijska lista kreće kao zasebna. Svaka stavka ovisi o prethodnoj — assetovi na R2 nemaju smisla bez remotea, staging nema smisla bez R2, deploy nema smisla bez staginga. Promptovi su u tabu Roadmap.

CI gate na svaki push roadmap 3

Remote je ažuriran — main i origin/main su na istom commitu, ništa ne stoji samo na ovom računalu. Ono što ne postoji je CI: nema .gitlab-ci.yml ni bilo kakvog workflowa, pa nijedan push ne pokreće gate. Gate se do tada pokreće ručno, i pokreće se — brojka u zaglavlju je iz današnjeg pokretanja.

pola sata

Assetovi na R2 roadmap 41

AssetServerPlugin piše u lokalni static/, a Dockerfile to peče u image — svaka slika uploadana kroz Dashboard nestaje pri sljedećem deployu. Preduvjet za backup i oporavak, ne opcija.

preduvjet

Staging okolina roadmap 7 · 31

Jedina stavka koja Fazu 1 još drži otvorenom. Mehanizam uvoza je dokazan na pravom katalogu; fali okolina u koju bi se to podiglo.

blokira 5–7

Sitemap i robots.txt iz CMS-a roadmap 39

Izgrađeno 15. rujna (0b592438), točno po odluci od 1. rujna: izvor je CMS (content/settings/seo.mdx), jedan dokument po domeni, prerenderana ruta u oba storefronta, s ogradom koja ruši build ako katalog ispadne premalen. Izmjereno na lokalnom buildu: 1.650 URL-ova HR, 1.637 SI. Ostalo je samo brisanje mrtvog polja robotsTxt na kanalu, uz povratnu migraciju — nitko ga ne čita, a postavka koja ne radi ništa je protiv konvencije projekta.

gotovo · ostao rep

Build i deploy roadmap 40

Jedan build po domeni, wrangler upload na Cloudflare Pages bez Workera. Ne graditi inkrementalni build dok se puni build ne izmjeri — ~3.100 stranica trebalo bi ići u minutama.

—

Produkcija, vježba oporavka, E2E, nadzor roadmap 12 · 44 · 13 · 45

Čeka odluku o infrastrukturi, koja u infrastructure-options.md stoji kao „Decision pending" od 20. srpnja — tri paketa su izračunata na pravoj veličini kataloga, izbor je tvoj. Netestirani backup nije backup, pa vježba oporavka ide odmah nakon prelaska. Put kroz naplatu vozi Playwright od 15. rujna; ono što ostaje nije test nego prvo pokretanje na pravom dućanu.

gate 05

Čeka tebe, ne kod 5 stavki

  • Izvoz sa živog plant-garden.siStoji od 14. kolovoza kao tvrdi STOP. SI ide prvi na novi sustav, a ne znamo što na starom živi — u repozitoriju je samo plitka revizija od 20. srpnja.
  • Telefon PLANT GARDEN-a i adrese za povratOIB, sjedište i IBAN su od 9. rujna pravi za oba društva. Telefon na GLS postavkama je još 031031031, adrese za povrat prazne. Kurir zove taj broj.
  • Prolaz kroz dizajn u mainSpojio si ga jutros; nitko još nije prošao HR i SI stranicu po stranicu na spojenom stanju. Odluke iz design-ingest.md (usporedba, tamna tema, promo traka) i dalje stoje otvorene.
  • Živa GLS provjera s produkcijskim računomGetPrintedLabels nikad nije potvrđen protiv pravog GLS-a, samo sandboxa. Danas je na sandboxu prošlo 10 od 10 adresnica, uključujući SI s hrvatskim preuzimanjem.
  • PushJedna naredba, i sada se radi redovito — zadnji 15. rujna. Ostaje zaostatak od jednog dana, ne od tjedna.

Otvoreno, ne blokira 7 stavki

  • Ljudski broj u pet mailova (A6)Kupac danas u potvrdi vidi 1-26-48392, a u „poslano” nasumični kod.
  • R1 računi (21)Po odluci ih i dalje izdaje Synesis, a Vendure samo isporučuje podatke. Ta odluka nigdje nije zapisana kao zatvaranje stavke, pa stavka i dalje stoji otvorena.
  • EPC QR (8)HUB3A je dokazan, EPC nije. Za SI je QR ionako isključen po tvojoj odluci, pa ovo postaje HR tema.
  • Brevo kao marketing sustav (27)Tri preklapajuća sustava danas šalju kroz Brevo. Selidba mora ponijeti i dokaze privole, ne samo adrese.
  • Trello most (54)Ovisi o poništenoj stavci 51 — treba mu novi temelj ili nova odluka.
  • Migracija sadržaja (37)32 stranice i 14 postova s HR-a, ručno u novi model.
  • Ostaci pariteta (35)Kuponi, minimalna narudžba, kontakt forme.

Vlasnikov dodatak 1. rujna 2026.

Osam stavki koje je vlasnik naveo, razloženih u devet redaka — load testovi i E2E su različit posao. Svaka je provjerena protiv flora-atlas/stanje/roadmap.md i specifikacija: šest već postoji u planu, dvije mijenjaju zapisanu odluku, jedna je posve nova.

Sync plugin — Vendure šalje zalihu u WooCommerce master

Plan ide u suprotnom smjeru: stavka 14 je jednosmjerni sync WordPress → Vendure, odgođen, a inventory-sync je odbačen kao nepotreban jer ga zamjenjuju Vendure kanali. wordpress-sync.md čak izričito traži da WordPress ne prepisuje polja koja su Vendureova. Za postupni prelazak je ipak nužno — dok SI radi na novom, a HR ostaje na starom sustavu, zaliha se razilazi i prodaje se ono čega nema. Traži i pisano pravilo tko je vlasnik kojeg polja.

mijenja odluku

Load testovi

U cijeloj dokumentaciji nema nijednog spomena opterećenja — ni alata, ni cilja, ni praga. Ima smisla tek kad postoji dev/staging okolina, dakle iza četvrtog koraka lanca. Prvo pitanje nije alat nego brojka: koliko istovremenih kupaca mora izdržati, mjereno prometom sa starih sajtova.

novo

Ostali E2E testovi

Postoji kao stavka 13 i nije napravljena: Playwright kroz proizvod → košaricu → dostavu → pouzeće i virman → potvrdu → mail. Svi današnji testovi su jedinični; nijedan ne dokazuje tok od kraja do kraja.

stavka 13

Dizajn prije infrastrukture

Roadmap je govorio „tek onda dizajn", nakon svega. Pomak prolazi — dizajn ne ovisi o produkcijskom poslužitelju. Predlagao sam da sloj tokena (38) ostane ispred njega; vlasnik je 1. rujna odlučio da tri stranice ostaju odvojene i da se ništa ne spaja, pa je taj preduvjet povučen. Cijena je zapisana i prihvaćena: svaka dizajnerska odluka provodi se tri puta.

mijenja redoslijed

Dorada email plugina

Postoji kao spec od 28. kolovoza s pet koraka. Dva su gotova (sadržaj po varijanti, naslov). Ostaju tri: barkod i privici sele s pravila na predložak, pravila na svih 12 tipova uz replyTo, i tri ekrana sučelja.

spec 28. 8., 3 od 5

Dorada email predložaka

Isti spec, prvi korak — varijanta postaje jedinica sadržaja, pa se tekst i naslov uređuju po varijanti umjesto po tipu. Izvan opsega su namjerno ostali uređivanje HTML-a u Dashboardu i graditelj poruka povlačenjem.

isti spec

Import sa starog sustava

Katalog je već uvezen i skripta je ponovljiva: 1.547 proizvoda, 3.117 slika, atributi, zalihe, opisi, cijene po kanalu i SEO polja. Ono što nedostaje su blog i stranice — 32 stranice i 14 postova u Elementoru, stavka 37 — i završni re-import na dan prelaska, koji nikad nije odvrćen na svježim podacima.

stavka 6 · ostaje 37

CMS za pojedinačne shopove

Bila je stavka 38 — jedan kod, tokeni po kanalu. Povučeno 1. rujna: tri stranice ostaju odvojene i ništa se ne spaja. Dizajn time nema preduvjeta, a cijena je da se svaka promjena izvodi tri puta.

stavka 38

Marketing mailovi

Stavka 27. Danas šalju tri preklapajuća sustava — Newsletter Plugin (4.500 pretplatnika na HR), FunnelKit na SI i Mailchimp — svi kroz Brevo. Email Studio ih izrijekom drži izvan opsega, pa je ovo odvojen posao. Ključno: sele se i dokazi privole, ne samo adrese.

stavka 27

Kako je ovo provjereno

Prolaz 17. rujna 2026. Gate pokrenut u 11:05: ./flora check → 3.324 server u 324 datoteke + 3 + 17 + 75 + 78 = 3.497, izlazni kod 0. Stanje grana: git rev-list --count origin/main..main → 7, git branch --no-merged main → samo spike grana, git worktree list → 10, git status --short → tri neupisane datoteke (odluka o podjeli repozitorija i njezin zapis u indeksu). Slike mjerene čitanjem zaglavlja 400 nasumičnih datoteka iz static/assets/source, ne procjenom. Nije provjereno: udio dnevnika uvoza u bazi — razvojni Postgres danas ne radi, pa ta brojka ostaje tuđe mjerenje.

Prolaz 16. rujna 2026. Gate je pokrenut iznova u ovom stablu, i to dvaput — prije i poslije spajanja E16 — s istim ishodom: ./flora check → u 21:20 3.301 server u 322 datoteke + 3 lan-env + 17 legal-tooling + 75 HR + 78 SI = 3.474, izlazni kod 0 (u 18:10 je bilo 3.464; razlika je deset testova uz GLS dijaloge), uz astro check bez ijedne greške na oba storefronta. Brojka se nije pomaknula jer E16 mijenja flora-base/sync-nexus, čiji su testovi PHP i ne ulaze u ovaj gate. Stanje grana izmjereno je dvaput, u 17:40 i u 18:10, jer je između dva mjerenja druga sesija spojila E16 u main. Vrijedi drugo: git rev-list --count origin/main..main → 19, a nakon tvog pusha u 18:16 (reflog: update by push na e2a8f08e) 0 — main i origin/main stoje na istom commitu, git branch --no-merged main → samo worktree-spike-cms-keystatic-sveltia, git worktree list → 10 stabala, git status --short → čisto. Brojke: 1.093 commita (72 danas), 94 migracije, 30 vlastitih plugina u 36 unosa plugins arraya, 57 ruta storefronta. Sitemap i robots.txt provjereni su u izvoru i u lokalnom buildu (1.650 / 1.637 URL-ova), a nepostojanje CI-ja potvrđeno izostankom .gitlab-ci.yml i .github/workflows. Nije provjereno u ovoj sesiji: PHP testovi nexusa i WP plugina — na ovom računalu nema php, te brojke dolaze iz Dockera u prijašnjim sesijama.

Ništa u ovom dokumentu nije preuzeto iz flora-atlas/stanje/ na riječ. Brojke dolaze iz repozitorija: git log za timeline i commite, ls nad flora-core/src/plugins i migrations, find nad rutama storefronta.

Testovi su pokrenuti, ne pretpostavljeni: ./flora check, ponovno 10. rujna → 2.623 server u 289 datoteka + 17 legal-tooling + 26 HR + 29 SI storefront = 2.593, izlazni kod 0. Jučer je ovdje pisalo 2.251 (8. 9.); porast su testovi otvrdnjavanja blagajne, izvora narudžbe i dosega postavki, te dizajnovi testovi storefronta koji su ušli spajanjem.

Stanje grana je izmjereno istog dana: git rev-list --count origin/main..main → 104, git branch --no-merged main → samo worktree-spike-cms-keystatic-sveltia, git worktree list → 9 stabala, git status --short → jedna datoteka (package-lock.json). Sudar migracije 1790000067000 je sad vidljiv običnim ls nad flora-core/src/migrations: dvije datoteke s istim prefiksom.

Dva nalaza su izmjerena uživo na tvom Vendureu (:3000, Shop API, samo čitanje): search(groupByProduct) s tokenom SI kanala → 865, isti upit s languageCode=hr → 1.535, a uzorak tri SI proizvoda pokazuje naziv na sl i varijantu samo na hr. Ispravak 15. rujna: iz te je posljednje opažaje izveden pogrešan zaključak da prijevodi varijanti gase indeks. Ne gase — vidi A5; uzrok je bio kanal iz kojeg se reindeks pokreće, i riješen je. Koji mailovi nose ljudski broj: grep orderNumber nad flora-core/static/email/templates/*/body.hbs → 2 od 14; grep orderCode → 5.

PDV 5 %, pravi podaci prodavatelja i testni set od 25 narudžbi dolaze iz zapisa današnje sesije, gdje su dokazani izlazom naredbi (taxRate: 5 na pravoj narudžbi; 10 od 10 adresnica ok). Ova ih sesija nije ponovila, jer bi pisala u tvoju razvojnu bazu.

Kadenca rada spaja dva izvora: git log i zapise sesija — za 8. i 9. rujna prebrojane su ljudske poruke iz 9 zapisa promijenjenih od 8. rujna (57 u 6 sesija, pa 52 u 4); ranije brojke stoje kako su izmjerene 5. i 8. rujna, 61 iz Claude Codea (uključujući osam odvojenih radnih stabala) i 86 iz Codexa, filtrirano po stvarnoj radnoj mapi, ne po tekstu. Oba izvora imaju rupe: commit ne nastaje kad se planira ili provjerava, a dio sesija je obrisan iz povijesti razgovora. Zato prazan stupac znači da traga nema, a ne da rada nije bilo. Statistika pokriva new-start i plant-garden-demo; rasadnik-infrastructure i n8n su izvan nje, po odluci vlasnika.

Tvrdnje o nedostajućoj R2 pohrani, CI-ju, stagingu i deployu su negativni nalazi — potvrđeni pretragom, a ne izostankom spomena u dokumentaciji. Sitemap i robots.txt su 15. rujna prestali biti na tom popisu; taj je redak ostao stajati jedan dan dulje nego što je bio istinit, i to je razlog zašto se svaka tvrdnja ovdje mjeri iznova.