- Zmiana nazwy: "Norda Biznes Hub" → "Norda Biznes Partner"
- Aktualizacja modelu AI: Gemini 2.0 Flash → Gemini 3 Flash
- Zachowano historyczne odniesienia w timeline i dokumentacji
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Flash is free and fast - best default for users
- Prevents accidental Pro usage and costs
- Users can still switch to Pro manually if needed
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Created nordagpt-icon.svg combining Norda compass + INPI circuit motif
- Navy blue background with green AI chip center
- Yellow north indicator (Norda brand color)
- Updated header icon from robot emoji to new SVG
- Updated empty state icon
- Changed example questions to be more relevant:
- 'Szukam partnera do projektu budowlanego'
- 'Kto w Izbie zajmuje się marketingiem?'
- 'Poleć firmę z dobrymi opiniami Google'
- 'Co nowego na forum?'
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Show both models (Flash free, Pro premium) with visual distinction
- Add pricing section with costs and limits
- Update history timeline with today's changes
- Update benefits section with current features
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- costUsd was a string, causing 'toFixed is not a function' error
- Added parseFloat() for cost and parseInt() for latency
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Changed from AIApiCost to AIAPICostLog (actual model in database.py)
- Changed total_cost_usd to total_cost (actual field name)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- GOOGLE_GEMINI_API_KEY_FREE: klucz Free tier dla Flash (darmowy)
- GOOGLE_GEMINI_API_KEY: klucz Paid tier dla Pro (płatny)
- GeminiService automatycznie wybiera klucz na podstawie modelu
- Flash pricing ustawiony na $0.00 (Free tier)
- UI pokazuje Flash jako "Darmowy"
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
UI:
- Dropdown wyboru modelu: Flash (szybki, $0.05) vs Pro (analiza, $0.20)
- Wyświetlanie kosztu miesięcznego w headerze
- Badge odpowiedzi pokazuje: model, czas, koszt
Backend:
- Endpoint /api/chat/settings obsługuje model i monthly_cost
- NordaBizChatEngine przyjmuje parametr model
- Koszt zapisywany w tech_info odpowiedzi
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Tryb głęboki: wymaga rozbudowanej analizy, list, kontekstu
- Tryb szybki: zwięzłe odpowiedzi z linkami
- Dodano przykład odpowiedzi w trybie głębokim
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Naprawiono URL w kontekście (był /forum/topic/X, prawidłowy /forum/X)
- Dodano instrukcje o linkach do forum, B2B, news w system prompt
- Model MUSI używać URL z pola "url" przy odpowiedziach o forum
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Skrzynka mailowa nie istnieje jeszcze - wyłączono klikalny link
i dodano informację dla użytkowników.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Dodano style CSS dla forum-link (fiolet), news-link (zieleń), b2b-link (żółty)
- formatMessage() obsługuje teraz linki wewnętrzne (/forum/, /news/, /b2b/)
- Badge thinking pokazuje opis jakościowy (np. "dogłębna analiza z weryfikacją")
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Forum: treść tematów, autorzy, odpowiedzi, linki, popularność
- B2B: pełne opisy ogłoszeń, budżet, autor
- News: opis, AI streszczenie, słowa kluczowe, linki
Dodano:
- Audyty GBP (Google Business Profile) - oceny, recenzje
- Audyty SEO (PageSpeed) - wyniki dla stron WWW
- Baza wiedzy ZOPK - elektrownia jądrowa, offshore wind, infrastruktura
- Zasada prywatności - nie podawać ukrytych danych kontaktowych
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Wszystkie firmy z pełnymi danymi (nie tylko 50)
- Osoby w firmach (zarząd, wspólnicy, udziały)
- Tematy forum
- Wydarzenia
- Ogłoszenia B2B
- Rekomendacje
- Aktualności ZOPK
- Social media
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- New admin page /admin/model-comparison for comparing AI responses
- Side-by-side comparison: old model (2.5 Flash-Lite) vs new (3 Flash)
- Questions from real conversations (Artur Wiertel, Maciej Pienczyn)
- Run simulation button to generate new responses
- Added link in admin menu under "Porównanie modeli"
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Changed AI model from Gemini 2.5 Flash-Lite to Gemini 3 Flash Preview
- Added Gemini 3 models (3-flash, 3-pro) to GEMINI_MODELS config
- Updated GEMINI_PRICING with current 2026 prices
- Updated chat UI: badge, model info modal, specs, timeline
- Benefits: 7x better reasoning, thinking mode, 78% SWE-bench
Cost estimate: ~$40/month at 1000x current usage (Tier 1)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Dodano stałą globalną COMPANY_COUNT_MARKETING w app.py
- Dodano do context_processor jako COMPANY_COUNT
- Zaktualizowano szablony: index.html, chat.html, landing.html, release_notes
- Jedno miejsce do zmiany gdy Izba zaktualizuje cel
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Health monitoring:
- Dodano: /settings/privacy, /settings/blocks, /settings/2fa
- Dodano: /wiadomosci, /wiadomosci/wyslane, /wiadomosci/nowa
- Dodano: /edukacja, /admin/insights
Release notes:
- Połączono v1.18.0 i v1.19.0 w jeden wpis (28 stycznia 2026)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Zmiany w kategoriach:
- Utworzono "Budownictwo ogólne" (9 firm) i "Produkcja ogólna" (13 firm)
- Utworzono "Usługi finansowe" (banki, kantory, ubezpieczenia)
- Rozdzielono "Księgowość" od "Usługi finansowe"
- Przeniesiono INPI i SEO PARTNER do "IT i Technologie"
- Dodano kategorię "Do uzupełnienia" (żółta, 27 firm bez opisu)
Zmiany UI:
- Sortowanie podkategorii malejąco po liczbie firm
- Poprawka podświetlania aktywnej kategorii
- Dropdown blokowania: domena emaila przy duplikatach nazw
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Podkategorie są teraz sortowane od największej do najmniejszej
liczby przypisanych firm (od lewej do prawej).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1. Kategoria "Do uzupełnienia":
- Żółty kolor (wyróżnia się od innych)
- Pozycja z prawej strony (margin-left: auto)
2. Dropdown blokowania użytkowników:
- Wyświetla domenę emaila w nawiasie: "Jan Kowalski (gmail)"
- Rozwiązuje problem duplikatów imion/nazwisk
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Główne kategorie nie są już domyślnie podświetlone na niebiesko
- Tylko aktywna kategoria (Wszystkie LUB wybrana główna) jest podświetlona
- Hover nadal działa dla wszystkich kategorii
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Nowy układ filtrów:
- Rząd 1: Wszystkie + kategorie główne (sortowane wg liczby firm)
- Rząd 2: Podkategorie (pojawiają się po kliknięciu głównej)
Zachowanie:
- Wszystkie → pokazuje wszystkie firmy
- Kategoria główna → pokazuje firmy z głównej + podkategorii
- Podkategoria → pokazuje tylko firmy z tej podkategorii
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Landing page i chat timeline - cel marketingowy 150 podmiotów
zamiast dynamicznej liczby z bazy (111).
Zmieniono również terminologię:
- "firm członkowskich" → "podmiotów gospodarczych"
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Dodano pełne wsparcie dla ikon na wszystkich urządzeniach:
- apple-touch-icon.png (180x180) - iOS "Dodaj do ekranu głównego"
- favicon-192.png, favicon-512.png - Android PWA
- favicon-16.png, favicon-32.png - PNG fallback dla starszych przeglądarek
- site.webmanifest - PWA manifest z theme_color #233e6d
- meta theme-color - kolor paska adresu na mobile
Gwiazda Nordy z żółtym wskaźnikiem północy (różni się od Izby
dla łatwego rozróżnienia zakładek).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Stworzono SVG favicon z kompasem/gwiazdą Nordy
- Żółty wskaźnik północy, białe ramiona, granatowe tło
- Zgodne z brandingiem Norda Biznes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Usunięto 'Firmy' z menu dla niezalogowanych (bez sensu bez logowania)
- Przesunięto 'Strefa Gościa' na prawo od 'Rejestracja'
- Nowy układ: Zaloguj | Rejestracja | Strefa Gościa
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Strefa Gościa ma sens tylko dla niezalogowanych osób, które chcą
odwiedzić stronę Izby. Zalogowani użytkownicy nie potrzebują tego linku.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Nowe funkcje w v1.18.0 (28 stycznia 2026):
- Prywatność: ukrywanie telefonu/emaila, preferencje kontaktu
- Blokowanie kontaktów (bidirectional)
- Hierarchiczne kategorie firm
- Platforma Edukacyjna
- Panel Insights dla adminów
- RODO: sanityzacja danych wrażliwych w czacie
- Security: izolacja sesji czata
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Automatyczne wykrywanie i maskowanie danych wrażliwych w czacie:
- PESEL (walidacja sumy kontrolnej)
- Numery kart kredytowych (algorytm Luhn)
- IBAN (konta bankowe)
- Hasła (detekcja kontekstowa)
- Dowody osobiste i paszporty
NIE wykrywa (zgodnie z wymogami):
- NIP (publiczne dane biznesowe)
- Adresy email (celowo podawane)
API dla adminów: POST /api/admin/test-sanitization
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
ZMIANY BEZPIECZEŃSTWA:
1. Defense in depth w NordaBizChatEngine:
- send_message() - wymaga user_id i weryfikuje właściciela rozmowy
- get_conversation_history() - opcjonalna walidacja user_id
- Logowanie prób nieautoryzowanego dostępu
2. Anonimizacja w panelu admina:
- Usunięto wyświetlanie treści zapytań użytkowników
- Zastąpiono statystykami: długość, kategoria tematyczna
- Zachowano AI responses (publiczne dane firm)
3. Ochrona prywatności:
- Użytkownicy NIE mogą zobaczyć zapytań innych użytkowników
- Admini widzą tylko zanonimizowane statystyki
- Audit logging dla prób nieautoryzowanego dostępu
Odblokowuje zadanie #10 (Baza wiedzy Norda GPT).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Użytkownicy mogą teraz wskazać preferowane kanały komunikacji:
- Email, telefon, wiadomości w portalu (toggle)
- Dodatkowa notatka (np. najlepsze godziny kontaktu)
Migracja: 031_add_contact_preferences.sql
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>