Skip to main content
Powrót do strony głównej

Historia zmian

Najnowsze aktualizacje i ulepszenia Heilo.io

Fundamenty Conversation Mode, asynchroniczne joby nagrań i utwardzenie stagingu

  • Fundamenty Conversation Mode: Dodano pierwszy bezpieczny produkcyjnie szkielet do odbierania rozmów na żywo z nagraniem dwukanałowym, osobnym webhookiem zakończenia połączenia, podsumowaniem rozmowy i fallbackiem do sekretarki, gdy nikt nie odbierze.
  • Asynchroniczne przetwarzanie nagrań: Webhooki Twilio od nagrań odpowiadają teraz szybko, a ciężka transkrypcja i analiza AI są wykonywane przez kolejkę jobów z trwałą deduplikacją delivery.
  • Fundamenty shared demo routingu: Resolver demo potrafi już zapisać wybrany locale i regułę routingu na poziomie połączenia, co przygotowuje system pod współdzielone numery bez ponownego zgadywania języka po zakończeniu calla.
  • Bezpieczniejszy staging rehearsal: Dodano dedykowany workflow testowy dla Twilio i Supabase oraz ręczny przycisk "Process queued jobs" dla środowisk nieprodukcyjnych, gdzie Vercel Cron nie uruchamia jobów automatycznie.
  • Porządki UX i stabilności: Krótszy timeout conversation poza produkcją, opcjonalny komunikat o nagrywaniu poza production, cleanup strony changelog, aktualizacje locale metadata oraz kilka poprawek dashboardu i admina po dzisiejszym wdrożeniu.

Monitor zdrowia systemu, auto-generowanie audio potwierdzenia i poprawki głosu

  • Panel System Health: Nowy panel admina monitorujący wszystkie kluczowe zewnętrzne usługi — kredyty ElevenLabs, saldo Twilio (US1 i IE1), Stripe, baza Supabase, Gemini AI i Resend. Sprawdzenia uruchamiają się automatycznie co godzinę przez Vercel cron ze wskaźnikiem zielona/czerwona kropka w pasku bocznym admina.
  • Auto-generowanie audio potwierdzenia: Wiadomości potwierdzające nagranie są teraz automatycznie generowane przez ElevenLabs TTS, dopasowując język rozmówcy i wybrany głos.
  • Poprawki stabilności głosu: Naprawiono błąd przekazywania ID głosów ElevenLabs do Amazon Polly, dodano prosody wrapper SSML dla naturalnego brzmienia potwierdzeń oraz zapewniono natychmiastowy zwrot TwiML po nagraniu.
  • Baza wiedzy: Heilo vs Fonio.ai: Nowy artykuł porównawczy w językach EN, PL, DE i ES opisujący kluczowe różnice między platformami Heilo.io i Fonio.ai.
  • Poprawki błędów: Naprawiono przycisk personifikacji admina (tokenHash), zaktualizowano dane faktyczne fonio.ai w artykułach bazy wiedzy.

Harmonogram powitań, locale US i redesign przekierowań

  • Harmonogram powitań: Konfiguracja różnych wiadomości powitalnych dla poszczególnych slotów czasowych w ciągu dnia. Nazwij każdy slot i przypisz unikalny głos ElevenLabs.
  • Nagrywanie w formacie WAV: Nagrania są teraz konwertowane do formatu WAV dla wyższej jakości. Nowy odtwarzacz audio pozwala odsłuchać powitanie przed zapisem.
  • Locale US (en-US): Pełne wsparcie amerykańskiego angielskiego z instrukcjami przekierowania połączeń dla operatorów AT&T, T-Mobile i Verizon.
  • Redesign instrukcji przekierowania: Kody QR inline dla kodów USSD, logo H na kodach QR, *004* jako główna opcja przekierowania oraz zwijane indywidualne kody przekierowań.
  • Rozbudowa bazy wiedzy: 29 nowych artykułów i 59 istniejących rozszerzonych do standardu Google Helpful Content we wszystkich 4 językach. Klikalny spis treści, linki wewnętrzne między artykułami i klaster artykułów o poczcie głosowej.
  • Opinie klientów: Nowa sekcja social proof na stronie głównej z prawdziwymi opiniami klientów w zoptymalizowanej kolejności perswazyjnej.
  • Natywna terminologia: Zastąpiono techniczne terminy AI/KI/IA natywnym brandingiem smart/Heilo we wszystkich 4 językach na stronie głównej.
  • Optymalizacja SEO: Targetowanie słów kluczowych w sekcji hero, poprawione metadane, nawigacja breadcrumbs oraz konfiguracja robots/noindex dla niepublicznych stron.
  • Demo per locale: Zarządzanie połączeniami demo per locale z dedykowanym wyborem głosu ElevenLabs dla każdego wariantu językowego.
  • Bezpieczeństwo i poprawki: Zapobieżenie enumeracji adresów email przy rejestracji, naprawiono nadpisywanie locale demo przy testowaniu własnego powitania oraz poprawiono logowanie błędów w panelu admina.

4 języki, tłumaczenie transkryptów i optymalizacja SMS

  • Niemiecki i hiszpański: Pełne wsparcie de-DE i es-ES w całej aplikacji, wiadomościach SMS, przetwarzaniu AI i artykułach bazy wiedzy.
  • Tłumaczenie transkryptów: Automatyczne tłumaczenie transkryptów rozmów na język użytkownika przez Gemini AI — zawsze czytasz transkrypty w swoim języku.
  • Rozbudowa bazy wiedzy: 6 nowych artykułów zoptymalizowanych pod GEO, opublikowanych w 4 językach z metadanymi autora i datami publikacji.
  • Demo audio: Interaktywny odtwarzacz demo na stronie głównej — posłuchaj jak działa Heilo przed rejestracją.
  • Krótsze linki SMS: Nowe przekierowania /c/ i /d/ skracają SMS-y o ~45 znaków, zmniejszając koszty segmentów Twilio.
  • NIP przy płatności: Zbieranie numeru identyfikacji podatkowej podczas checkout w Stripe dla faktur firmowych.
  • Ochrona przed halucynacjami AI: Walidacja rozmiaru bufora i wykrywanie krótkich nagrań zapobiegają generowaniu fałszywych danych przez Gemini na pustym lub uszkodzonym audio.
  • Poprawka SMS: Naprawiono błąd, przez który SMS powiadomienia do właściciela wyświetlał kod locale zamiast fragmentu transkryptu.

Upgrade ElevenLabs v3 i audio dla potwierdzenia nagrania

  • ElevenLabs v3: Migracja do modelu eleven_v3 z 1,806+ tagami audio ([professional], [warmly], [pause:X]) dla naturalnej ekspresji emocjonalnej i 68% mniej błędów przy liczbach i symbolach.
  • Komponent AudioTagPicker: Nowy interfejs z 40+ przyjaznymi przyciskami tagów audio do łatwego wstawiania w wiadomości powitalne.
  • Zwiększenie limitu znaków: Limit wiadomości powitalnej rozszerzony z 1,000 do 5,000 znaków dla dłuższych, bardziej szczegółowych przywitań.
  • Upload audio dla potwierdzenia: Dodano pełną obsługę wgrywania własnych plików audio dla wiadomości potwierdzenia nagrania (wcześniej tylko tekst w trybie audio upload).
  • Stabilność głosu: Zwiększono domyślną stabilność ElevenLabs z 0.8 do 1.0 dla bardziej spójnej jakości głosu w wygenerowanych przywitaniach.
  • Jakość kodu: Naprawiono ostrzeżenie ESLint (setState w useEffect) w komponencie MessageEditor dla czystszego, bardziej utrzymywalnego kodu.

Redesign strony głównej, zarządzanie telefonami i baza wiedzy

  • Usprawnienia strony głównej: Dodano śledzenie UTM, sekcję social proof, wizualne karty funkcji z mockupami SMS, sekcję "Dla kogo jest Heilo?", oraz poprawiono SEO z danymi strukturalnymi.
  • Baza wiedzy: Opublikowano 10 artykułów BOFU po polsku i angielsku o poczcie głosowej, asystentach AI i zarządzaniu rozmowami — rebrand z "AI" na "Heilo" w całej aplikacji.
  • Zarządzanie telefonami: Dodano usuwanie numerów, transfer między kontami przy ponownej weryfikacji, przeprojektowano interfejs przekierowań z persistencją w bazie, oraz selektor kierunkowego z walidacją.
  • Powiadomienia dla admina: Zaimplementowano powiadomienia email przez Resend dla nowych rejestracji, weryfikacji telefonów i płatności.
  • Naprawa przechwytywania połączeń: Tworzenie rekordów połączeń na starcie rozmowy (nie tylko po nagraniu), aby przechwycić wszystkie przychodzące połączenia.
  • Lokalizacja AI: Wymuszono wyjście AI zgodne z językiem użytkownika dla podsumowań i tematów rozmów — AI respektuje preferencje językowe (polski vs angielski).
  • Optymalizacja mobile: Zoptymalizowano widok konfiguracji telefonu dla urządzeń mobilnych.
  • Naprawa statusu telefonu: Rozwiązano niespójność statusu telefonu i obsługę znacznika verified_at.
  • Migracja Supabase: Migracja z przestarzałego API cookies (.get()/.set()) do .getAll()/.setAll() dla obsługi cookies w SSR.
  • Schematy Twilio: Migracja z przestarzałego .passthrough() do z.looseObject() dla walidacji webhooków.

Jeden plan cenowy, potwierdzenie e-mail i bezpieczeństwo

  • Jeden plan cenowy: Uproszczono cennik do jednego planu 49 zł/mies. na potrzeby walidacji rynku — jaśniejsza propozycja wartości, szybszy onboarding.
  • Potwierdzenie e-mail: Rejestracja wymaga teraz weryfikacji adresu e-mail przed przyznaniem dostępu, co zapobiega tworzeniu fałszywych kont.
  • Wzmocnienie bezpieczeństwa: Naprawiono krytyczne luki (open redirect, obejście webhooków), włączono RLS na wszystkich tabelach bazy danych i przeprowadzono pełny audyt kodu (a11y, architektura, UX).
  • Google Ads: Dodano śledzenie konwersji, tagi remarketingowe i baner zgody na ciasteczka do pomiaru kampanii marketingowych.
  • Strona główna: Przeprojektowano sekcję hero i karty problemów na mobile, dodano nawigację sekcji z linkami kotwicowymi.
  • Baza wiedzy i18n: Przetłumaczono wszystkie artykuły bazy wiedzy na angielski, dodano linkowanie wewnętrzne między artykułami i naprawiono indeksowanie stron w Google.
  • Stripe Live Mode: Przygotowano integrację Stripe do płatności produkcyjnych z kluczami API live.
  • Panel admina: Dodano kolumnę "Ostatnie logowanie" w tabeli użytkowników dla lepszego śledzenia aktywności.

Redesign ustawień, dopracowanie rozmów i treści

  • Redesign ustawień: Przeprojektowano strony SMS, Firma i Powitanie z nowoczesnym układem wielu kart dla lepszej organizacji i czytelności.
  • Tabela rozmów: Uproszczono akcje tabeli i ulepszono układ kolumn dla czystszego zarządzania połączeniami.
  • Obrazy OG artykułów: Dodano dynamiczne obrazy Open Graph dla wszystkich artykułów bazy wiedzy, poprawiając podgląd linków w mediach społecznościowych.
  • Strona główna: Zastąpiono ogólną sekcję hero zrzutami interfejsu Heilo.io pokazującymi rzeczywisty produkt.
  • Polska terminologia: Zastąpiono żargon marketingowy ('leady') naturalnymi polskimi terminami w całej aplikacji.

Baza wiedzy, SEO i animacje strony głównej

  • Baza wiedzy: Nowa sekcja z artykułami zoptymalizowanymi pod SEO na temat VoIP, wirtualnej centrali i odzyskiwania nieodebranych połączeń — ze streszczeniami TL;DR, sekcjami FAQ i danymi strukturalnymi JSON-LD.
  • Optymalizacja SEO: Dodano dane strukturalne JSON-LD, dynamiczną mapę witryny, robots.txt z regułami dla botów AI oraz optymalizację metadanych na wszystkich stronach.
  • Animacje strony głównej: Animacje wejścia i ujawniania przy przewijaniu Motion.dev na stronie głównej dla bardziej angażującego pierwszego wrażenia.
  • Aktualizacja cennika: Zaktualizowano plany subskrypcji do poziomów 50/100/200 zł ze zmienionymi zestawami funkcji.
  • Czat Crisp: Połączono tekst czatu na stronie kontaktu bezpośrednio z osadzeniem Crisp dla natychmiastowej obsługi klienta.
  • Narzędzia deweloperskie: Dodano Husky + lint-staged do automatycznej kontroli jakości kodu przed commit i push.

Przełącznik języka, jakość i stabilność UI

  • Redesign przełącznika języka: Nowoczesny dropdown z flagami i poprawnym pozycjonowaniem w panelu.
  • Zapisz jako kontakt: Dodano przycisk 'Zapisz jako kontakt' bezpośrednio w widoku podzielonym dla szybszego zarządzania kontaktami.
  • Przycisk ładowania: Nowy komponent LoadingButton z formatowaniem walut i telefonów uwzględniającym lokalizację.
  • Stabilność produkcyjna: Poprawa jakości kodu, bezpieczeństwa typów i naprawa błędów budowania w całej platformie.
  • Kanban i wykresy: Refaktoryzacja funkcji narzędziowych, zmiana nazw wykresów dla przejrzystości i poprawki interakcji kart Kanban.

Konfigurowalne wiadomości, analityka i narzędzia admina

  • Potwierdzenie nagrania: Konfigurowalna wiadomość potwierdzająca odtwarzana dzwoniącemu po zostawieniu wiadomości, z obsługą podglądu audio.
  • Dashboard analityczny: Dodano wykres "Wszystkie połączenia na dzień", poprawiono wizualizację danych historycznych (brak luk w datach) i dodano opisy osi.
  • Ulepszenia Admina: Dodano możliwość usuwania użytkowników bezpośrednio z listy w panelu administratora.
  • Poprawki stabilności: Przywrócono brakujące funkcje lokalizacji (formatowanie walut/telefonów) i naprawiono błędy budowania spowodowane aktualizacjami zależności.

Redesign ustawień, podgląd SMS i poprawki z audytu

  • Redesign ustawień: Wydzielono SMS na osobną stronę ustawień, przeniesiono konto i subskrypcję do popovera profilu, zastąpiono branding AI marką Heilo.
  • Podgląd SMS jako telefon: Przeprojektowano podgląd SMS jako realistyczną makietę telefonu i usunięto upsell dedykowanego numeru.
  • Szablony powitań: Dodano możliwość zapisywania i przechowywania szablonów wiadomości powitalnych w bazie danych.
  • Poprawki Kanban i hydratacji: Naprawiono niedopasowania hydratacji w hooku localStorage, ulepszono cele kliknięcia kart Kanban wzorcem stretched-link.
  • Audyt kodu: Dodano limit 5MB na upload audio, zastąpiono typy any właściwymi interfejsami, dodano walidację data URL i poprawiono obsługę błędów w akcjach serwerowych.
  • Wyszukiwanie kontaktów: Ulepszono wyszukiwanie rozmów o dopasowanie nazw kontaktów.

Bezpieczeństwo, typy i dopracowanie designu

  • Ochrona CSRF: Dodano ochronę CSRF (double-submit cookie) do wszystkich endpointów mutacji API z automatyczną obsługą tokenów po stronie frontendu.
  • Bezpieczeństwo typów: Wyeliminowano ~25 typów any w kodzie, zastępując je właściwymi interfejsami i obsługą błędów z unknown.
  • Centralizacja lokali: Ujednolicono konfigurację lokali w jednym źródle prawdy, usuwając powtórzone wartości z 5 plików.
  • Formatowanie lokalne: Dodano formatCurrency i ulepszono formatowanie dat/telefonów z uwzględnieniem ustawień lokalizacji użytkownika.
  • Refaktoryzacja WelcomeMessage: Wydzielono logikę formularza do dedykowanego hooka useWelcomeMessageForm, redukując komponent z 608 do 209 linii.
  • Redesign kart KPI: Zaktualizowano karty KPI na dashboardzie do spójnego, minimalistycznego designu — delikatne cienie i zaokrąglone rogi zamiast ciężkich kolorowych obramowań.

Refaktoryzacja Frontend & Wydajność

Główne ulepszenia 'pod maską' w zakresie komponentów UI i zarządzania stanem.

Logowanie Google, Magic Link i poprawki błędów

  • Logowanie Google: Dodano przyciski 'Kontynuuj z Google' na stronach logowania i rejestracji.
  • Magic Link: Dodano logowanie bez hasła — podaj email i otrzymaj link do logowania.
  • Naprawa błędu: Naprawiono błędy 'No intl context found' na wszystkich stronach Ustawień (56+ wystąpień w Sentry).
  • Analityka: Zintegrowano Vercel Analytics do śledzenia ruchu i użycia.
  • Dostarczalność emaili: Skonfigurowano Resend SMTP dla niezawodnych emaili transakcyjnych (potwierdzenia rejestracji, magic linki).

Poprawki Audytu Mobilnego

  • Użyteczność Mobilna: Naprawiono pływający widżet onboardingu, który zasłaniał treść na telefonach. Jest teraz domyślnie zwinięty.
  • Tłumaczenia: Przetłumaczono hasło 'Always listening' na 'Zawsze słuchamy' w kokpicie i na stronie głównej.
  • Poprawki Układu: Ulepszono odstępy i układ stron Rejestracji, Logowania i Ustawień na urządzeniach mobilnych.

Strona główna i poprawki onboardingu

  • Sekcja powitań i głosów: Nowa sekcja na stronie głównej prezentująca opcje powitań — napisz własne, nagraj się sam lub użyj profesjonalnych głosów.
  • SMS z systemu: Strona główna prezentuje teraz możliwość wysyłania SMS bezpośrednio z Heilo.
  • Poprawka onboardingu: Widget pokazuje teraz realny postęp na podstawie stanu konta zamiast zakodowanych wartości.
  • Poprawka modala powitalnego: Naprawiono przycisk 'Let's Go', który nie zamykał modala. Zmieniono nazwę na 'Smart Receptionist'.
  • Przycisk Ulepsz: Wyświetla komunikat błędu gdy płatność się nie powiedzie zamiast nic nie robić.
  • Tagline marki: Dodano 'Always listening' obok logo na stronie głównej.

Kontakty i redesign szczegółów połączenia

  • System kontaktów: Pełny moduł kontaktów — automatyczne uzupełnianie z historii połączeń, strona szczegółów kontaktu z historią połączeń i SMS, klikalne wiersze tabeli.
  • Zapisz jako kontakt: Przycisk do zapisania dzwoniącego jako kontakt, dostępny na stronach szczegółów kontaktu i połączenia.
  • 1 numer = 1 nazwa: Tabela kontaktów jest jedynym źródłem prawdy dla nazw dzwoniących — edycja kontaktu aktualizuje nazwę we wszystkich widokach.
  • Temat jako tytuł strony: Szczegóły połączenia pokazują teraz rozpoznany temat rozmowy jako nagłówek zamiast nazwy dzwoniącego.
  • Poprawka sidebara mobilnego: Naprawiono literówkę CSS (transtonetranslate) w 7 plikach, która blokowała animację wysuwania sidebara.
  • Numer telefonu w SMS: Powiadomienia SMS zawierają teraz zawsze numer telefonu dzwoniącego jako osobną linię, nawet gdy nazwa jest rozpoznana.
  • Nazwa kontaktu w SMS: Powiadomienia SMS używają teraz zapisanej nazwy kontaktu zamiast 'nieznany dzwoniący' dla znanych kontaktów.
  • Poprawka historii SMS: Strona szczegółów połączenia pokazuje teraz wszystkie SMS-y dla numeru telefonu dzwoniącego, nie tylko dla pojedynczego połączenia.
  • Zakładki kontaktu: Strona szczegółów kontaktu pokazuje teraz połączenia i historię SMS w zakładkach obok siebie.

Redesign kalkulatora oszczędności

  • Nowy wygląd kalkulatora: Jasny, nowoczesny design zamiast ciemnego panelu — karty z zaokrągleniami, gradient w tytule, lżejsze slidery.
  • Czytelna narracja dla biznesu: Panel wynikowy: strata → koszt rozwiązania → zysk netto miesięcznie.
  • Koszt rozwiązania: Nowa sekcja porównująca stratę miesięczną z kosztem pakietu Starter (50 zł/mies.).
  • Czystszy kod: Usunięto kartę ROI, uproszczono strukturę komponentu i tłumaczenia.

Poprawki produkcyjne i aktualizacja kalkulatora

  • Krytyczna poprawka produkcyjna: Rozwiązano błąd "Server Components render" poprzez wycofanie zmian w konfiguracji Webpack next-intl i migracji klienta Sentry.
  • Stabilność Sentry: Przywrócono stabilną konfigurację Sentry, aby zapewnić niezawodne śledzenie błędów.
  • Aktualizacja kalkulatora oszczędności: Zwiększono zakresy suwaków do 500 000 PLN i 300 nieodebranych połączeń tygodniowo na podstawie opinii użytkowników.
  • Poprawka systemu budowania: Rozwiązano niezgodność typów NextRequest w handlerze nagrań.
  • Audyt architektury: Zweryfikowano stabilność architektury API v1 i jakość kodu.

Rebranding wizualny i naprawa middleware

  • Nowy system kolorów — paleta heilo-blue + coral, migracja gray→slate w całej aplikacji
  • Gradientowy kolor tekstu logo Heilo.io na wszystkich stronach
  • Usunięcie ikony H oraz podpisu Business AI z logo
  • Naprawa middleware Next.js — przywrócenie routingu locale i autoryzacji

Poprawki mobilne, tłumaczenie logowania i reset hasła

  • Wycentrowany przełącznik widoku: Przełącznik tabela/board jest teraz prawidłowo wycentrowany na ekranach mobilnych.
  • Usunięty scroll poziomy: Naprawiono niechciany scroll poziomy na liście rozmów w widoku mobilnym.
  • Submenu ustawień na mobile: Menu nawigacji ustawień jest teraz w pełni widoczne po otwarciu paska bocznego na urządzeniach mobilnych.
  • Strona kontaktu: Dodano nową stronę kontaktu — koniec z błędem 404 przy klikaniu Kontakt w stopce.
  • Tłumaczenie strony logowania: Strona logowania jest teraz w pełni przetłumaczona na język polski.
  • Strona resetowania hasła: Dodano stronę resetowania hasła z integracją Supabase — koniec z błędem 404 na 'Nie pamiętasz hasła?'.
  • Porządki w kodzie: Usunięto 24 nieużywane pliki migracji SQL, 12 zdeprecjonowanych proxy API, legacy endpoint reprocess, stronę przekierowania dashboard i artefakty buildowe. Zaktualizowano wszystkie odniesienia /dashboard na /calls.

Link demo, dopracowanie UI i internacjonalizacja changelogu

  • Publiczny link demo: Dodano publiczny link do połączenia demo, aby potencjalni klienci mogli wypróbować platformę bez rejestracji.
  • Ujednolicone style formularzy: Ujednolicono style pól formularzy w ustawieniach firmy dla spójnego wyglądu wszystkich pól wejściowych.
  • Poprawka tunelu Sentry: Naprawiono tunel Sentry zwracający błędy 405.
  • Aktualizacja URL: Zaktualizowano zakodowany na sztywno URL z vercel.app na www.heilo.io w całej platformie.
  • Uproszczenie timera zapytań: Uproszczono komponent timera zapytań dla lepszej przejrzystości i usunięto branding AI ze stron publicznych.
  • Poprawka widgetu onboardingu: Naprawiono widoczność widgetu onboardingu na stronach publicznych.
  • Odstępy mobilne UI: Dopracowano odstępy i rozmiary czcionek w widokach mobilnych rozmów dla bardziej kompaktowego układu.
  • Internacjonalizacja changelogu: Pełna internacjonalizacja strony changelogu — teraz dostępna zarówno po polsku jak i po angielsku.

Poprawka regionu Twilio IE1 i konfiguracja testów

  • Wsparcie regionu IE1: Naprawiono walidację webhook signature dla numeru Twilio w regionie IE1 — system teraz próbuje zarówno główny auth token jak i IE1 auth token.
  • Konfigurowalny Test Override: Przeniesiono logikę testowego przekierowania numerów do zmiennych środowiskowych (ENABLE_TEST_OVERRIDE, TEST_OVERRIDE_INCOMING_NUMBER, TEST_OVERRIDE_TARGET_USER_PHONE).
  • Demo User Fallback: Dodano konfigurowalny DEMO_USER_ID jako fallback dla nierozpoznanych połączeń bezpośrednich.
  • Poprawka Middleware: Naprawiono kolejność wykonywania middleware API — withAuth uruchamia się teraz poprawnie przed withAdmin.
  • Model Gemini: Zmiana z wycofanego gemini-2.0-flash-exp na stabilny gemini-2.0-flash.

Refaktoryzacja API i ujednolicona obsługa błędów

  • Wersjonowanie API: Nowa struktura endpointów /api/v1/ z pełną kompatybilnością wsteczną.
  • Result Type Pattern: Wprowadzenie ujednoliconej obsługi błędów inspirowanej Rust — typ Result<T> dla jawnego zarządzania błędami.
  • Standardowe odpowiedzi API: Wszystkie endpointy zwracają spójny format {success, data/error, meta}.
  • System Middleware: Kompozycyjne middleware dla auth, walidacji, rate-limiting i obsługi błędów.
  • Walidacja Zod: Rozbudowane schematy walidacji dla wszystkich endpointów.
  • Warstwa Repository: Nowe repozytoria dla phones i subscriptions z ujednoliconym dostępem do danych.
  • Warstwa Serwisów: Refaktoryzacja billing-service i phone-verification-service.
  • Klasa AppError: Strukturyzowane błędy z kodami, statusami HTTP i szczegółami.

System Paywall i optymalizacje wydajności

  • Paywall dla Trial: Użytkownicy na darmowym planie mogą przeglądać szczegóły do 10 rozmów. Po przekroczeniu limitu wyświetlany jest paywall z przyciskiem upgrade.
  • Banner użycia: Nowy banner na liście rozmów pokazujący wykorzystanie limitu (np. "14 / 10 rozmów") z paskiem postępu.
  • Split View Paywall: Blokada szczegółów również w widoku podzielonym (pionowym/poziomym).
  • TanStack Query: Wdrożenie cachowania po stronie klienta — szybsze przejścia między stronami bez ponownego ładowania danych.
  • Pasek postępu: Elegancki pasek postępu (styl YouTube/GitHub) podczas nawigacji zamiast skeleton loading.
  • Paginacja: Lista rozmów wyświetla 20 elementów na stronę z pełną nawigacją (pierwsza, poprzednia, następna, ostatnia). Numer strony zapisywany w URL (?page=2).
  • Polskie tłumaczenia: Pełna lokalizacja komponentów paywall i usage banner.

UI zoptymalizowany dla użytkowników biznesowych

Kompleksowe odświeżenie UI skierowane do profesjonalistów 35+: większe czcionki, większe obszary dotykowe (44-48px), lepszy kontrast kolorów i bardziej przestronne układy we wszystkich komponentach, w tym kartach Kanban, tabelach rozmów, paskach filtrów i widokach mobilnych.

Polska lokalizacja i poprawki stabilności

  • Polska lokalizacja: Kompletne tłumaczenie Ustawień, Szczegółów rozmów i instrukcji technicznych.
  • Refaktoryzacja nawigacji: Przeniesienie Archiwum i Kosza do dedykowanych tras (/calls/archive) z poprawką podświetlania paska bocznego.
  • UI ustawień telefonu: Przeprojektowany układ na skupione sekcje (Podłączone telefony, Numer firmowy, Konfiguracja SMS).
  • Tabela rozmów: Zoptymalizowane szerokości kolumn Status i Akcje, aby zapobiec ściskaniu.
  • Poprawki błędów: Rozwiązano problem z widocznością formularza "Dodaj telefon" i błędy budowania.

Funkcja kosza i poprawki UX

  • Kosz i miękkie usuwanie: Dodano pełne wsparcie "Kosza" (miękkie usuwanie) z funkcją przywracania. Usunięte elementy są bezpieczne przez 30 dni.
  • Grupy nawigacji: Rozmowy teraz zorganizowane w zakładki "Przychodzące", "Archiwum" i "Kosz" z aktualizowanymi licznikami.
  • Lepsze układy: Przyciski akcji w "Szczegółach rozmowy" uporządkowane w czysty układ siatki.
  • Akcje Kanban: Dodano szybki przycisk "Kosz" bezpośrednio na kartach Kanban.
  • Porządki statusów: Całkowite usunięcie statusu "Odrzucony" — istniejące odrzucone rozmowy przeniesione do Kosza.

Dopracowanie UI i modernizacja architektury

  • Refaktoryzacja Split View: Przeniesiono przełącznik układu do dedykowanego menu "Widok" na pasku filtrów dla lepszej dostępności.
  • Zapamiętywanie układu: Przełączniki Tablica/Lista i Split View są teraz zapisywane i przywracane automatycznie.
  • Spójność UI: Ujednolicono wysokość i styl wszystkich kontrolek filtrów (Status, Jakość, Data) dla dopracowanego wyglądu.
  • Ulepszenie stopki: Przeniesiono linki stopki na lewą stronę, aby zapobiec nakładaniu się z widgetami onboardingu.
  • Gotowość na Next.js 16: Migracja middleware do proxy.ts zgodnie z nadchodzącymi konwencjami Next.js.
  • Poprawka widoku tablicy: Rozwiązano problem, w którym dashboard KPI był ukryty w trybie Kanban przy aktywnym Split View.

Analityka i efektywność pracy

  • Przeprojektowana analityka: Zastąpiono karty siatki dużymi, pionowymi wykresami rocznymi dla MRR, ARR, Churn i LTV.
  • Szybka nawigacja: Dodano przyciski Następny/Poprzedni w szczegółach rozmowy ze skrótami klawiaturowymi w stylu Gmail (J/K).
  • Śledzenie historii: Analityka umożliwia teraz pełną 365-dniową analizę trendów dla wszystkich kluczowych metryk.
  • Podpowiedzi pomocy: Dodano odniesienie do skrótów klawiaturowych bezpośrednio na pasku nawigacji.
  • Poprawki stabilności: Rozwiązano problemy z kontekstem i18n dla solidnej obsługi błędów na wszystkich stronach.

Kompleksowy panel analityczny

  • Zaawansowane metryki: Nowy kompleksowy dashboard śledzący Pozyskiwanie, Aktywację, Przychody, Retencję i Zaangażowanie.
  • Inteligencja przychodów: Śledzenie MRR, ARR, ARPU i konwersji Trial-to-Paid w czasie rzeczywistym.
  • Aktywacja użytkowników: Monitorowanie wskaźników ukończenia onboardingu i czasu do pierwszego połączenia w celu optymalizacji ścieżki użytkownika.
  • Analiza retencji: Śledzenie wskaźnika churn i szacowanie Wartości Życiowej Klienta (LTV).
  • Trendy zaangażowania: Dzienni/Tygodniowi/Miesięczni aktywni użytkownicy (DAU/WAU/MAU) i trendy liczby połączeń.
  • Kompatybilność z React 19: Zaktualizowano przepływy uwierzytelniania do nowego hooka useActionState, rozwiązując ostrzeżenia konsolidacji.

Globalny zasięg i wzmocnienie bezpieczeństwa

  • Pełna internacjonalizacja (i18n): Kompletne wsparcie dla języka polskiego i angielskiego na całej platformie.
  • Przełącznik języka: Nowy natychmiastowy przełącznik języka na pasku bocznym z zapamiętywaniem preferencji użytkownika.
  • Wzmocnienie bezpieczeństwa: Audyt polityk RLS w celu zapobiegania nieautoryzowanemu dostępowi do danych (ścisłe polityki Insert/Update).
  • Bezpieczne nagłówki: Wdrożono nagłówki bezpieczeństwa HTTP klasy motoryzacyjnej (HSTS, X-Frame-Options) w celu ochrony przed XSS i Clickjacking.
  • Weryfikacja Rate Limiting: Potwierdzono solidną ochronę przed atakami brute-force poprzez Twilio Verify i limity Supabase Auth.

Refaktoryzacja architektury i jakość kodu

  • Scentralizowana konfiguracja: Wszystkie zmienne środowiskowe teraz dostępne przez getConfig() zamiast rozproszonych wywołań process.env — łatwiejsze utrzymanie i testowanie.
  • Warstwa serwisów: Wyekstrahowano logikę głosową i transkrypcji do dedykowanych serwisów (lib/services/) dla lepszej separacji odpowiedzialności (Voice, Twilio Audio, Gemini Processing).
  • Zunifikowany pipeline audio: Scentralizowano logikę pobierania audio i analizy AI, eliminując duplikację w 3 różnych endpointach.
  • Architektura frontendu: Refaktoryzacja CallsView i KanbanBoard na modularne komponenty z custom hookami (useCallsFilters, useKanbanDnD) dla lepszej utrzymywalności.
  • Warstwa Repository: Pełna integracja CallRepository w endpointach admina i webhookach Twilio, scentralizowana logika dostępu do danych.
  • Bezpieczeństwo typów: Rozszerzone definicje ProcessedTranscript i schematy Zod dla ściślejszej walidacji w całym stosie.
  • Wzorzec Repository: Wprowadzono lib/repositories/ z CallRepository i ProfileRepository dla spójnego dostępu do bazy danych.
  • Middleware Twilio: Nowy wrapper withTwilioWebhook eliminuje powtarzalny kod walidacji webhooków w handlerach tras.
  • Refaktoryzacja webhooków: Kompletne przepisanie webhooka recording-complete z użyciem nowego wzorca Service/Repository, znacząco poprawiając niezawodność i testowalność.
  • Moduł stałych: Wyekstrahowano magiczne liczby i ciągi znaków do lib/constants/ dla spójnej konfiguracji.
  • Skeleton Loading: Dodano stany ładowania z komponentami skeleton dla stron /calls i /calls/[id].
  • Architektura UI: Dekompozycja CallRow na skupione komponenty (CallRowNotes, CallRowStatus) i przeniesienie logiki do wielokrotnego użytku w hooku useCallActions.
  • Konfiguracja: Scentralizowano ustawienia modeli AI w lib/config.ts, usuwając zakodowane na sztywno wartości z serwisów.
  • Dokumentacja architektury: Kompleksowy architecture.md dokumentujący strukturę systemu, przepływ danych i wzorce integracji.

Optymalizacja mobilna i rekomendacje AI

  • Ustawienia mobilne: Wszystkie strony ustawień zoptymalizowane na mobile — formularze, przyciski i układy teraz poprawnie układają się na małych ekranach.
  • Czytelne rekomendacje AI: Nowe binarne rekomendacje z emoji: ✅ Twój temat, 🔥 Duży temat, ❌ Nie Twój temat, ⚠️ Sprawdź sam.
  • Rozpoznany temat: Przeniesiono sekcję tematu nad nagranie dla lepszej widoczności, zmieniono nazwy kolumn dla przejrzystości.
  • Pełny widok transkrypcji: Usunięto obcinanie tekstu z listy rozmów — widać pełną treść tematu i transkrypcji.
  • Twilio SID: Pełny identyfikator rozmowy teraz widoczny w Szczegółach rozmowy dla komunikacji z obsługą klienta.
  • Zmienione nazwy sekcji: "Informacje o kliencie" → "Dobre pytania do zadania podczas rozmowy".

Dopracowanie UI i optymalizacje desktopowe

  • Układ tabeli na desktopie: Zoptymalizowana tabela rozmów z kompaktowymi formatami dat, inteligentniejszymi szerokościami kolumn i zwiększoną czytelnością treści.
  • Ultra-kompaktowe karty KPI: Zmniejszono rozmiar kart metryk na desktopie, aby zmaksymalizować przestrzeń ekranu dla listy rozmów.
  • Ulepszenia transkrypcji mobilnej: Zwiększona widoczność transkrypcji na kartach mobilnych (do 6 linii) dla lepszego kontekstu na pierwszy rzut oka.
  • Układ widgetów: Zamieniono widgety Onboardingu i Crisp — Czat teraz unosi się nad listą kontrolną Onboardingu po prawej stronie.
  • Akcja oddzwaniania: Zmieniono nazwę "Zadzwoń" na "Oddzwoń" na mobile dla przejrzystości.

SMS do dzwoniących i ulepszenia onboardingu

  • SMS potwierdzający dla dzwoniącego: Naprawiono wysyłanie SMS do dzwoniących — wiadomości są teraz prawidłowo wysyłane po transkrypcji wiadomości głosowej.
  • Konfigurowalny szablon SMS: Nowa strona ustawień do personalizacji wiadomości potwierdzającej z podglądem na żywo.
  • Przyjazne numery referencyjne: SMS pokazuje teraz łatwe do odczytu numery referencyjne (RRRRMMDD-XXXX) zamiast UUID.
  • Rozszerzone logowanie: Dodano logi diagnostyczne dla funkcji SMS do śledzenia statusu dostarczenia w logach Vercel.
  • Widget onboardingu: Ulepszony widget z linkami nawigacyjnymi, ukryty na stronach publicznych (logowanie, rejestracja).
  • Zmiana kolejności onboardingu: "Skonfiguruj przekierowanie połączeń" pojawia się teraz przed "Dodaj informacje o firmie" dla lepszego przepływu.

Bezpieczeństwo infrastruktury i stabilność

  • Strukturyzowane logowanie: Wdrożono scentralizowany system logowania z integracją Sentry dla lepszego śledzenia błędów.
  • Wzmocnienie infrastruktury: Skonsolidowano logikę webhooków i poprawiono obsługę błędów dla integracji Twilio (w tym wsparcie regionu IE1).
  • Stabilność auth: Naprawiono pętle "Invalid Refresh Token" przez automatyczne czyszczenie przestarzałych sesji w middleware.
  • Refaktoryzacja komponentów: Zoptymalizowano strony Ustawień, dzieląc duże formularze na skupione, łatwe w utrzymaniu mikro-komponenty.
  • Poprawki środowiskowe: Rozwiązano rozbieżności URL localhost vs produkcja dla powiadomień SMS.

Gotowość do uruchomienia i obserwowalność

  • Integracja Sentry: Śledzenie błędów, monitorowanie wydajności i replay sesji dla lepszego debugowania.
  • Widget Crisp Chat: Czat na żywo z automatyczną identyfikacją użytkownika — widzimy Twój email i firmę, gdy piszesz.
  • Analityka PostHog: Analityka produktowa, nagrywanie sesji i śledzenie zachowań użytkowników.
  • Strony prawne: Dodano Regulamin i Politykę Prywatności ze zgodnością z GDPR/RODO.
  • Lejek sukcesu: Dashboard KPI z liczbą rozmów, zakwalifikowanymi leadami i potencjalną wartością.
  • Integracja Stripe: Kompletny system subskrypcji z Checkout, Portalem Klienta i Webhookami dla automatycznych aktualizacji statusu.
  • Powiadomienia SMS: Otrzymuj natychmiastowe alerty SMS o nowych leadach biznesowych, w tym podsumowanie AI i ocenę leada.
  • Tour onboardingowy: Lista kontrolna Szybki Start dla nowych użytkowników — podłącz numer, przetestuj połączenia i włącz powiadomienia.
  • Zapamiętywanie filtrów: Filtry zapisywane w URL — przejdź do szczegółów rozmowy i wróć bez utraty widoku.
  • Zunifikowane filtry: Wyszukiwanie, Status, Jakość — filtry działają w widoku Listy i Kanban.
  • Wsparcie Ctrl+Click: Otwórz szczegóły rozmowy w nowej karcie przeglądarki.

Dopracowanie wizualne i poprawki UX

  • Miernik czasu odpowiedzi: Przeprojektowany "Czas odpowiedzi" na kompaktowy, jednorzędowy miernik z czytelnymi etapami nastroju (od Doskonały do Krytyczny).
  • Wizualizacja Drag & Drop: Przeciąganie Kanban w stylu Trello z pełnymi obrazami duchów kart i placeholderami.
  • Przekierowanie admina: Administratorzy są teraz automatycznie kierowani do Panelu Admina po zalogowaniu.
  • Optymalizacja nagłówka: Kompaktowy nagłówek "Rozmowy" w celu zaoszczędzenia pionowej przestrzeni ekranu.
  • Podgląd wiadomości: Szybki podgląd powitania po kliknięciu za pomocą nowego popovera.

Obsługa połączeń bezpośrednich i narzędzia admina

  • Ulepszona identyfikacja połączeń bezpośrednich: System rozpoznaje teraz właścicieli dzwoniących ze zweryfikowanych numerów.
  • Dodano impersonację admina: Super administratorzy mogą teraz logować się jako użytkownicy w celu rozwiązywania problemów.
  • Naprawiono problemy z numerem przekierowania: Zaktualizowano domyślną logikę numeru przekierowania dla wszystkich nowych kont.
  • Zaktualizowano kody USSD: Teraz z podwójną gwiazdką (np. **61*) dla lepszej kompatybilności.

Gemini 3.0 i dopracowanie promptów

  • Aktualizacja silnika AI do Gemini 3.0 Flash (Preview) dla szybszej i dokładniejszej analizy.
  • Dopracowane prompty "Co robić dalej" dla porad w naturalnym języku (np. "Oddzwonić i umówić się na spotkanie").

Śledzenie zapytań i czas odpowiedzi

  • Pilność zapytania: Animowany pasek postępu pokazujący pilność zapytania z efektem migotania dla nowych zapytań.
  • Czas odpowiedzi: Śledzi jak szybko odpowiadasz na nowe zapytania z wizualnym wskaźnikiem.
  • Zmiana kolejności kart: Przeciągaj karty pionowo w kolumnach Kanban, aby priorytetyzować zapytania.
  • Szybka zmiana statusu: Przycisk jednego kliknięcia do przesunięcia zapytań do następnego etapu.
  • Ochrona Brute-Force: Rate limiting dla prób logowania w celu zapobiegania atakom.
  • Telefon jako główny: Numer telefonu dzwoniącego wyświetlany prominentnie, nazwa jako drugorzędny identyfikator.

Wiadomości powitalne i inteligencja adresowa

  • Podgląd głosu: Przetestuj swoje powitanie przed zapisaniem z podglądem audio.
  • Ekstrakcja adresów AI: Automatyczne wyodrębnianie adresu klienta, miasta i kraju z transkrypcji.
  • Obliczanie odległości: Pokazuje przybliżoną odległość między Twoim biurem a lokalizacją klienta.
  • Filtrowanie po dacie: Filtruj rozmowy wg Dzisiaj, Tydzień, Miesiąc, Kwartał lub Rok.
  • Kolumna żądanej usługi: Nowa kolumna w widoku tabeli pokazująca, jakiej usługi potrzebuje każdy dzwoniący.
  • Edycja inline: Automatyczne zapisywanie per pole w ustawieniach Konta i Szczegółach rozmowy.
  • Dropdown szablonów: Szybkie szablony wiadomości dla szybszych odpowiedzi.

🚀 Uruchomienie Heilo.io

  • Platforma bazowa: Heilo.io z integracją Twilio do nagrywania i przekierowywania połączeń.
  • Analiza połączeń AI: Zasilana przez Gemini 1.5 Flash do automatycznej transkrypcji i oceny zapytań.
  • Dashboard Kanban: Pełnowymiarowa tablica z kolumnami Nowe, Negocjacje, Przygotowanie oferty i Zakończone.
  • Własne powitania: Spersonalizowane wiadomości poczty głosowej per firma.
  • System designu 2026: Nowoczesne UI z glassmorphizmem, gradientami i płynnymi animacjami.
  • Audyt bezpieczeństwa: Walidacja webhooków i wzmocnienie uwierzytelniania.
  • Zakładki ustawień: Zorganizowane w sekcje Konto, Firma, Przekierowanie i Subskrypcja.
  • Szczegóły rozmowy: Edytor notatek, zarządzanie zadaniami i podsumowania napędzane AI.