# BRIEF DLA DAMIANA — przewodnik operacyjny na spotkanie z zarządem > **Cel spotkania:** pokazać, że VILMAL to działający majątek technologiczny z udowodnioną walidacją rynkową — nie prototyp ani prezentacja obietnic. Wszystkie liczby w materiałach są zmierzone narzędziami na żywym repo (21.09.2026); każdą można obronić komendą lub zapisem w bazie. > > **Materiały towarzyszące:** `docs/PREZENTACJA_ZARZAD.html` (rzutnik / Ctrl+P do PDF), `docs/RAPORT_AUDYTOWY_SYSTEMU.md` (pełny due diligence z surowymi logami), `docs/PRZEWODNIK_NEGOCJACYJNY_B2B.md` (model retainer + success fee). --- ## 1. Ścieżka prezentacji na żywo (krok po kroku) Przygotuj przed spotkaniem: `npm run dev` z katalogu `vilmal/` (backend :8788 + frontend :5174). Zaloguj się swoim kontem approvera. Miej pod ręką drugą kartę ze sklepem i terminalem. ### Krok 0 — sprostowanie oczekiwań (30 s, słownie) „Pokażę system, który już raz wykonał pełną robotę za nas: z surowych zdjęć z hali zrobił 34 warianty narożnika z kompletem zdjęć i wysłał je do katalogu sprzedażowego. Pokażę też, ile kosztowałoby zbudowanie tego od zera i ile oszczędza na kolekcji." ### Krok 1 — panel: przestrzeń produktu OSKAR (`#/produkty/oskar`) Pokaż po kolei, w tempie „jedno zdanie na zakładkę": - **Materiały** — surowe zdjęcia z hali + karta tkaniny + snapshot strony dostawcy. Zaznacz: „oryginały są niezmienne, każdy plik ma SHA-256 — dowód pochodzenia". - **Fakty** — tabela faktów z trójstanem `potwierdzone / niepotwierdzone / nieznane`. Kluczowe zdanie: „system nie zgaduje — co nie jest potwierdzone przez producenta, jest jawnie oznaczone. Dlatego treści w sklepie są zgodne z rzeczywistością". - **Galeria** — 8 ról ujęć (hero, packshoty, bok, tył, spanie, pojemnik, detal, rysunek wymiarowy). Pokaż porównanie kandydata ze źródłem i wersje. - **Warianty** — matryca 17 odcieni × L/P × 8 ról. To jest „wow moment": **272 ujęcia wariantowe wygenerowane lokalnie w ~55 minut bez fotografowania 34 mebli**. - **Dokumenty** — karta produktu PDF i rysunek wymiarowy wygenerowane z potwierdzonych faktów. - **Oferta** — treści kanałowe (Allegro PL), podgląd paczki, snapshot z 0 blockerów, stan eksportu z zgodami i wsadami. ### Krok 2 — nadzór jakości i orkiestrator - **Maciuś** — wbudowany kontroler jakości: 1 166 werdyktów w bazie, werdykt doradczy przypięty do SHA obrazu; „AI ocenia, człowiek decyduje". - **Orkiestrator** — „następny krok i dlaczego" na regułach: pokazuje rekomendacje z blokerami; operacje przygotowują podgląd (diff + SHA źródeł), decyzję podejmuje approver, wykonanie jest idempotentne. - **Zadania** (`#/zadania`) — trwała kolejka: zapis przed pracą zewnętrzną, wznowienie po request_id = brak podwójnych kosztów generacji. ### Krok 3 — dowód w kanale sprzedaży - W panelu BaseLinkera (magazyn 62360) pokaż **produkt `690927524` (VIL-OSK-TIL)** i rozwiniętą listę **34 wariantów** `VIL-OSK-{L|P}-TIL*`. Kliknij 2–3 warianty — każdy ma własną galerię 8 zdjęć. - Powiedz wprost: „to poszło z systemu 16 września — rodzic + 34 warianty, 272 zdjęcia, odczyt zwrotny 34/34 bez niezgodności. Artefakt w repo: `data/exports/base-oskar-2026-09-16.json`". - Sklep Bazarowy Świat: produkty są pozycjami katalogowymi; wystawienie oferty = kroki operatorskie w BL (kategoria, GPSR, wysyłka). Nie obiecuj „jest już na Allegro" — pokaż dokładnie, gdzie jest granica. ### Krok 4 — liczby na rzutniku (PREZENTACJA_ZARZAD.html) Przejdź 5 slajdów w tej kolejności: metryki → dowód operacyjny → silnik → bezpieczeństwo → finanse. Na slajdzie 5 zostań dłużej — to jedyny slajd, który zarząd zapamięta. --- ## 2. Rozgraniczenie odpowiedzialności | Obszar | Odpowiada system (audyt to potwierdza) | Decyzja należy do zarządu/właściciela | |---|---|---| | Dane produktu | Trójstan faktów, źródło, historia zmian — brak zgadywania | Zatwierdzenie faktów (wymiary, certyfikaty, gramatura), decyzja o kotwicy odcienia 83 vs 86 | | Media | Wersjonowanie, provenance, coverage/delta, werdykty Maciusia | Akceptacja estetyczna ujęć, decyzja o masterze hero | | Eksport | Outbox, zgoda na dokładny SHA, read-back, pojednanie po SKU | Zgoda na zapis zewnętrzny, wybór konta/zakresu, publikacja ofert | | Koszty AI | Bramka kosztowa, jawny unitCost, request_id | Limity budżetu, zgoda na płatne partie generacji | | Ceny/EAN/marketing | Przechowuje i wersjonuje to, co zatwierdzono | Ustalenie cen, EAN, polityki promocyjnej — system ich nie wymyśla | | Kanały | Translator kontraktu `addInventoryProduct`, media kanałowe | Parametry kategorii Allegro, GPSR, strategia marketplace | **Zasada obrony:** system odpowiada za integralność, powtarzalność i dowodowość procesu. Człowiek odpowiada za fakty biznesowe i publikację. To nie jest ograniczenie — to celowa architektura (Human-in-the-Loop), która chroni firmę przed publikacją niepotwierdzonych danych. --- ## 3. Obrona wyliczeń audytowych ### „Skąd 2,1–3,1 mln zł wartości?" - To **koszt odtworzenia**, nie „sprzedażowa" wycena firmy. Model COCOMO II (standard Boehma, używany w due diligence i wycenach nakładów): `PM = 2,94 × KSLOC^E`, E = 0,91 + 0,01×ΣSF. - Wejście nie jest z sufitu: **25,17 KSLOC zmierzone przez scc** (industry-standard licznik, wynik w załączniku). Wyceniamy też testy (3 237 LOC) i narzędzia QA (4 762 LOC), bo bez nich systemu nie da się utrzymać — konserwatywnie wyłączono dokumentację i dane. - Wynik: 90,5–102,1 roboczomiesięcy × 152 h = **13 756–15 515 h**. - Stawka 150–200 zł/h B2B to rynek senior fullstack/Python-CV w Polsce (Raport Płacowy IT 2025: senior B2B 130–160 zł/h; No Fluff Jobs: mediana 21,8–27,5 tys. zł/mc; specjalizacja CV w górnej części). - Cross-check niezależny: narzędzie scc z wbudowanym COCOMO organic daje **$865 735** — górny kraniec naszego przedziału. Dwie metody, zbieżny wynik. ### „Skąd oszczędność 0,45–0,98 mln zł rocznie?" - Matryca na model: 17 tkanin × 2 strony × 8 ujęć = 272 wizualizacje. - Ścieżka 3D wg polskich cenników (BearStudio, Rooven, Pogotowie3D): model 2–5 tys. + 8 scen + **272 × 150–300 zł** = **46–99 tys. zł i 4–8 tygodni** na model. Fotografia 34 fizycznych wariantów jest ekonomicznie nieracjonalna (trzeba je wyprodukować). - VILMAL: regeneracja 272 ujęć **zmierzona na 55 minut** na GTX 1650, koszt compute $0; zostaje ~1 dzień QA operatora. - ×10 modeli rocznie → ~0,5–1 mln zł oszczędności. To kwota przyrostowa — nie wymaga wiary w żadne AI, bo matryca OSKAR-a już istnieje i siedzi w BaseLinkerze. ### „Dlaczego 7 dni prac ma być warte miliony?" - COCOMO liczy koszt **odtworzenia efektu przez typowy zespół komercyjny** — z discovery, architekturą, iteracjami jakości silnika CV (było ich 7 wersji) i testami. AI-przyspieszona realizacja jest faktem tego projektu; wartość leży w wyniku (działający, przetestowany system z walidacją rynkową), nie w liczbie spędzonych godzin. - Jeśli zarząd naciska „ai to zrobiło szybko, więc tanio" — odwróć: „właśnie dlatego ten sam efekt kosztuje nas ułamek ceny rynkowej — to jest przewaga, którą sprzedajemy fabryce, nie wada wyceny". --- ## 4. Pytania, które mogą paść — i uczciwe odpowiedzi | Pytanie | Odpowiedź | |---|---| | „Czy to już sprzedaje?" | Produkty są w katalogu BaseLinker (pozycje katalogowe, 34/34 zweryfikowane odczytem). Wystawienie ofert Allegro to świadome kroki operatorskie w panelu BL — parametry kategorii wybiera się tam, nie przez API. Wideo use/care odroczono decyzją właściciela — to jedyny blocker publikacji docelowej. | | „Co jeśli BaseLinker/Allegro zmieni API?" | Integracja jest za adapterem (`BaseAdapter`) + outboxem z pojednaniem po SKU — zmiana kontraktu dotyka jednej warstwy, nie domeny. Zapis jest zawsze po zgodzie na SHA i read-backu. | | „Czy zdjęcia wariantów oszukują klienta?" | Nie — warianty dziedziczą geometrię 1:1 z realnego sfotografowanego egzemplarza, zmieniany jest wyłącznie odcień z potwierdzonej próbki tkaniny (Lab, kotwica iluminantu). To ta sama praktyka co rendery 3D w katalogach, tyle że bazą jest prawdziwy mebel, nie model CAD. | | „A jak AI się myli?" | Trzy linie obrony: (1) raport coverage/delta per ujęcie, (2) Maciuś — werdykty QA przypięte do SHA, (3) decyzja człowieka w matrycy. 1 675 decyzji i 1 166 werdyktów w bazie to działający proces, nie teoria. | | „Co z sekretami i dostępem?" | Token BaseLinkera tylko w zmiennych środowiskowych serwera — nie w kodzie, logach, UI. Sesje + CSRF + Zod strict, role operator/approver/admin, adapter zapisu domyślnie wyłączony. Przed wdrożeniem: rotacja sekretów i konta operacyjne (etap 8). | | „Ilu ludzi to obsługuje?" | Docelowo 1 operator (pracownik fabryki, bez znajomości AI) + approver. Orkiestrator prowadzi po „następnym kroku i dlaczego". | | „Gdzie jest haczyk / co nie działa?" | Odpowiedz z listy ryzyk raportu — to buduje zaufanie: recolor kalibrowany na OSKAR-ze (walidacja na innych bryłach = kolejny krok), outbox czeka na pierwszy zapis live (dotąd poszedł skrypt operacyjny), znany defekt hero do decyzji, wdrożenie serwerowe (backup/HA) to etap 8. | | „Dlaczego nie SaaS gotowy z rynku?" | Brak produktu, który robi: rekolor wariantów na lokalnym GPU (koszt krańcowy ~0) + trójstan faktów z provenance + snapshot-driven eksport do BL z pojednaniem. To jest właśnie majątek — niche pipeline, nie generyczny PIM. | --- ## 5. Checklista przed spotkaniem - [ ] `npm test` i `pytest` świeżo uruchomione (200/200) — mieć terminal pod ręką - [ ] `npm run dev` działa, login approvera sprawdzony - [ ] Panel BaseLinkera otwarty na produkcie 690927524 - [ ] `docs/PREZENTACJA_ZARZAD.html` otwarte w Chrome, wydruk PDF przetestowany (Ctrl+P → A4) - [ ] Telefon/hotspot zapasowy, jeśli Wi-Fi padnie — cała demo-ścieżka działa lokalnie - [ ] Liczby do cytowania z głowy: **27 167 LOC · 200/200 testów · 34/34 wariantów w BL · 272 ujęcia w 55 min · 2,1–3,1 mln zł odtworzenia · ~0,5–1 mln zł/rok oszczędności przy 10 modelach** ## 6. Czego NIE mówić (anty-laurek) - Nie „system generuje zdjęcia AI" — mów „rekolor na zatwierdzonych masterach, lokalny silnik CV, zero kosztu per wariant". - Nie „w pełni zautomatyzowane" — mów „Human-in-the-Loop: AI przygotowuje, człowiek zatwierdza; to celowe i sprzedawalne jako kontrola jakości". - Nie „gotowe na każdy mebel" — mów „udowodnione na wymagającym narożniku; kalibracja kolejnych brył to planowany etap". - Nie obiecuj „jutro na Allegro" — publikacja wymaga kroków operatorskich + wideo use/care (odroczone decyzją właściciela).