Contiene overflow orizzontale nel pannello di visualizzazione e-mail alla terza colonna
- Aggiungi overflow-x-hidden a MessageBrowser contenitore esterno come bordo duro - Aggiungi overflow-x-hidden alla colonna 3 wrapper e overflow-x-auto all'area...
Sostituire Coqui TTS con Piper TTS (en US-norman-medium)
Il modello Coqui VCTK non ha altoparlanti di nome — sostituire con Piper TTS che ha l'esatta voce norman[medium]. Piper binario (~3 MB) e modello (~60 MB) vengo...
Reset stale hasAttachments on sync and accumulate correctly
- Reset has_attachments=false at start of bulk sync so stale true values from old false-positive MIME detection are cleared before re-indexing - Accumulate ha...
Pre-popolare DA sulla risposta / avanti e correggere l'invio daAddress
- DraftMessage ora trasporta daAddress in modo da fluisce da openNewMessage attraverso al compositore - MessageBrowser memorizza la mailbox attiva Indirizzo (co...
Supporto daAddress override on send
Aggiunge FromAddressRequest a EmailSendRequest in modo che il frontend possa specificare alias/shared/mailbox indirizzo da inviare. SmtpOnlyProvider ora usa que...
Aggiungi local net per split-DNS / LAN client RTP fix
I telefoni sulla stessa LAN di k1m1 collegano tramite DNS diviso (il dominio si risolve 192.168.4.22 internamente). Senza local net, Asterisk ancora pubblicizza...
Persist stregoneria contatto=memory fix e bloccare lo scanner SIP in startup.sh
- Inject [res pjsip] contact=memory in sorcery.conf prima che Asterisk inizi; il backup predefinito strery-astdb SQLite scende silenziosamente tutti i contatti ...
Sub-tab content fills full content-area width
Drop the centered max-width constraint (was 920 / 1200 / 680 / 720 depending on tab) on SubTabShell. The page already lives inside SettingsView's content column...
Fix attachment parsing and hasAttachment false positives
Three fixes to EmailImapService: 1. toEnvelope: narrow multipart check to multipart/mixed only — plain HTML+text emails (multipart/alternative) no longer sh...
Add download button to classic view attachment section
The classic view (MessageBrowser) had its own attachment list that was missing the download button — only the conversation view was fixed previously. Also align...
Add com.kamo.z.shared.commerce to EnableJpaRepositories scan
**************** (required by **************** in the shared library) lives under com.kamo.z.shared.commerce but was not included in the JPA repository scan, ca...
Proper layout, imbottitura e logo del fornitore
Telaio / spaziatura correzioni: - Tutte e sei le schede (Provider, Estensioni, Utenti telefonici, Dispositivi, Voce, Salute) ora avvolgere il loro contenuto in ...
Correct field name and type in getFromAddresses response
Backend was sending 'email' key but frontend expected 'address', and sent type 'shared_mailbox' when frontend expected 'shared'. Also fixes hasMailboxes flag wh...
Load FROM addresses from accessible mailboxes and aliases
Replaces the broken getFromAddresses() endpoint (which sent 'email' instead of 'address') with getAccessibleMailboxes() + listMemberAliases(), matching the same...
Utilizzare CockroachDB-compatibile DROP INDICE CASCADE sintassi
CockroachDB rifiuta ALTER TABLE ... DROP CONSTRAINT per vincoli UNICI con: unimplementato: non può cadere il vincolo UNICO "uk org oauth provider" utilizzando ...
Include com.kamo.z.shared.commerce nella scansione del repository
Ultimi propagatori di kamo-shared-library Non e' vero. (donotmodify.dao.services) che ha una dipendenza del costruttore E' il momento giusto. E' il momento gius...
Aggiungi il pulsante di download dell'allegato e decouple mark-as-read
- Aggiungi un pulsante icona Download a ogni riga di allegato in modo che gli utenti possano forzare una file download invece di aprire solo in una nuova scheda...
Spostare hostPath da MinIO (rclone FUSE) a locale /var/lib/pbx
MinIO via rclone FUSE non supporta POSIX chmod o symlink() — entrambi richiesto dal sistema modulo di FreePBX. Cambiato tutti FreePBX e MariaDB volumi hostPath ...
Wrap fwconsole/amportal tramite php per MinIO FUSE hostPath
/var/lib/asterisk è supportato da MinIO tramite rclone FUSE che non supporta POSIX chmod, quindi gli script fwconsole non possono essere eseguibili su quel volu...
Aggiungi PreStop gancio e terminazioneGracePeriodSeconds
I container si bloccavano a Terminating perché lo sfondo Asterisk processi continuati in esecuzione dopo l'uscita di apache2ctl (PID 1). PreStop hook invia SIGT...
Aggiungere bootstrap.php richiedono rigenerazione /etc/freepbx.conf
L'installatore scrive freepbx.conf con datasource=''' e un request once per bootstrap.php, che config.php dipende da caricare la classe FreePBX. La nostra versi...
Rigenerare /etc/freepbx.conf in riavvio
/etc è ephemeral (non un hostPath), quindi /etc/freepbx.conf scritto da installatore è perso su ogni pod riavvio. Aggiunto altro ramo per rigenerare esso da env...
Bypass start asterisk, attendere la presa di controllo
start asterisk utilizza `pidof asterisk` che restituisce un falso positivo sul pod riavvia, causando il ciclo di attesa-per-Asterisk per appendere. Ora startup....
Avviare Asterisk in background, attendere per esso, quindi eseguire installer
Il entrypoint.sh non esegue il programma di installazione FreePBX: inizia solo servizi. startup.sh ora replica i passaggi di impostazione del punto di entrata, ...
Lascia installare la maniglia entrypoint, non startup.sh
FreePBX installer (php install -n) richiede Asterisk di essere già Correre. La nostra startup.sh lo chiamava prima che Asterisk iniziasse, causando "Errore comu...
Mount /etc/asterisk only, not /etc, per correggere l'errore PHP simplexml
Montaggio completo /etc come un volume hostPath stava corrompendo l'estensione PHP caricamento anche dopo la semina dall'immagine — simplexml load file non defi...
Ridurre i limiti della CPU al rapporto 2:1 per eliminare il sovraimpegno
Docs 4→1 core, jibri 4→2 core, libretranslate 2→1 core, bergamotto 2→1 core, coturn 1→0.5 core. Risparmia ~7.5 core dai limiti del nodo.
Passare a escomputers/freepbx:17 con architettura corretta
stanchezza/freepbx non ha immagine FreePBX 17 (abbandonata dal 2022). escomputers/freepbx:17 (aggiornamento apr 2026, Asterisk 21 + FreePBX 17) richiede un pod ...
Parse formData prima di inoltrare per prevenire la corruzione binaria
request.text() su multipart/form-data corrompere i byte dei file binari; pass parsed FormData come init.body so forwardToApi skips request.text() e lascia prend...
Rimuovere minHeight:100vh causando doppie barre di scorrimento
Il minHeight:100vh ha superato il polpaccio del layout (100vh - 56px) contenitore, che ha causato sia lo scorrimento del livello del browser che l'interno overf...
Goccia stale Intestazione colonna Pay dalla tabella modelli di sicurezza
Quando il campo Employee Self-Pay Kamo Fees è stato rimosso, la corrispondenza TableCell nel corpo di riga è stato cancellato, ma la riga di intestazione aveva ...
Superficie vera ragione dietro GoDaddy 400 errore
GoDaddy ora restituisce HTTP 400 con codice=UNABLE TO AUTHENTICATE e corpo "Bad Request: Bad Request" quando un account non soddisfa la loro corrente produzione...
La censura sub-tab ora rende ATF prima per spec
Reorders the Censorship sub-tab cards to match the richiesto order: 1. Alcol, tabacco e armi da fuoco 2. Gamma di età dei membri consentiti 3. Ammessi dipendent...
Utilizzare il logo a tema semplice su home e impostazioni intestazioni indice
Domini di carico attivo tramite findByIdWithDomains, drop @Transactional
@Transactional su un metodo di controllo mantiene una connessione DB aperta attraverso l'intero caricamento del MinIO, e anche rischia LazyInitializationExcepti...
Rimuovi duplicato?type= da apiPath
forwardToApi già aggiunge incomingSearch (?type=...) dall'originale richiesta URL. Embedding ?type= una seconda volta nell'apiPath prodotto ?type=full?type=full...
Ripristinare la casella di posta per gli ID membri int64
Utilizzare getMemberIdString per mailboxs/member fetch, normalizzare id/mailboxId da EmailService, e guidare il commutatore da personale accessibile caselle di ...
URL del logo Cache-bust utilizzando il temaRevisione da config.json
DynamicMetaLoader ora memorizza il temaRevisione in sessioneStorage e incendi KAMO THEME CONFIG LOADED dopo aver ottenuto config.json. ThemeLogo ascolta per que...
URL del logo Cache-bust utilizzando il temaRevisione da config.json
DynamicMetaLoader ora memorizza il temaRevisione in sessioneStorage e incendi KAMO THEME CONFIG LOADED dopo aver ottenuto config.json. ThemeLogo ascolta per que...
Caricare direttamente al pubblico/{domain-folder}/img/ invece di posizionare il secchio
L'endpoint uploadLogo stava scrivendo a un segnaposto "sumtingwong" (impostazione non riempita) invece del percorso a tema pubblico reale dell'org. Logos ora An...
Rimuovere il nodo k2m1 giù dal valore predefinito dei nodi di bordo
k2m1 (10.8.2.1) è permanentemente giù. Lasciarlo nella lista di failover ha causato il caricamento di ripetizioni per appendere fino a quando i nuovi incendi di...
Applica timeout di connessione/scrittura/lettura a MinioClient via OkHttpClient
Senza timeout, un peer-replication downed del sito (k2m1) ha causato makeBucket e mettereObject chiamate a bloccare indefinitamente, surfacing come un infinito ...
Mailbox checkbox legge org domains, non domini del fornitore
Il cablaggio precedente letto /api/email/domains (email provider domains tabella). Quella tabella è popolata solo quando un provider di posta elettronica di ter...
Swrap {markets:[...]} busta in allegato finestra di dialogo
GET /api/security/commerce-markets restituisce { mercati: [...], messaggio: "..." }, Non un ammasso nudo. La finestra di dialogo Attach Commerce Market trattava...
Unire OTK-redirect in proxy.ts, eliminare duplicati middleware.ts
Next.js 15 rifiuta di costruire quando esistono sia middleware.ts che proxy.ts. The OTK hand-off redirect che ha vissuto in middleware.ts — inviando qualsiasi r...
Leggi nuovo *** da Redis master e dedupe OTK POST
Replica legge mancate sessioni appena scritte dopo lo scambio OTK, causando falso fallimento e reindirizzamento di login. Salta il ritardo intro quando otk è pr...
Protezione contro le risposte nonarray su /platform/orgs
Una risposta non-array (corpo vuoto, busta di errore, o {dati: [...]} wrapper) stava atterrando nello stato di orgs e soffiando il rendering con "e.map non è un...
Enforce /network inserire regole lato server
Rifiutare quando l'obiettivo è la sessione corrente org, il dominio personalizzato SSL non è confermata, o l'appartenenza all'obiettivo umano è inattiva. Condiv...
Richiedere membro di destinazioneId e convalidare l'appartenenza org
Enter-come ora costruisce sempre il nuovo *** con il target fornito dal client riga membro; respingere org/membro errato. Migliorare la registrazione debug sess...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.