Beleške o izdanju — 26. april 2026.
Pre 19 dana objavili smo veliko izdanje sa dijagnostičkim modulom i analizom prozodije. Od tada je tim uveo još 295 izmena - i nisu male. U ovom izdanju možete snimiti ad-hoc seansu i pre nego što pacijent stigne, vaše beleške se spajaju sa AI radom i transkripcijom jedna pored druge u tri kolone, javni profil terapeuta se vraća u punoj snazi, a mobilna aplikacija sada ima tamnu temu. Ispod haube prošli smo kroz proces jačanja bezbednosti prema SOC 2 / HIPAA, DDD reviziju i potpunu pseudonimizaciju podataka pacijenata na AI strani.
💚 Hvala timu koji je pokrenuo ovo izdanje - kroz prijave, testove, kod i strpljenje:
- Bohdan - ad-hoc seanse, ograničenja paketa i period tolerancije, DDD revizija, KSeF fakture, desetine popravki (SCRUM-756, 815, 1267, 1268, 1276, 1280-1290, 1293, 1309-1316, 1353-1357, 1366, 1388, 1391, 1392)
- Bartek - trosmerno spajanje, 9 zasebnih CBT analiza, kognitivne distorzije, brojač seansi paketa (SCRUM-1266, 1320, 1338, 1368-1375, 1385, 1386)
- Ewa Cylwik / Ewa - Beck PDF, druga AITS seansa za istog pacijenta, tamna tema i prazno stanje na mobilnom uređaju, višejezično slanje mejlova, boje interfejsa, jedinstvenost mejla pacijenta (SCRUM-883, 898, 902, 1089, 1094, 1297, 1304, 1307, 1319)
- Joanna - ponavljajući kalendar, sakrivanje Zoom-a, otkazivanje na vreme, samorefleksija umesto ocene kvaliteta seanse (SCRUM-789, 874, 918, 919, 1005)
- Plus Bartlomiej za kognitivne distorzije i brojač seansi, koji je postao temelj novog modela pretplate
1. ⚡ Ad-hoc seanse — snimajte pre nego što pacijent stigne
Ako vam se ikada desilo da morate brzo da uključite diktafon - jer je pacijent ušao nenajavljen, jer je reč o jednokratnoj konsultaciji, jer je u pitanju sastanak sa nekim ko još nije u vašoj evidenciji - novi modul ad-hoc seansa rešava tu vrstu problema u celosti.
- Dugme za brzo snimanje na veb tabli, u PWA na telefonu i u MAUI aplikaciji - jedan klik pokreće snimanje pre nego što uopšte unesete podatke pacijenta
- AdHoc prijemno sanduče - namenski prostor za nepridružene snimke dok ne odlučite gde idu
- AssignPatientModal - dodelite snimak postojećem pacijentu ili kreirajte novog direktno iz sandučeta
- Nastavi / ponovo uđi u sobu - dovršite snimanje seanse koju ste ranije započeli
- Zadržavanje siročadi + automatsko zatvaranje - seanse nedodeljene X dana automatski se zatvaraju kako bi sanduče ostalo uredno
- Video „Počni bez pacijenta” - u LiveKit sobi možete započeti seansu bez sudaranja sa postojećim pacijentom; AdHoc zatim sleže u sanduče
Odeljak je zaključan iza PromptyAI koda u Podešavanjima - podrazumevano isključen, za korisnike koji prvo žele da vide ostatak. Osmislio i realizovao Bohdan.
2. 📊 Ograničenja paketa i period tolerancije — transparentna pretplata
Pretplate su prošle kroz potpunu reviziju. Stari Starter/Standard planovi su deaktivirani, zamenjeni planovima Start / Practice / Pro - dimenzionisanim prema stvarnom obimu seansi mesečno.
- Brojač seansi na tabli - vidite koliko ste seansi iskoristili ovog meseca i koliko ih preostaje u paketu
- Mejlovi o ograničenju - automatska obaveštenja pri 80% i 100% iskorišćenosti
- Predlog za nadogradnju - kada dostignete ograničenje, dobijate blag predlog za promenu plana umesto tvrde blokade
- Cene iz Stripe-a + popusti - cena koju vidite u aplikaciji dolazi direktno iz Stripe-a sa primenjenim aktivnim popustima (kod beta-testera ne ističe)
- Nativno otkazivanje pretplate - otkažite direktno u aplikaciji, bez potrebe da pišete podršci
- 14-dnevni period tolerancije - ako plaćanje ne uspe, imate 14 dana pristupa samo sopstvenom nalogu (bez pregleda pacijenata), sa mejlovima na dan T+0 i T+13. Stvarni gubitak podataka nastupa tek nakon dve nedelje
- Baner pretplate - uredna poruka na vrhu aplikacije bez prazne trake između menija i upozorenja
- Simulator ograničenja seansi - u panelu PromptyAI postoji testni režim u kom možete videti kako se aplikacija ponaša kod punog paketa
Zajednički rad Bartlomieja (brojač i ograničenja, SCRUM-1266) i Bohdana (pretplata, tolerancija, predlog nadogradnje - SCRUM-756, SCRUM-1366, SCRUM-1391, SCRUM-1392).
3. 📝 Trosmerno spajanje beležaka — terapeut, AI i transkripcija u jednom prikazu
Ovo je jedna od najvećih arhitektonskih promena ispod haube, ali je efekat na svakodnevni rad veoma vidljiv: svako polje beleške (Notes, SessionSummary, odeljci konceptualizacije) sada zasebno pamti šta je napisao terapeut, šta je generisala AI i šta je stiglo sa diktafona / transkripcije.
- Notes 3-way - prikaz beležaka pokazuje tri izvora jedan pored drugog: vaš tekst, AI predloge i automatsku transkripciju, a vi birate šta zadržavate
- SessionSummary 2-way + JSON spajanje - u sažetku seanse spajate sopstveni rad sa AI analizom u jedan koherentan dokument
- Separator vremenske oznake - kada ručno izmenite polje generisano od strane AI, sistem ostavlja vidljiv trag kada je i čiji je fragment reč
- [AI] oznaka od prvog generisanja - vaša polja se ne mešaju sa generisanim
- SourceBadge - šarena pilula sa ikonicom koja pokazuje odakle fragment potiče, umesto teksta VELIKIM SLOVIMA
- Zamena AI odeljka umesto dodavanja - kada zatražite ponovno generisanje sažetka, AI zamenjuje odeljak umesto da ispod naslaže još jednu kopiju
Osmislio i realizovao Bartek (SCRUM-1320, SCRUM-1368-1375). Ispod haube: puna i18n podrška na 8 jezika i novi DDD konteksti.
4. 🔍 CBT analize — 9 zasebnih izveštaja na zahtev
Stara monolitna funkcija „generiši CBT analizu” podeljena je na 9 zasebnih stavki koje terapeut pokreće kada mu su zaista potrebne. Manje čekanja, više kontrole.
- 9 nezavisnih analiza - svaka se generiše zasebno, na zahtev
- Zupčanik za izmenu prompta - kliknite na zupčanik pored svake analize da vidite/izmenite prompt koji će AI koristiti
- Odeljak CBT ANALIZE iza PromptyAI koda - odeljak dostupan nakon unosa koda u Podešavanjima, za korisnike koji testiraju nove funkcije
Kognitivne distorzije dobile su sopstveni prikaz (prijavio Bartlomiej, SCRUM-1385):
- Prikaz podataka umesto AI izveštaja - vidite konkretne citate iz transkripta koje je AI označila, a ne narativ generisan na njihovoj osnovi
- Svi citati nakon proširenja - bez filtera opsega datuma, proširenje otkriva sve
- Dostupno u glavnom meniju - pod Konceptualizacija v2
Stari prompt COGNITIVE_DISTORTIONS_INVENTORY je uklonjen (SCRUM-1386).
5. 🌐 Javni profil terapeuta — potpuna preobrazba sa fiokama za uređivanje
Javni profil pod brendom aitherapy.support je u potpunosti iznova izgrađen.
- 3 nove fioke za uređivanje - biografija, specijalizacije, kontakt podaci uređuju se u elegantnim bočnim panelima
- Režim uređivanja vlasnika - kada pregledate sopstveni profil dok ste prijavljeni, dugmad za uređivanje su vam nadohvat ruke
- Godine iskustva - novo polje
YearsOfExperiencevidljivo na javnom profilu - Rebrendiranje boja - paleta boja u tonovima žada i lavande pod brendom aitherapy.support
- Uklonjen odeljak „Vaša privatnost” - bio je suvišan; GDPR informacije su u podnožju
- Lucide ikonice - moderna, čista tipografija ikonica
Ispod haube dodata je javna krajnja tačka GET /api/public/therapists - koja vraća terapeute sa aktivnim javnim profilima. Temelj za imenik terapeuta.
6. 🎥 Video seanse — PiP, zamena kamera, popravljeno zamućenje pozadine
Video je dobio niz popravki koje će primetiti svaki terapeut koji vodi seanse kroz aplikaciju.
- PiP / umanjivanje - umanjite video sobu u plutajući mini-plejer i proverite beleške na drugoj kartici bez prekidanja veze. Mikrofon i kamera nastavljaju da rade
- Zamena kamera - jednim klikom prebacite ko je u glavnom prikazu, a ko u mini prikazu
- Nastavak iz PiP-a - kada se vraćate iz umanjenja, preskačete čekaonicu (PreJoinLobby) i odmah ulazite u razgovor
- Audio po učesniku za dijarizaciju - transkripcija razdvaja govornike čak i u PiP režimu
- Popravljeno zamućenje pozadine - CSP je blokirao MediaPipe WASM; zamućenje sada radi jednim klikom
- Čistiji AITS interfejs seanse - AI asistent je nestao sa trake alatki, manje vizuelnog šuma
- PiP preklop je klikabilan - uklanjanjem
pointerEvents:noneioverflow:hidden, dugmad u PiP-u reaguju na klikove - Dugme „Pridruži se seansi” - bilo je skriveno CSS prepisivanjem, sada je vidljivo
- Stale closure u handleMaximize - popravljeno; maksimizovanje PiP-a više ne baca grešku
7. 📐 Konceptualizacija Beck v2 i ABC — PDF, prebacivanje verzije, izmena prompta
- Beck i ABC v2 PDF - popravljeno formatiranje i automatsko uključivanje u materijale seanse (prijavila Ewa, SCRUM-1297)
- Beck PDF - odeljci sa samo ivicama, šarene specijalizacije, čisti inicijali, SVG strelica između odeljaka
- ABC v1/v2 prebacivanje u Konceptualizaciji v2 - izaberite koju verziju ABC prikazujete
- Zupčanik za izmenu prompta u ABC v2 - izmenite AI prompt na kartici ABC v2
- PDF izvoz za AI analize i ABC po seansi - pojedinačne analize izvoze se odvojeno
- Pluralizacija ABC oznaka na 8 jezika - tabela konceptualizacije ima tačne oblike množine
- Popravka praznih kolona u ABC - bekend vraća tačne nazive svojstava u množini
8. 🧾 Fakture i KSeF — izbor plaćanja + mašina stanja
Sistem fakturisanja je refaktorisan radi usklađenosti sa KSeF (poljskim nacionalnim sistemom e-fakturisanja).
- Faktura od izabranih plaćanja - izaberete plaćanja i sistem kreira jednu fakturu od njih (snapshot + Payment FK)
- Ulazna tačka „Izdaj fakturu” u finansijskom prikazu terapeuta - brz pristup sa table
- Uklanjanje stavke u prozoru za izdavanje fakture - ispravite greške u hodu
- Razdvajanje KSeF dev/prod - probno okruženje i produkcija rade na odvojenim akreditivima
- Mašina stanja fakture (SCRUM-1357 Bohdan) - Draft → Issued → Sent → Cancelled, sa ograničenjem baze podataka na nedozvoljene prelaze
- AE KsefToken - KSeF token enkriptovan pomoću Always Encrypted
Zajednički rad Bohdana (SCRUM-1357, SCRUM-1388).
9. 📅 Kalendar, ponavljajuće seanse i lokacije
Nedeljni i ponavljajući kalendar dobio je desetine malih, ali vidljivih poboljšanja - većinu je prijavila Joanna i Ewa.
- Seanse od 22:00 - bile su nevidljive na nedeljnoj mreži, sada se prikazuju do kraja dana
- Svi sati na mreži ponavljajućeg termina (SCRUM-874, Joanna)
- Seansa otkazana na vreme - ne prikazuje se kao „Neplaćeno” (SCRUM-918, Joanna)
- Oznaka ponavljanja pored ponavljajućeg termina (SCRUM-919, Joanna) - vidite „nedeljno”, „dvonedeljno” pored svake ponavljajuće seanse
- Sakrivanje Zoom integracije iz interfejsa (SCRUM-789, Joanna) - Zoom više nije podržan kao video kanal
- Iskačući prikaz seanse u kalendaru - više se ne sakriva van ekrana
- TherapistAvailability — automatsko čuvanje pri svakoj izmeni (debounce 800 ms), bez potrebe za dugmetom za čuvanje
- AddSessionModal — opcija „kreiraj seansu van sati dostupnosti” - izuzeci mogu nametnuti termin
- Status „Nije se pojavio” (NoShow=5) - novi status, može se postaviti čak i sa završene ili otkazane seanse
- RecurringSessionsCalendar - pločice sa sažetkom iznad legende i mreže
Lokacije terapeuta dobile su kanale za sastanke na mreži po lokaciji:
- Režim uživo - polja za adresu i grad za lokacije uživo
- Prekidač uživo/na mreži umesto polja za potvrdu - jasniji izbor režima
- Kanal na mreži po lokaciji - različite lokacije mogu imati različite kanale (AITS, Google Meet, spoljni link), automatski se prenosi na seanse
- Trajne sobe za sastanke po pacijentu - svaki pacijent ima trajan link za AITS sobu i poseban spoljni link vidljiv u podešavanjima pacijenta
- Brisanje lokacije - popravljeno (nestajala je iz baze podataka, ali je ostajala na listi u interfejsu)
I na kraju vrsta sastanka u ponavljajućim seansama - popravljeno prenošenje MeetingType i MeetingLink iz konfiguracije ponavljajuće serije na svaku generisanu seansu i na mejlove sa podsetnikom (SCRUM-902, Ewa).
10. 📱 Mobilna aplikacija — tamna tema, AdHoc sanduče, doterivanje
Mobilna aplikacija je prešla na verziju 1.5.0 (build 18) sa mnoštvom izmena vidljivih korisniku i nekoliko dodira u vezi sa potpisivanjem za App Store / Play Store.
- Tamna tema - potpuni tamni režim sa čitljivim zaglavljima grupa (SCRUM-1089, Ewa + SCRUM-815)
- Podesivi podsetnici - izaberite kada želite obaveštenje o seansi
- Podsetnik na mobilnom 15 min - podsetnik 15 minuta pre seanse + upozorenje kada su sistemska obaveštenja isključena (SCRUM-815, Bohdan)
- Prazno stanje za listu seansi - umesto praznog ekrana, bogatiji onboarding (SCRUM-1094, Ewa)
- Baner automatskog osvežavanja - kada aplikacija otkrije ažuriranje, prikazuje pozivni baner za osvežavanje
- AdHoc sanduče + AssignPatient + brzo pokretanje u MAUI (SCRUM-1289, Bohdan)
- PWA brzo pokretanje na mobilnom za ad-hoc seanse (SCRUM-1286, Bohdan)
- Responzivan veb prikaz za telefon - desktop nepromenjen, na telefonu se raspored prilagođava uskom ekranu
- Rukovalac dubokim linkovima u iOS-u - koristi BindingContext, registraciju URL šeme
- iOS NSLocation stringovi svrhe - popravka ITMS-90683 (App Store je odbio bild bez ovoga)
- Android AAB - eksplicitan korak jarsigner-a
- Materijali za App Store Connect i Google Play - kompletan paket plus WCAG 2.2 revizija
11. 🔐 Bezbednost: SOC 2 / HIPAA, MFA, potpuna AI pseudonimizacija
Ispod sloja proizvoda sproveli smo potpuno jačanje bezbednosti prema SOC 2 i HIPAA plus DDD reviziju sa pet konkretnih isporuka.
- MFA ponovna verifikacija za kritične operacije - za osetljive akcije (promena lozinke, izvoz podataka) ponovo potvrđujete pomoću MFA
- Rezervni kodovi za MFA - kodovi za hitne slučajeve ako izgubite telefon
- IAnonymizedLlmGateway (SCRUM-1353, Bohdan) - svi pozivi AI modelu sada idu kroz gejtvej za pseudonimizaciju. Imena, datumi, mesta se zamenjuju pseudonimima pre nego što napuste aplikaciju; AI dobija samo anonimizovanu verziju
- Pseudonimizacija mejl/SMS obaveštenja (SCRUM-1354) - šabloni poruka takođe ne otkrivaju podatke pacijenata prilikom slanja
- OAuth tokeni Google/Zoom enkriptovani pomoću Always Encrypted (SCRUM-1355) - pristupni tokeni integracija enkriptovani su na nivou kolone
- Zastavica Patient.PendingConsent (SCRUM-1356) - pacijenti bez aktivne saglasnosti dobijaju tok prinude + oznaku na frontendu
- Mašina stanja fakture (SCRUM-1357) - statusi faktura su nepromenjivi u nevažećim pravcima, sprovedeno na nivou baze podataka
- Nepromenjivost revizije + snimak korisnika u 3 tabele revizije - dnevnik akcija se ne može menjati naknadno
- DeanonymizationAuditLog - svaka upotreba podataka pacijenta nakon deanonimizacije beleži se zajedno sa mejlom + snimkom prikazanog imena korisnika koji je izvršio radnju
- Uklonjeni tvrdo ukodirani tajni podaci - svi ključevi i lozinke iz appsettings.json premešteni su u Azure Key Vault
- Always Encrypted za sve tekstualne podatke korisnika (ADR-0018) - odobren arhitektonski pravac; dodatne tabele migriraju u sledećem izdanju
- Analiza jaza usklađenosti sa ISO/IEC - mapirano 95 jazova kroz 9 standarda, sa planom otklanjanja
Potkrepljeno potpunom DDD revizijom (sesije 1-8, faze 1-6) - restruktuiranje domenskog konteksta, arhitektonska dokumentacija, ADR-ovi, mermaid + testovi, playbook-ovi, integracija sa Confluence-om.
12. 👤 Portal pacijenta — analize u Ciljevima, materijali, bolji pregled
- Beckova konceptualizacija u kartici „Ciljevi” pacijenta - kada objavite konceptualizaciju, pacijent je vidi u svom portalu
- Objavljivanje analiza u portal pacijenta + podešavanja obaveštenja (SCRUM-1338, Bartlomiej) - kontrolišite šta i kada pacijent prima
- Pregled PDF-a u portalu -
iframeumestoembed, CSP dozvoljavablob:(PDF-ovi se učitavaju) - Pregled portala pacijenta iz prikaza terapeuta - vidite šta pacijent vidi (okvir u omotaču, tabla 1:1)
- Materijali seanse u Azure Blob Storage - SessionMaterial kao blob, više nema lokalnog fajl sistema
- Odeljak saglasnosti / dokumenata i izvor registracije u podešavanjima pacijenta
- Globalna jedinstvenost mejla pacijenta (SCRUM-898) - drugi pacijent sa istim mejlom dobija 409 i zatvoren prozor (SCRUM-898, Ewa)
- Seeder šablona obaveštenja za SK, CA, RU, UK, LT (SCRUM-883, Joanna) - puno višejezično slanje mejlova
- Rezolver sa prebacivanjem na podrazumevani šablon platforme - kada terapeut nije prepisao šablon, šalje se podrazumevani višejezični (SCRUM-883)
13. 🎙️ Transkripcija — pouzdano snimanje, dodavanje, uživo sa dijarizacijom
- Dodavanje postojećoj transkripciji - nastavite snimanje u istoj seansi; segmenti se dodaju (namera preživljava osvežavanje stranice)
- Audio po učesniku za dijarizaciju - transkripcija videa razdvaja govornike na nezavisnim trakama
- Transkripcija preživljava PiP - umanjivanje sobe ne prekida snimanje
- Jezik transkripcije iz podešavanja seanse - STT koristi jezik koji ste podesili za pacijenta
- Automatsko osvežavanje transkripcije pri fokusu / promeni vidljivosti / povratku iz videa
- Potvrda pri zaustavljanju snimanja < 2s - zaštita od praznog WAV fajla usled slučajnog klika
- Oznaka „Šalje se” u listi seansi - vidite kada je snimak u otpremanju
- Uživo sa dijarizacijom u video seansi - ranije se nije pokretalo; sada radi
- OPFS rezerva + 48 kbps Opus - snimak se takođe lokalno čuva u OPFS kao rezerva, parametri audija su ujednačeni
- SAS direktno otpremanje audija (SCRUM-1276, Bohdan) - audio ide direktno na Azure putem SAS URL-a, zaobilazeći bekend
- m4a nativno u Azure Speech - m4a se obrađuje nativno, bez konverzije
- Detekcija formata prema magic bytes (SCRUM-1311, Bohdan) - kada je Content-Type=
application/octet-stream, format se detektuje na osnovu sadržaja fajla - Hub bez teksta u bazi - SignalR realtime hub više ne čuva tekst u bazi podataka; finishPending koristi multipart POST kao MAUI
- Popravka SignalR 1006 - uklonjen skipNegotiation kako bi Azure SignalR radio + podešavanje keep-alive
- [AI] oznaka od prvog generisanja + pouzdano pretraživanje oznake
14. 💬 Obaveštenja, podešavanja pacijenta, sitni UX detalji
- NotificationTemplatesAdmin - prekidač HTML/tekst u uređivaču mejlova
- NotificationSettings - pregled mejla renderuje HTML sa rezervnim prikazom
- PromptEditModal - iznova izgrađen: kartice, birač modela, obavezni nazivi verzija
- Resetovanje zastavice Hide_dev_ui pri odjavi - programerske zastavice se ne prenose između sesija
- Test pacijent Ann Fauler - engleski ekvivalent poljske Anne Pełnialske za demonstracije samo na engleskom
- Prekidač prezentacionog režima u dev interfejsu - brzo prebacivanje u prezentacioni režim
- Prijava greške — prilozi za Jira + oznaka prijavljivača i centrirano dugme „Pošalji”
- Petlja osvežavanja autentifikacije popravljena - prekidanje zahteva i povratak na prijavu nakon 401
- Baner „Server se pokreće” - kod hladnog starta (scale-to-zero) prikazujemo obaveštenje umesto praznog ekrana
- Skala ocenjivanja seanse — samorefleksija umesto ocene kvaliteta + napomena (SCRUM-1005, Joanna)
- Boja dugmeta „Umanji” promenjena u kobalt ljubičastu (SCRUM-1307, Ewa)
- Boja oznake „Transkripcija” promenjena iz crvene u zelenu (SCRUM-1304, Ewa)
- „Snimi sada” → „Snimi AdHoc seansu” - preciznije ime dugmeta
- Probno okruženje sa zelenom trakom u gornjem levom uglu + prefiks
[SANDBOX]u naslovu - da se izbegne zabuna u vezi sa okruženjem, plus ponovljiv klon PROD → Sandbox (Azure IaC + skripte)
✅ QA kontrolna lista — šta proveriti nakon deploja
| Funkcija | Proverite |
|---|---|
| Ad-hoc seansa — brzo snimanje | Kliknite Quick Record na tabli ili u PWA - snimanje počinje odmah, seansa sleže u AdHoc sanduče |
| AssignPatient u AdHoc sandučetu | Otvorite ad-hoc snimak - možete ga dodeliti postojećem pacijentu ili kreirati novog |
| Ograničenje paketa | Tabla prikazuje brojač seansi za tekući mesec i koliko ih preostaje u paketu |
| Period tolerancije nakon neuspelog plaćanja | Simulator pretplate u PromptyAI - forsirajte neuspelo plaćanje, dobijate pristup samo nalogu na 14 dana |
| Trosmerno spajanje beležaka | U detaljima seanse, polje Notes prikazuje tri izvora jedan pored drugog (terapeut / AI / transkripcija); možete izabrati šta zadržavate |
| 9 CBT analiza | Kartica CBT analize prikazuje 9 zasebnih stavki; svaka se generiše na zahtev; svaka ima zupčanik za izmenu prompta |
| Javni profil — fioke | Otvorite sopstveni javni profil dok ste prijavljeni - vidljive su fioke za uređivanje biografije, specijalizacije, kontakta |
| Video PiP | Tokom video seanse kliknite umanji - prozor se skuplja u mini-plejer, mikrofon i dalje radi, vraćate se bez čekaonice |
| Zamućenje pozadine | U video čekaonici uključite zamućenje pozadine - radi odmah, bez CSP grešaka |
| PDF Beckove konceptualizacije | Generišite PDF konceptualizacije - takođe se pojavljuje u materijalima seanse |
| ABC v1/v2 prebacivanje | U konceptualizaciji v2 možete prebaciti izvor ABC-a između verzije 1 i 2 |
| Faktura od izabranih plaćanja | Izaberite nekoliko plaćanja i kliknite „Izdaj fakturu” - nastaje jedna faktura od snapshot-a |
| Ponavljajuća seansa sa Google Meet-om | Druga i treća seansa u seriji imaju ispravno podešen Google Meet, a mejl sadrži tačan link |
| Seanse od 22:00 | Nedeljni kalendar prikazuje seanse zakazane u 22:00 i kasnije |
| Status „Nije se pojavio” | U završenoj / otkazanoj seansi možete promeniti status u „Nije se pojavio” |
| Tamna tema na mobilnom | U mobilnoj aplikaciji prebacite na tamnu temu - zaglavlja grupa su čitljiva |
| AdHoc sanduče na mobilnom | Mobilna aplikacija prikazuje ad-hoc sanduče i omogućava dodelu pacijenta |
| MFA ponovna verifikacija | Prilikom promene lozinke, aplikacija ponovo traži MFA |
| AI pseudonimizacija | U logovima vidite da podaci pacijenta stižu do AI-a kao pseudonimi |
| Materijali seanse kao blob | Otpremite datoteku u materijale seanse - sleže u Azure Blob Storage, ne na lokalni disk |
| Globalna jedinstvenost mejla pacijenta | Dodajte drugog pacijenta sa istim mejlom - dobijate 409 i prozor se zatvara |
| Baner „Server se pokreće” | Nakon dužeg perioda neaktivnosti, ulazak u aplikaciju prikazuje baner umesto praznog ekrana |
🛠️ Šta smo popravili — sitna slova
Pored velikih funkcija, rešeno je ~80 prijava testera i korisnika. Izdvajamo:
- PiP preklop nije bio klikabilan - popravljeno
- Stale closure u handleMaximize - maksimizovanje PiP-a više ne baca grešku
- PiP čuva vezu - ranije se
room.disconnect()pokretao pri prelazu ceo ekran↔PiP - Dugme „Pridruži se seansi” bilo je skriveno CSS prepisivanjem - otkriveno
- Druga AITS seansa za istog pacijenta (SCRUM-1319, Ewa) - uklonjen UNIQUE INDEX na
Session.VideoInviteToken - Numeracija seansi u konceptualizaciji preskače otkazane (SCRUM-1267, Bohdan)
- Null-safe pristup Payment-u u GetSessionDetailsAsync (SCRUM-1268, Bohdan)
- Sudar test seanse Anne Pełnialske sa Janom u 14:00 - popravljeno u seederu
- Usporenje table - null-safe mapiranje u GetTodaySessionsAsync i GetSessionDetailsAsync
- Automatsko osvežavanje nakon završetka snimanja mikrofonom - radi
- Batch rezerva ne prepisuje tekst iz prethodnih snimaka niti blokira interfejs statusom Processing
- Jezik transkripcije iz podešavanja seanse - STT poštuje preferencu pacijenta
- CSP - dozvoljavanje
*.clarity.ms,blob:u connect-src, analitike u script-src - Petlja osvežavanja autentifikacije - prekidanje zahteva nakon 401 i povratak na prijavu
- CSP MediaPipe WASM - zamućenje pozadine radi
- DEV/SANDBOX traka i na Azure FQDN-u, ne samo na prilagođenom domenu
- Lažan toast „Transkripcija nije uspela” pri ulasku u seansu - uklonjen
- Toast umesto crvenog banera kod neuspele transkripcije + uklonjeno dugme „Resample”
- Uživo sa dijarizacijom u video seansi - pokreće se ispravno
- AI strimovanje - AbortController po rukovaocu umesto deljenog (
BodyStreamBuffer was aborted) - Nginx non-root + Azure Container Apps - više iteracija da bi proradilo
- Distribuirana brava (sp_getapplock) - migracije pri pokretanju se više ne sudaraju kod paralelnih deployeva
- DbUpdateConcurrencyException u batch pooler-u transkripcije (SCRUM-1313, Bohdan)
- BlobNotFound kao očekivano stanje (SCRUM-1314, Bohdan)
- Stripe webhook payload-i koji nisu JSON (skeneri / botovi) - tiho obrađeni (SCRUM-1315, Bohdan)
- Detekcija audio formata prema magic bytes (SCRUM-1311, Bohdan)
- Otporno otpremanje audija + defanzivan Content-Type (SCRUM-1293, Bohdan)
- FK migracija ActiveEmbeddingModelId → ON DELETE NO ACTION
- Dev klijentski deploy - CACHE_BUST=
github.shaforsira rebuild frontenda
Ovo je najveće, najgušće izdanje ovog proleća. Ako vam funkcija deluje poznato - to je zato što je bila vaš zahtev ili vaš tiket. Hvala vam na svakoj prijavi i svakom snimku ekrana.
Tekst pripremio tim Therapy Support-a