Aktualizace produktu

Poznámky k vydání - 26. dubna 2026

Bartłomiej Głowacki · CAIO, vedoucí AI & výzkumu a vývoje
Poznámky k vydání - 26. dubna 2026

Před 19 dny jsme vydali velké vydání s diagnostickým modulem a analýzou prozódie. Od té doby tým prosadil dalších 295 změn - a nejsou malé. V tomto vydání můžete nahrát ad-hoc sezení ještě předtím, než pacient dorazí, vaše poznámky se slučují s prací AI a přepisem vedle sebe ve třech sloupcích, veřejný profil terapeuta je zpět v plné síle a mobilní aplikace má nyní tmavý motiv. Pod kapotou jsme prošli zpřísněním podle SOC 2 / HIPAA, DDD auditem a plnou pseudonymizací dat pacientů na straně AI.

💚 Díky týmu, který toto vydání dotáhl - hlášeními, testy, kódem i trpělivostí:

  • Bohdan - ad-hoc sezení, limity balíčků a ochranná lhůta, DDD audit, faktury KSeF, desítky oprav (SCRUM-756, 815, 1267, 1268, 1276, 1280-1290, 1293, 1309-1316, 1353-1357, 1366, 1388, 1391, 1392)
  • Bartek - třícestné sloučení, 9 samostatných analýz KBT, kognitivní zkreslení, počítadlo sezení balíčku (SCRUM-1266, 1320, 1338, 1368-1375, 1385, 1386)
  • Ewa Cylwik / Ewa - Beck PDF, druhé sezení AITS pro téhož pacienta, tmavý motiv a prázdný stav na mobilu, vícejazyčný mailing, barvy UI, jedinečnost e-mailu pacienta (SCRUM-883, 898, 902, 1089, 1094, 1297, 1304, 1307, 1319)
  • Joanna - opakující se kalendář, skrytí Zoomu, včasné zrušení, sebereflexe místo hodnocení kvality sezení (SCRUM-789, 874, 918, 919, 1005)
  • Plus Bartlomiej za kognitivní zkreslení a počítadlo sezení, které se stalo základem nového modelu předplatného

1. ⚡ Ad-hoc sezení - nahrávejte ještě předtím, než pacient dorazí

Pokud jste někdy museli rychle zapnout nahrávání - protože pacient přišel neohlášen, protože jde o jednorázovou konzultaci, protože jde o schůzku s někým, kdo ještě není ve vaší evidenci - nový modul ad-hoc sezení řeší celý tento problém.

  • Tlačítko rychlého nahrávání ve webovém dashboardu, v PWA na telefonu a v aplikaci MAUI - jedno kliknutí spustí nahrávání ještě předtím, než vyplníte údaje pacienta
  • AdHoc Inbox - vyhrazená schránka pro nepřiřazená nahrávání, dokud se nerozhodnete, kam patří
  • AssignPatientModal - přiřaďte nahrávku existujícímu pacientovi nebo rovnou ze schránky vytvořte nového
  • Pokračovat / znovu vstoupit do místnosti - dokončete nahrávání sezení, které jste začali dříve
  • Uchování osiřelých + automatické dokončení - sezení nepřiřazená po dobu X dní se automaticky uzavřou, aby schránka zůstala přehledná
  • Video „Začít bez pacienta” - v místnosti LiveKit můžete zahájit sezení, aniž by kolidovalo s existujícím pacientem; ad-hoc sezení pak putuje do schránky

Sekce je skrytá za kódem PromptyAI v Nastavení - ve výchozím stavu vypnutá, pro uživatele, kteří chtějí nejdřív vidět zbytek. Navrhl a dodal Bohdan.

2. 📊 Limity balíčků a ochranná lhůta - transparentní předplatné

Předplatné prošlo úplnou revizí. Staré plány Starter/Standard jsou deaktivovány, nahrazeny plány Start / Practice / Pro - dimenzovanými podle skutečného objemu sezení za měsíc.

  • Počítadlo sezení na dashboardu - vidíte, kolik sezení jste tento měsíc využili a kolik jich v balíčku zbývá
  • E-maily o limitu - automatická oznámení při 80% a 100% využití
  • Výzva k upgradu - jakmile dosáhnete limitu, dostanete jemný návrh změny plánu místo tvrdého zablokování
  • Ceny ze Stripe + slevy - cena, kterou vidíte v aplikaci, přichází přímo ze Stripe s aplikovanými aktivními slevami (kód beta testera nevyprší)
  • Nativní zrušení předplatného - zrušte přímo v aplikaci, bez nutnosti psát podpoře
  • 14denní ochranná lhůta - pokud platba selže, máte 14 dní přístupu pouze k vlastnímu účtu (bez náhledů pacientů), s e-maily v T+0 a T+13. Ke skutečné ztrátě dat dojde až po dvou týdnech
  • Banner předplatného - čistá zpráva v horní části aplikace bez prázdného pruhu mezi menu a upozorněním
  • Simulátor limitu sezení - v panelu PromptyAI je testovací režim, kde vidíte, jak se aplikace chová při plně vyčerpaném balíčku

Společná práce Bartlomieje (počítadlo a limity, SCRUM-1266) a Bohdana (předplatné, ochranná lhůta, výzva k upgradu - SCRUM-756, SCRUM-1366, SCRUM-1391, SCRUM-1392).

3. 📝 Třícestné sloučení poznámek - terapeut, AI a přepis v jednom pohledu

Toto je jedna z největších architektonických změn pod kapotou, ale efekt na každodenní práci je velmi viditelný: každé pole poznámek (Notes, SessionSummary, sekce konceptualizace) si nyní odděleně pamatuje, co napsal terapeut, co vygenerovala AI a co pochází z diktafonu / přepisu.

  • Třícestné poznámky (Notes 3-way) - pohled na poznámky ukazuje tři zdroje vedle sebe: váš text, návrhy AI a automatický přepis, a vy si vyberete, co ponechat
  • SessionSummary 2-way + sloučení JSON - v souhrnu sezení sloučíte svou práci s analýzou AI do jednoho souvislého dokumentu
  • Oddělovač časového razítka - když ručně upravíte pole AI, systém zanechá viditelnou stopu o tom, kdy a čí je daný fragment
  • Značka [AI] od prvního generování - vaše pole se nemísí s vygenerovanými
  • SourceBadge - barevná bublinka s ikonou ukazující, odkud fragment pochází, místo textu VELKÝMI PÍSMENY
  • Nahrazení sekce AI místo přidávání - když požádáte o nové generování souhrnu, AI sekci nahradí, místo aby pod ní vrstvila další kopii

Navrhl a dodal Bartek (SCRUM-1320, SCRUM-1368-1375). Pod kapotou: plná i18n v 8 jazycích a nové kontexty DDD.

4. 🔍 Analýzy KBT - 9 samostatných reportů na vyžádání

Stará monolitická „generuj analýzu KBT” byla rozdělena na 9 samostatných položek, které terapeut spouští, když je skutečně potřebuje. Méně čekání, více kontroly.

  • 9 nezávislých analýz - každá se generuje samostatně, na vyžádání
  • Ozubené kolečko úprav promptu - klikněte na ozubené kolečko vedle každé analýzy pro zobrazení/úpravu promptu, který AI použije
  • Sekce ANALÝZY KBT za kódem PromptyAI - sekce dostupná po zadání kódu v Nastavení, pro uživatele testující nové funkce

Kognitivní zkreslení dostala vlastní pohled (nahlásil Bartlomiej, SCRUM-1385):

  • Datový pohled místo reportu AI - vidíte konkrétní citace z přepisu označené AI, ne narativ z nich vygenerovaný
  • Všechny citace po rozbalení - žádný filtr časového rozsahu, rozbalení odhalí vše
  • Dostupné v hlavním menu - pod Konceptualizace v2

Starý prompt COGNITIVE_DISTORTIONS_INVENTORY byl odstraněn (SCRUM-1386).

5. 🌐 Veřejný profil terapeuta - kompletní revize s panely úprav

Veřejný profil pod značkou aitherapy.support byl kompletně přebudován.

  • 3 nové panely úprav - životopis, specializace, kontaktní údaje se editují v elegantních postranních panelech
  • Režim úprav vlastníka - když si prohlížíte vlastní profil po přihlášení, tlačítka úprav jsou po ruce
  • Roky praxe - nové pole YearsOfExperience viditelné na veřejném profilu
  • Rebrand barev - paleta šalvěj/levandule pod značkou aitherapy.support
  • Odstranění sekce „Vaše soukromí” - byla nadbytečná; GDPR je v patičce
  • Ikony Lucide - moderní, čistá typografie ikon

Pod kapotou byl přidán veřejný endpoint GET /api/public/therapists - vrací terapeuty s aktivními veřejnými profily. Základ pro adresář terapeutů.

6. 🎥 Videosezení - PiP, přepínání kamer, opravené rozmazání pozadí

Video dostalo sadu oprav, kterých si všimne každý terapeut vedoucí sezení přes aplikaci.

  • PiP / minimalizace - minimalizujte videomístnost do plovoucího mini-přehrávače a zkontrolujte poznámky v jiné kartě bez přerušení spojení. Mikrofon a kamera dál fungují
  • Přepínání kamer - přepněte jedním kliknutím, kdo je v hlavním zobrazení a kdo v mini
  • Obnovení PiP - při návratu z minimalizace přeskočíte lobby (PreJoinLobby) a skočíte rovnou do rozhovoru
  • Zvuk pro jednotlivé účastníky pro diarizaci - přepis rozděluje mluvčí i v režimu PiP
  • Opraveno rozmazání pozadí - CSP blokovalo MediaPipe WASM; rozmazání teď funguje na jedno kliknutí
  • Čistší UI sezení AITS - asistent AI zmizel z panelu nástrojů, méně vizuálního šumu
  • Klikatelný overlay PiP - odstranění pointerEvents:none a overflow:hidden, tlačítka PiP reagují na kliknutí
  • Tlačítko „Připojit se k sezení” - bylo skryté CSS přepisem, teď je viditelné
  • Zastaralý closure v handleMaximize - opraveno; maximalizace PiP už nevyhazuje chybu

7. 📐 Konceptualizace Beck v2 a ABC - PDF, přepínač verzí, úprava promptu

  • Beck a ABC v2 PDF - opravené formátování a automatické zahrnutí do materiálů sezení (nahlásila Ewa, SCRUM-1297)
  • Beck PDF - sekce pouze s ohraničením, barevné specializace, čisté iniciály, SVG šipka mezi sekcemi
  • Přepínač ABC v1/v2 v Konceptualizaci v2 - vyberte, kterou verzi ABC zobrazit
  • Ozubené kolečko úprav promptu v ABC v2 - upravte prompt AI v záložce ABC v2
  • PDF export pro analýzy AI a ABC podle sezení - jednotlivé analýzy se exportují samostatně
  • Pluralizace popisků ABC v 8 jazycích - tabulka konceptualizace má správné tvary množného čísla
  • Oprava prázdných sloupců ABC - backend vrací správné názvy vlastností v množném čísle

8. 🧾 Faktury a KSeF - výběr plateb + stavový automat

Fakturační systém byl přepracován pro soulad s KSeF (polský národní systém e-fakturace).

  • Faktura z vybraných plateb - vyberte platby a systém z nich vytvoří jednu fakturu (snímek + cizí klíč Payment)
  • Vstupní bod „Vystavit fakturu” ve finančním pohledu terapeuta - rychlý přístup z dashboardu
  • Odstranění položky v modálním okně vystavení faktury - opravte chyby za pochodu
  • Oddělení dev/prod pro KSeF - sandbox a produkce běží na oddělených přihlašovacích údajích
  • Stavový automat faktury (SCRUM-1357 Bohdan) - Návrh → Vystaveno → Odesláno → Zrušeno, s databázovým omezením proti nepovoleným přechodům
  • AE KsefToken - token KSeF šifrovaný pomocí Always Encrypted

Společná práce Bohdana (SCRUM-1357, SCRUM-1388).

9. 📅 Kalendář, opakující se sezení a lokace

Týdenní a opakující se kalendář dostal desítky menších, ale viditelných vylepšení - většinu nahlásily Joanna a Ewa.

  • Sezení od 22:00 - byla neviditelná v týdenní mřížce, teď se zobrazují do konce dne
  • Všechny hodiny v mřížce opakujících se slotů (SCRUM-874, Joanna)
  • Včas zrušené sezení - nezobrazuje se jako „Nezaplaceno” (SCRUM-918, Joanna)
  • Popisek opakování vedle opakujícího se slotu (SCRUM-919, Joanna) - vidíte „týdně”, „jednou za dva týdny” vedle každého opakujícího se sezení
  • Skrytí integrace Zoom z UI (SCRUM-789, Joanna) - Zoom už není podporován jako video kanál
  • Vyskakovací okno sezení v kalendáři - už se neskrývá mimo obrazovku
  • TherapistAvailability - automatické ukládání při každé změně (debounce 800 ms), tlačítko uložení není potřeba
  • AddSessionModal - možnost „vytvořit sezení mimo hodiny dostupnosti” - výjimky mohou vynutit slot
  • Stav „Nedostavil se” (NoShow=5) - nový stav, nastavitelný i z dokončeného nebo zrušeného sezení
  • RecurringSessionsCalendar - souhrnné dlaždice nad legendou a mřížkou

Lokace terapeuta dostaly online komunikační kanály na lokaci:

  • Režim na místě - pole adresy a města pro osobní lokace
  • Přepínač na místě/online místo zaškrtávacího políčka - jasnější volba režimu
  • Online kanál na lokaci - různé lokace mohou mít různé kanály (AITS, Google Meet, externí odkaz), automaticky se propaguje do sezení
  • Trvalé místnosti pro schůzky na pacienta - každý pacient má trvalý odkaz do místnosti AITS a samostatný externí odkaz viditelný v nastavení pacienta
  • Mazání lokace - opraveno (mizelo z DB, ale zůstávalo v seznamu UI)

A nakonec typ schůzky v opakujících se sezeních - opravena propagace MeetingType a MeetingLink z konfigurace opakující se řady do každého vygenerovaného sezení a do e-mailů s připomenutím (SCRUM-902, Ewa).

10. 📱 Mobilní aplikace - tmavý motiv, AdHoc Inbox, vyladění

Mobil přešel na verzi 1.5.0 (build 18) s množstvím pro uživatele viditelných změn a několika úpravami podepisování pro App Store / Play Store.

  • Tmavý motiv - plný tmavý režim s čitelnými záhlavími skupin (SCRUM-1089, Ewa + SCRUM-815)
  • Konfigurovatelná připomenutí - vyberte, kdy chcete oznámení o sezení
  • Mobilní připomenutí 15 min - připomenutí 15 minut před sezením + upozornění, když jsou systémová oznámení vypnutá (SCRUM-815, Bohdan)
  • Prázdný stav pro seznam sezení - místo prázdné obrazovky bohatší onboarding (SCRUM-1094, Ewa)
  • Banner automatického obnovení - když aplikace zjistí aktualizaci, zobrazí zvací banner k obnovení
  • AdHoc Inbox + AssignPatient + rychlý start v MAUI (SCRUM-1289, Bohdan)
  • Rychlý start PWA na mobilu pro ad-hoc sezení (SCRUM-1286, Bohdan)
  • Responzivní webové zobrazení pro telefon - desktop beze změny, na telefonu se rozvržení přizpůsobuje úzké obrazovce
  • Zpracovatel deep-linků v iOS - používá BindingContext, registraci URL schématu
  • Řetězce účelu NSLocation v iOS - oprava ITMS-90683 (App Store odmítl build bez nich)
  • Android AAB - explicitní krok jarsigner
  • Materiály pro App Store Connect a Google Play - kompletní balíček plus audit WCAG 2.2

11. 🔐 Bezpečnost: SOC 2 / HIPAA, MFA, plná pseudonymizace AI

Pod produktovou vrstvou jsme provedli plné zpřísnění podle SOC 2 a HIPAA plus DDD audit s pěti konkrétními výstupy.

  • Opětovné ověření MFA pro kritické operace - u citlivých akcí (změna hesla, export dat) znovu potvrdíte pomocí MFA
  • Záložní kódy pro MFA - nouzové kódy při ztrátě telefonu
  • IAnonymizedLlmGateway (SCRUM-1353, Bohdan) - všechna volání modelu AI nyní procházejí pseudonymizační bránou. Jména, data, místa jsou nahrazena pseudonymy dřív, než opustí aplikaci; AI dostane pouze anonymizovanou verzi
  • Pseudonymizace e-mailových/SMS notifikací (SCRUM-1354) - šablony zpráv při odeslání také neuniknout data pacienta
  • Tokeny OAuth Google/Zoom šifrované pomocí Always Encrypted (SCRUM-1355) - přístupové tokeny integrací jsou šifrovány na úrovni sloupce
  • Příznak Patient.PendingConsent (SCRUM-1356) - pacienti bez aktivního souhlasu dostanou vynucovací tok + odznak na frontendu
  • Stavový automat faktury (SCRUM-1357) - stavy faktur jsou neměnné v neplatných směrech, vynucené na úrovni DB
  • Neměnnost auditu + snímek uživatele ve 3 auditních tabulkách - protokol akcí nelze dodatečně upravit
  • DeanonymizationAuditLog - každé použití dat pacienta po deanonymizaci se zaznamenává spolu se snímkem e-mailu + zobrazovaného jména uživatele, který ho provedl
  • Odstraněny natvrdo zapsané tajné klíče - všechny klíče a hesla z appsettings.json přesunuty do Azure Key Vault
  • Always Encrypted pro všechna textová data uživatelů (ADR-0018) - architektonický směr schválen; další tabulky se migrují v příštím vydání
  • Analýza mezer souladu ISO/IEC - zmapováno 95 mezer napříč 9 normami, s nápravným plánem

Podpořeno plným DDD auditem (sezení 1-8, fáze 1-6) - restrukturalizace doménových kontextů, dokumentace architektury, ADR, mermaid + testy, playbooky, integrace s Confluence.

12. 👤 Portál pacienta - analýzy v Cílech, materiály, lepší náhled

  • Konceptualizace Beck v záložce „Cíle” pacienta - jakmile publikujete konceptualizaci, pacient ji vidí ve svém portálu
  • Publikování analýz do portálu pacienta + preference oznámení (SCRUM-1338, Bartlomiej) - kontrolujte, co a kdy pacient dostane
  • Náhled PDF v portálu - iframe místo embed, CSP povoluje blob: (PDF se načítají)
  • Náhled portálu pacienta z pohledu terapeuta - vidíte, co vidí pacient (obálka v obalu, dashboard 1:1)
  • Materiály sezení v Azure Blob Storage - SessionMaterial jako blob, žádný lokální souborový systém
  • Sekce souhlasy / dokumenty + zdroj registrace v nastavení pacienta
  • Globální jedinečnost e-mailu pacienta (SCRUM-898) - druhý pacient se stejným e-mailem dostane 409 a modální okno se zavře (SCRUM-898, Ewa)
  • Seeder šablon oznámení pro SK, CA, RU, UK, LT (SCRUM-883, Joanna) - plný vícejazyčný mailing
  • Záložní řešení resolveru na výchozí platformu - když terapeut šablonu nepřepsal, odešle se výchozí vícejazyčná (SCRUM-883)

13. 🎙️ Přepis - spolehlivé nahrávání, přidávání, živý přenos s diarizací

  • Přidávání do existujícího přepisu - pokračujte v nahrávání do stejného sezení; segmenty se přidávají (záměr přežije obnovení stránky)
  • Zvuk pro jednotlivé účastníky pro diarizaci - videopřepis rozděluje mluvčí na nezávislé stopy
  • Přepis přežije PiP - minimalizace místnosti nepřeruší nahrávání
  • Jazyk přepisu z nastavení sezení - STT používá jazyk nastavený pro pacienta
  • Automatické obnovení přepisu při focus / visibilitychange / návratu z videa
  • Potvrzení při zastavení nahrávání < 2s - ochrana proti prázdnému WAV souboru z omylného kliknutí
  • Odznak „Odesílá se” v seznamu sezení - vidíte, kdy je nahrávka v nahrávání
  • Živý přenos s diarizací ve videosezení - dříve nespouštěl se; nyní funguje
  • Záloha OPFS + 48 kbps Opus - nahrávka se také lokálně ukládá do OPFS jako záloha, parametry zvuku sjednoceny
  • Přímé nahrávání zvuku přes SAS (SCRUM-1276, Bohdan) - zvuk jde přímo do Azure přes SAS URL, mimo backend
  • m4a nativně do Azure Speech - m4a se zpracovává nativně, bez konverze
  • Detekce formátu podle magických bytů (SCRUM-1311, Bohdan) - když je Content-Type=application/octet-stream, formát se detekuje podle obsahu souboru
  • Hub bez textu v DB - realtime hub SignalR už neukládá text do DB; finishPending používá multipart POST jako MAUI
  • Oprava SignalR 1006 - odstraněno skipNegotiation, aby Azure SignalR fungoval + doladění keep-alive
  • Značka [AI] od prvního generování + spolehlivé vyhledávání značky

14. 💬 Oznámení, nastavení pacienta, drobné UX

  • NotificationTemplatesAdmin - přepínač HTML/Text v editoru e-mailů
  • NotificationSettings - náhled e-mailu vykresluje HTML se záložním řešením
  • PromptEditModal - přebudováno: karty, výběr modelu, povinné názvy verzí
  • Reset příznaku Hide_dev_ui při odhlášení - vývojářské příznaky nepřežívají mezi relacemi
  • Testovací pacient Ann Fauler - anglická obdoba 1:1 polské Anny Pełnialské pro ukázky pouze v angličtině
  • Přepínač prezentačního režimu v dev UI - rychlý přepnutí do prezentačního režimu
  • Hlášení chyb - přílohy Jira + štítek nahlašovatele + vystředěné tlačítko „Odeslat”
  • Oprava smyčky obnovení autentizace - přerušení požadavků a návrat na přihlášení při 401
  • Banner „Server se spouští” - při studeném startu (scale-to-zero) zobrazujeme upozornění místo prázdné stránky
  • Škála hodnocení sezení - sebereflexe místo hodnocení kvality + upozornění (SCRUM-1005, Joanna)
  • Barva tlačítka „Minimalizovat” změněna na kobaltově fialovou (SCRUM-1307, Ewa)
  • Barva popisku „Přepis” změněna z červené na zelenou (SCRUM-1304, Ewa)
  • „Nahrát nyní” → „Nahrát ad-hoc sezení” - přesnější název tlačítka
  • Sandbox se zelenou stuhou v levém horním rohu + předpona [SANDBOX] v titulku - aby se předešlo záměně prostředí, plus opakovatelný klon PROD → Sandbox (Azure IaC + skripty)

✅ Kontrolní seznam QA - co ověřit po nasazení

FunkceOvěřit
Ad-hoc sezení - rychlé nahráváníKlikněte na Rychlé nahrávání na dashboardu nebo v PWA - nahrávání se okamžitě spustí, sezení skončí v AdHoc Inbox
AssignPatient v AdHoc InboxOtevřete ad-hoc nahrávku - lze ji přiřadit existujícímu pacientovi nebo vytvořit nového
Limit balíčkuDashboard ukazuje počítadlo sezení za aktuální měsíc a kolik jich zbývá v balíčku
Ochranná lhůta po selhané platběSimulátor předplatného v PromptyAI - vynuťte selhanou platbu, dostanete přístup pouze k účtu na 14 dní
Třícestné sloučení poznámekV detailu sezení pole Poznámky ukazuje tři zdroje vedle sebe (terapeut / AI / přepis); můžete vybrat, co ponechat
9 analýz KBTKarta analýz KBT ukazuje 9 samostatných položek; každá se generuje na vyžádání; každá má ozubené kolečko úpravy promptu
Veřejný profil - panelyOtevřete vlastní veřejný profil po přihlášení - panely úprav životopisu, specializace, kontaktu jsou viditelné
Video PiPBěhem videosezení klikněte na minimalizovat - okno se sbalí do mini-přehrávače, mikrofon dál funguje, vrátíte se bez lobby
Rozmazání pozadíV lobby videa zapněte rozmazání pozadí - funguje okamžitě, žádné chyby CSP
PDF konceptualizace BeckVygenerujte PDF konceptualizace - objeví se i v materiálech sezení
Přepínač ABC v1/v2V konceptualizaci v2 lze přepnout zdroj ABC mezi verzí 1 a 2
Faktura z vybraných platebVyberte několik plateb a klikněte na „Vystavit fakturu” - vznikne jedna faktura ze snímku
Opakující se sezení s Google MeetDruhé a třetí sezení v řadě mají správně nastaven Google Meet a e-mail obsahuje správný odkaz
Sezení od 22:00Týdenní kalendář ukazuje sezení naplánovaná od 22:00 a později
Stav „Nedostavil se”U dokončeného / zrušeného sezení lze změnit stav na „Nedostavil se”
Tmavý motiv na mobiluV mobilní aplikaci přepněte na tmavý motiv - záhlaví skupin jsou čitelná
AdHoc Inbox na mobiluMobil zobrazuje ad-hoc schránku a umožňuje přiřadit pacienta
Opětovné ověření MFAPři změně hesla aplikace znovu vyžádá MFA
Pseudonymizace AIV protokolech vidíte, že data pacienta jdou k AI jako pseudonymy
Materiály sezení jako blobNahrajte soubor do materiálů sezení - skončí v Azure Blob Storage, ne na lokálním disku
Globální jedinečnost e-mailu pacientaPřidejte druhého pacienta se stejným e-mailem - dostanete 409 a modální okno se zavře
Banner „Server se spouští”Po delší nečinnosti vstup do aplikace ukáže banner místo prázdné stránky

🛠️ Co jsme opravili - drobným písmem

Kromě velkých funkcí bylo vyřešeno ~80 hlášení od testerů a uživatelů. Výběr:

  • Overlay PiP nebyl klikatelný - opraveno
  • Zastaralý closure v handleMaximize - maximalizace PiP už nevyhazuje chybu
  • PiP udržuje spojení - dříve se room.disconnect() spouštěl při přechodu na celou obrazovku ↔ PiP
  • Tlačítko „Připojit se k sezení” bylo skryté CSS přepisem - odkryto
  • Druhé sezení AITS pro stejného pacienta (SCRUM-1319, Ewa) - odstranění UNIQUE INDEX na Session.VideoInviteToken
  • Číslování sezení v konceptualizaci přeskakuje zrušená (SCRUM-1267, Bohdan)
  • Null-safe přístup k Payment v GetSessionDetailsAsync (SCRUM-1268, Bohdan)
  • Kolize testovacího sezení Anny Pełnialské s Janem ve 14:00 - opraveno v seederu
  • Zpomalení dashboardu - null-safe mapování v GetTodaySessionsAsync a GetSessionDetailsAsync
  • Automatické obnovení po ukončení nahrávání z mikrofonu - funguje
  • Dávkové řešení jako záloha nepřepisuje text z předchozích nahrávek ani neblokuje UI stavem Zpracovává se
  • Jazyk přepisu z nastavení sezení - STT respektuje preferenci pacienta
  • CSP - povolení *.clarity.ms, blob: v connect-src, analytika ve script-src
  • Smyčka obnovení autentizace - přerušení požadavků po 401 a návrat na přihlášení
  • CSP MediaPipe WASM - rozmazání pozadí funguje
  • Stuha DEV/SANDBOX i na Azure FQDN, ne jen na vlastní doméně
  • Falešný toast „Přepis selhal” při vstupu do sezení - odstraněno
  • Toast místo červeného banneru při selhaném přepisu + odstraněno tlačítko „Resample”
  • Živý přenos s diarizací ve videosezení - spouští se správně
  • Streamování AI - AbortController pro každý handler místo sdíleného (BodyStreamBuffer was aborted)
  • Nginx non-root + Azure Container Apps - více iterací, aby to fungovalo
  • Distribuovaný zámek (sp_getapplock) - startovací migrace se už nekolidují při paralelních nasazeních
  • DbUpdateConcurrencyException v dávkovém pollerum přepisu (SCRUM-1313, Bohdan)
  • BlobNotFound jako očekávaný stav (SCRUM-1314, Bohdan)
  • Nezpracovaná JSON data webhooku Stripe (skenery / boti) - tiše zpracováno (SCRUM-1315, Bohdan)
  • Detekce formátu zvuku podle magických bytů (SCRUM-1311, Bohdan)
  • Odolné nahrávání zvuku + defenzivní Content-Type (SCRUM-1293, Bohdan)
  • Migrace cizího klíče ActiveEmbeddingModelId → ON DELETE NO ACTION
  • Nasazení dev klienta - CACHE_BUST=github.sha vynucuje rebuild frontendu

Toto je největší a nejnabitější vydání tohoto jara. Pokud vám nějaká funkce připadá povědomá - je to proto, že to byl váš požadavek nebo váš tiket. Děkujeme za každé hlášení a každý screenshot.

Článek připravil tým Therapy Support

Therapy Support · Začněte ještě dnes

Získejte zpět čas pro sebe
i pro své pacienty

Jste KBT terapeut?
Podívejte se, jak platforma podporuje vaši každodenní práci.
Shrnutí sezení, která uspořádají klinický materiál. Administrativa, která nepřekáží.