Changelog
Cosa c'è di nuovo.
Ogni miglioramento alla piattaforma, come si spedisce.
· BillingService
Endpoint interni della carta per l'addebito automatico della fattura di abbonamento
GET **************** e POST /charge, custoditi dalla rete condivisa X-Internal-Auth segreto (confronta a tempo costante; 403 senza di esso) PaymentIntent off-session sulla carta salvata di default del cliente con un Chiave di idempotenza fornita dal chiamante; decodificatori e autenticazione richiesta ritornano Come stati, non come errori.
· kamo-shared-library
Contabilità di addebito automatico della carta sulle fatture di abbonamento
Le fatture AUTO_BILL vengono addebitate il giorno della fatturazione una volta approvate e riprovate Ogni tentativo è numerato prima di essere effettuato e può durare fino a tre giorni Quindi la sua chiave di idempotenza non viene mai riutilizzata. Nuove colonne nullable: - tentativi di ricarica card_charge_attempts - last_charge_attempt_at - last_charge_error (errore di ricarica) - ultimo_intento_di_pagamento
· kamo-internal
Console di fatturazione degli abbonamenti: cassetto delle fatture, editor di bozze, pagamenti, fatturazione di mercato
Scheda fatture: righe in linguaggio semplice (periodo, totale, importo dovuto, data di scadenza, stato) aprire un cassetto con Le righe, i totali, i pagamenti ricevuti, dove e quando è stato inviato, le note e il PDF Editor di righe (tipo, descrizione, quantità, prezzo unitario per periodo, crediti, imposta, data di scadenza, note) con un Anteprima live lato client, quindi approva e invia tramite una finestra di dialogo precompilata dal contatto di fatturazione. Il record di pagamento sostituisce il segno di pagamento con un clic: importo (defaults to amount due, pagamenti parziali Annulla (con motivazione), Rimborso e Rispedizione. Annulla (con motivazione), Rimborso e Rispedizione. Panoramica: data della prossima fattura e se esiste una bozza, il saldo dovuto e Preparare successivo Il singolo totale dell'ordine è suddiviso in ricorrenti per periodo, spese di configurazione una tantum e spese di spedizione Totale prima fattura. Impostazioni del mercato: una scheda Fatturazione per i mercati di abbonamento (attendere l'approvazione o inviare sulla fatturazione) Giorno, giorni di piombo di bozza, giorni di pagamento dovuti, istruzioni di pagamento). Procedura guidata per l'ordine: quantità di licenze per componente aggiuntivo (numero di postazioni per impostazione predefinita per componenti aggiuntivi per utente), inviata come addonQuantities; ACH e metodi di pagamento di controllo. Notifiche: BILLING_INVOICE tipo, gated su VIEW_SUBSCRIPTION_INVOICES, dopo DISCLOSURE_REQUESTED. Inoltre: updateSubscriptionOrder viene inviato come PUT (la mappa del percorso POSController; PATCH non ha risposto nulla), In questo modo le note possono essere aggiunte a un ordine di bozza; la casella delle note lo dice su qualsiasi altro ordine.
· SecurityService
Fatturazione automatica dell'abbonamento - bozze, revisione del proprietario, e-mail con PDF, pagamenti, promemoria
SubscriptionBillingJob (orario, per un pod e all'avvio) esegue il ciclo: - sollevare ogni fattura di rinnovo come bozza lead-day prima della sua data di fatturazione - spostare gli abbonamenti sul periodo successivo una volta fatturati - dire ai proprietari del venditore in-app (BILLING_INVOICE) e via e-mail che una bozza è in attesa - inviare bozze il giorno della fatturazione solo nei mercati impostati per l'invio automatico (default: (in attesa di approvazione) - contrassegnare le fatture scadute come scadute, avvisare i proprietari e ricordare al cliente settimanalmente InvoiceDelivery invia al cliente la fattura con un PDF (InvoicePdfRenderer, PDFBox) e un collegamento di visualizzazione online sull'host del firmatario, con la rimessa dell'organizzazione InvoicePublicController fornisce quel link (token nel corpo, tasso limitato, una risposta per i token sconosciuti). Gli endpoint POS: - modificare una bozza - inviare/rinviare con destinatario e messaggio - destinatario predefinito - PDF - registrare i pagamenti con la data di ricevimento, metodo e riferimento (parziale OK) - annullare con un motivo - politica di fatturazione per mercato - Quantità di licenze aggiuntive nel calcolatore dei prezzi
· kamo-signer-monorepo
La fattura del cliente, online — personalizzata, stampabile, con download in PDF
/[locale]/i/[token] risolve la fattura lato server (token in un corpo POST, mai un URL) e lo rende nel proprio nome e colore del venditore, ricadendo su un neutro quasi nero piuttosto che Grande stato in alto, fattura-a, date, periodo di servizio, linee, totali, come pagare, /pdf restituisce in streaming il PDF di SecurityService con un nome di file pulito Qualsiasi errore è una pagina indistinguibile "non più disponibile".
· EmailService
BILLING_INVOICE, limitato alla visualizzazione delle fatture di abbonamento
Sollevato da SecurityService ai proprietari dell'organizzazione di vendita quando un La bozza della fattura di abbonamento è in attesa di revisione o la fattura di un cliente va Viene anche ricompilato sulla libreria condivisa contenente il file commerce.invoice_* Modelli di e-mail.
· kamo-shared-library
Prezzi dei componenti aggiuntivi basati sulle licenze e un vero ciclo di vita della fattura di abbonamento
Una regola per la quantità di add-on (AddOnLicenses): ogni add-on fattura le licenze ACQUISTATO, come i posti - componenti aggiuntivi per utente di default al numero di posti, archiviazione al Il calcolatore dell'ordine ha addebitato tutto ciò che non era PER_SEAT Una volta, quindi un ordine di 10 posti con e-mail di terze parti e telefono era al prezzo di $ 5 invece di Le righe degli ordini ora contengono la quantità reale e il prezzo unitario; una bozza di riprezzamento mantiene la quantità reale Le licenze che dichiara. L'attivazione trasforma le righe aggiuntive dell'ordine in istanze aggiuntive con licenza (erano Non è mai stato addebitato un add-on), ancora il giorno di fatturazione, include Aggiunge i componenti aggiuntivi in MRR e crea la prima fattura come bozza. Approvazione di un ordine pagato da Fattura, bonifico, ACH o assegno ora concede l'accesso come pagato; solo COMP ha fatto qualcosa. Servizio di SubscriptionInvoice: - bozze di rinnovo sollevate lead-day in anticipo, una volta per periodo (vincolo unico) - i periodi si rinviano al giorno di fatturazione solo una volta fatturati - le versioni di prova vengono convertite; gli abbonamenti non rinnovabili terminano - pagamenti registrati con data di ricevimento, modalità e riferimento, parziale Pagamenti supportati (nuovo **************** - bozza di modifica con totali lato server - cancellazione/rimborso custodito - Contrassegno scaduto e promemoria di pianificazione - token di visualizzazione online (SHA-256 a riposo) - numerazione INV-YYYY-NNNN sul contatore dei documenti condivisi MarketInvoicePolicy per mercato: invio automatico vs blocco (blocco predefinito), giorni di consegna, scadenza 30 giorni, istruzioni di pagamento. PaymentMethod guadagna ACH e CHECK. Nuovi modelli di email commerce.invoice_sent / invoice_reminder / invoice_ready e NotificationKind FATTURAZIONE_FATTURA.
· BillingService
Ricostruisci il Stripe mirror da Stripe ogni notte e all'avvio
Gli eventi più vecchi di 30 giorni non possono essere recuperati, quindi la fattura di settembre e Gli eventi di abbonamento persi a causa della mancata corrispondenza della versione API sono irrecuperabili StripeMirrorReconciler legge ogni sottoscrizione supportata da Stripe e i relativi Fattura direttamente e scrive account_subscriptions / account_invoices, alle 03:30 e una volta dopo l'avvio (fuori dal thread di avvio). Una riconciliazione può L'orologio di inadempienza su una fattura pagata ma non inizia mai a sollecitare.
· TranslateService
Un motore, MADLAD-400, per ogni coppia di lingue
Sostituisce i fornitori LibreTranslate, Bergamot e IndicTrans con MadladProvider (klusterservices madlad/). Le loro lingue non si sovrappongono, e una coppia nessuno di loro era tornato come sua fonte inglese e fu salvato come la traduzione; MADLAD traduce tra due di ~400 lingue, quindi chat in entrata in qualsiasi lingua raggiunge anche l'inglese. - Il fornitore invia un elenco di testi in una sola richiesta: un modello 3B è legato leggendo i suoi pesi e 16 stringhe corte ha preso 9.7 s insieme contro 25.8 s uno per uno. ProviderRouter.translateAll groups a batch's keys (32 testi / 6.000 caratteri), e un gruppo il motore non riesce è retried testo da testo in modo che un testo cattivo non riesca da solo. - TranslationService.batch mascherine protetto nomi per primo, invia ogni testo distinto una volta, in gruppi, e ripristina il nomi dopo; una risposta che ha perso uno è ancora tradotta intorno ai nomi. La scadenza del chiamante è verificata tra i gruppi. - Fino a quando il motore non ha risposto /lingue il fornitore sostiene 22 lingue di Kamo, mai nessuno: una coppia non reclamata è ritornato come fonte inglese e salvato come la traduzione. - Un timeout non viene mai riattivato; 503 occupati e 5xx sono, all'interno della scadenza del chiamante. Il lavoro di fondo tiene una slot per pod così un messaggio di chat mai code dietro una sincronizzazione.
· KlusterServices
Un motore di traduzione per ogni coppia, MADLAD-400-3B sulla CPU
Sostituisce LibreTranslate (Argos), Bergamot e Kamo IndicTrans, i cui gruppi linguistici non si sovrappongono e le cui lacune sono tornate come l'inglese. MADLAD-400-3B-MT (Apache-2.0, int8 CTranslate2 di Santhosh Thottingal) traduce tra due di ~400 lingue, quindi chat in entrata in qualsiasi lingua ora raggiunge anche l'inglese. - 8 core / 16 GiB riservati, fino a 16 core / 32 GiB, come richiesto. Due flussi di otto fili: sedici thread su un flusso misurato più lento (83 vs 123 chars/s) sulla classe CPU dei nodi (Haswell, AVX2). - L'API prende liste: 16 stringhe corte in una sola chiamata hanno preso 9.7 s contro 25.8 s uno per uno. - Tutti gli input terminano con </s>; senza di essa si è verificata una breve etichetta (Save è tornato tre volte, e in arabo come 'Salva il 10% del valore dell'ordine'). Il fascio segue la lunghezza del pezzo. - I segnaposto vanno al modello come {0}, non KMPH0: perso in 0 di 60 stringhe in ciascuno di ar, hi, sw e zh contro 11, 6, 6 e 4. Una risposta che ancora perde uno è chiesto di nuovo più ampio, poi tradotto intorno a esso. - Stesso modello di indictrans/: hah-pinned modello e ruote catturati da un Lavoro, che serve pod non ha egresso, auth proxy in fronte, radice di sola lettura, k3m1. I vecchi motori continuano a funzionare e vengono rimossi nel prossimo commit, una volta TraduciServizi parla a questo.
· kamo-internal
Il filtro ufficiale del prestito di Pipeline mostra i volti e apre la scheda membro
Ogni ufficiale nelle opzioni del filtro, e quello selezionato, è il loro avatar e il nome avvolto nella MemberHoverCard condivisa. Un clic seleziona ancora.
· kamo-internal
L'ufficiale di prestito di Pipeline apre la carta dei membri condivisa
L'ufficiale di prestito su ogni accordo è avvolto in MemberHoverCard, il popup ogni altro usi superficiali per un membro. Si apre su hover e messa a fuoco della tastiera; un clic ancora apre la finestra di dialogo assegna-registratore.
· kamo-internal
A full-width, full-height HMDA LAR pagina; pulsanti di marca leggibili sulla pagina del prestito
- HMDA LAR: il registro è una griglia AG che prende tutta la larghezza e ogni pixel sotto l'intestazione, e scorre dentro di sé — la pagina non scorre più. Fascicolo dettagli aperti in un popover sul corpo anziché all'interno della scatola di troppopieno del tavolo (che ha messo le barre di scorrimento sul tavolo ogni volta che uno è stato aperto). Sommario piastrelle (prestiti, volume, errori, avvisi), ricerca, un filtro solo per problemi, prestito a spillo e rilascia colonne. - Cinque bottoni colorati sulla pagina del prestito (Pricing, Pipeline, Disclosures) aveva testo-gray-900 sul colore del marchio; sono bianchi come il resto. - HMDA LAR, il Consiglio e il reindirizzamento delete-loan sono andati a / applicazioni, che non ha pagina; ora ritornano a dove è venuto il membro, altrimenti /commerce. I pulsanti HMDA LAR e Board di Pipeline passano la loro posizione. Completa 50fee1b25.
· kamo-internal
Una nuova ipoteca Pipeline — offerte aperte prima, quelli passati un clic di distanza, e ogni affare gestito dalla sua carta
La scheda Pipeline sotto un mercato ipotecario è ricostruita intorno alle transazioni: - Aperto | Passato | Tutte le viste (pasto = completato o cancellato), con conteggi - numeri di titolo che contano fino e doppio come filtri: transazioni aperte, prestiti in volo, volume in volo, chiusura in 30 giorni, bisogno di attenzione (l'obiettivo più vicino, o un prestito negato) - una rotaia di fase che mostra dove si trovano le offerte aperte; fare clic su una fase per filtrare - ogni accordo è una carta: anello di progresso intorno al mutuatario, stadio, totale quantità, quanti giorni per avvicinarsi (ambra presto, rosso in ritardo), e il prestito ufficiale; si espande in vigore ai suoi prestiti - gestire dalla carta: rinominare, assegnare/cambiare l'ufficiale di prestito (il condiviso membro picker), aggiungere un altro prestito all'accordo, rimuovere un progetto di prestito, copiare il numero di transazione, aprire qualsiasi prestito - ricerca ("/" a messa a fuoco), filtro di prestito-ufficiale, quattro tipi, esportazione CSV, Trova prestito, pensione e HMDA LAR tenuto; ancoraggi guidati-tour tenuti - i colori provengono dal marchio dell'org; movimento ridotto rispettato Più veloce da aprire: - PrimeReact (il suo DataTable, il tema CSS e il carattere icona) è andato dalla pagina — è stato usato qui e nessun altro - ogni schermo steward ma la Pipeline ora carica in prima visita invece di tutti gli otto in un pezzo - l'ultima lettura è tenuta per la vita della pagina, così tornando alla scheda vernici subito e rinfresca dietro di esso - PipelineView ha risolto un collegamento profondo ?tab= solo in un effetto, quindi il primo vernice montato mercato 0 e ha iniziato i suoi carichi prima di commutazione - coppie con SecurityService 7ca04ac3, che rimuove le query N+1 dietro entrambi gasdotti legge Tavole di Steward riordinate: Pipeline, Documenti, Prezzi, Sottoscrittura, Capitale & Rischio, Ingestione, Catalogo — Governance, non nell'ordine richiesto, rimane ultimo.
· SecurityService
Approva e permette sempre di controllare i diritti di cui ha bisogno uno strumento in un solo caso
Approvazione del follow-up 2026-10-21: la carta di Tool Plane ora nomina i diritti il servizio dello strumento fa rispettare in alcuni casi solo (sempreAllow.rights Quando: contatti del collega, timecard di un altro membro, ...). The l'anteprima li prende come quando=CODE=RIGHT|RIGHT (o CODE=any:...) e le risposte ogni caso, controllato come i diritti propri dello strumento: che cosa il SI ancora manca, e se questa persona può dare.
· kamo-internal
Nastri d'angolo su ogni bordo, su schede, e sulle pagine aperte della barra superiore
Seguendo il giro a sinistra, gli altri tre bordi ottengono lo stesso trattamento, su una mappatura fissa: una regola superiore diventa un nastro superiore sinistro, una regola destra nastro inferiore destro, un fondo regola un nastro inferiore-sinistra. CornerRibbon impara il suo angolo. Il componente prende `corner`; cornerRibbonSx prende un oggetto opzioni ({ size, corner, pseudo, ancora }, il vecchio posizionale forma funziona ancora); la classe CSS guadagna --tr, --bl e --br. La luce ancora viene dall'alto, così in un angolo inferiore la ombreggiatura inversa e l'ombra cade tra la band e l'angolo. Tab: il tema principale nasconde l'indicatore della scheda di MUI e dà ogni scheda selezionata un nastro inferiore-sinistra xs (bottom-right su una barra verticale) nella scheda colore. Un bar che vuole un altro set di colori --tab-ribbon-color; per-site gli stili dell'indicatore vengono rimossi o portati sopra ad esso, e le barre della scheda costruite a mano (IoT, vista sul piombo, softphone, emoji picker, Docs) contrassegnare la loro scheda allo stesso modo. Nav: la barra superiore seleziona un'opzione esattamente come fa la rotaia, illuminata con un bianco xs nastro invece di una sottolineatura, e un menu di strumento (Mail, Docs, Telefono e il resto) viene selezionato mentre una delle sue pagine è aperta, in entrambi i nav. Sinistra da sola come prima: divisori, barre di avanzamento e di carico, giranti, pieni bordi, linee di connettori, maniglie e contenuti gli stili membri stessi.
· SecurityService
S-I1 accetta REPLACED, così IoTService revoca una sovvenzione di Alexa link sostituita
Proprietario 2026-10-21. KamoOAuthRevokeReason.REPLACED esiste già (STRING-persisted, no CHECK su revocad reason), così nessun cambiamento condiviso-lib o DDL; la whitelist revoca interna aggiunge e controlla OAUTH GRANT REVOKED (REPLACED). Le ragioni di sicurezzasolo per il servizio (CODE REUSE, REFRESH REUSE, CLIENT REVOKED, ORG VOIDED) rimangono rifiutate (pinned).
· kamo-internal
I nastri d'angolo sostituiscono ogni binario d'accento a sinistra
La pagina di System Bugs è andata prima. Questo cambiamento fa il resto del kamo-internal: circa 120 file in cui un oggetto è stato segnato da una regola colorata a sinistra bordo — un bordoLeft, un bordo di Tailwind-l-N, un box-shadow inset, a : o barra assolutamente posizionata, o una breve barra flessibile principale — ora portare l'angolo nastro nello stesso colore e sotto la stessa condizione. CornerRibbon guadagna due forme per i luoghi che un elemento bambino non può andare, entrambi disegnando il nastro identico da un gradiente di 135 gradi: - cornerRibbonSx (colore, dimensione, pseudo, ancora) — un frammento sx sull'elemento proprio pseudo-element. ancora=false lascia posizione da solo per le file AG Grid, che la griglia si pone; '&::after' evita la griglia:: prima delle tinte. - la classe kamo-corner-ribbon in globals.css (--xs/--md, colore via --corner-ribbon-color), per Tailwind, styled-jsx e CSS ricco di testo. Testo ricco i blocchi usano la stessa regola. LegalStateRail diventa LegalStateRibbon. I rendering delle celle di rete rendono il nastro senza involucro posizionato, quindi si ancora al assolutamente posizionato .ag-cell e si siede nell'angolo della fila. Il marcatore attivo del nav nella rotaia è un nastro bianco xs; la variante della barra mantiene il suo basso in linea. Ruote animate (l'arrivo dell'arma, il polso disponibile) mantengono il loro bagliore e perdono solo la rotaia. Questi sono stati lasciati da soli perché non sono indicatori dell'elemento: 1px pannello divisori, connettori timeline/tree, barre di progresso, maniglie di ridimensionamento, l'audio gamma di selezione della forma d'onda, e barre top-edge o bottom-edge.
· kamo-internal
Approva e permette sempre, il nome perché, l'immagine del SI, i colori propri dell'org
Permettere sempre: dalla barra delle decisioni, l'approvazione sceglie solo questa azione o la tutto il genere (in parole semplici), legge esattamente che cosa cambia nel lavoro del SI descrizione e conferma; SecurityService scrive la regola (preview/grant/revoke relè), allora la richiesta è approvata e la SI ha detto. Qualcuno che potrebbe non cambiare la descrizione del lavoro è detto perché e chi può, e può approvare una volta; un diritto le esigenze di azione è offerto solo a qualcuno che può dare. "Richiedimi" nel il risultato e la regola nella descrizione del lavoro del SI lo riporta indietro. Perché: un follow-up nomina la richiesta precedente nelle parole della propria carta, che ha deciso e quando, con un link; la linea di descrizione del lavoro dice quale regola chiede. Avatar: la ricerca delle finestre di chat (fetchMemberAvatar: foto, quindi scelto avatar, iniziali ultimo) sulla carta e nella casella di posta. Colori: le approvazioni UI vernici da --colore-primario attraverso ApprovalBrandScope (bottoni, chip, messa a fuoco, distintivi, progresso, avvisi, stato); parole su un marchio di riempimento sono in bianco o nero per la propria luminanza del marchio, quindi qualsiasi marca legge a AA. Rischio e lo stato mantenere i loro colori semantici.
· kamo-login
Alexa acconsente nomi link per posizione e punti un ri-link per Sostituire
· kamo-internal
Alexa sezione dice che ogni account Alexa è il suo link
· MCPGatewayService
Le autorizzazioni in piedi d'onore; offrono Approvo e permettono sempre sulla carta
CharterPolicy legge risolto.toolApprovamenti e la bandiera in piedi di ogni regola. A la regola del membro su uno strumento sta per la regola della sua classe per questo strumento; un il permesso in piedi (introdotto da un'approvazione) detiene sotto un SUPERVISED soffitto ma mai per un SI SHADOW o un charter che non poteva essere letto, e La classe FORBIDDEN vince ancora. La pipeline e il primo contatto giudice di controllo da strumento, quindi un invio sempre consentito chiede ancora prima di un primo contatto. La carta di approvazione guadagna sempreAllow: offerto a meno che lo strumento non sia solo persona, muove denaro, tocca sicurezza o dispositivi, o il suo tipo di azione non è mai permesso per il bene, con la ragione in parole semplici, il titolo dello strumento, il tipo in parole semplici e i diritti di cui lo strumento ha bisogno.
· SecurityService
Approva e permette sempre, da un'approvazione del SI
E' il momento giusto. # POST # {approvazione, campo di applicazione TOOL|CLASS, sovvenzioneRights?} E' il momento giusto. (Richiedimi di nuovo) L'approvazione nomina lo strumento e il tipo di azione; solo qualcuno che può modificare La Carta di SI (CharterAccess.editRefusal) la concede, tramite MemberCharterWriter (validazione, timbro nuovo, runtime detto). Rifiuto per i tipi StandingPermissioni mai permette, una comunicazione-policy o approvazione di divulgazione, una richiesta decisa, un'ombra SI, una regola un altro set di strati e una classe proibita; ogni rifiuto e il prima/dopo sono detti in parole semplici. A destra lo strumento ha bisogno di SI manca è offerto solo a qualcuno che gestisce la sicurezza dei membri e lo tiene.
· kamo-shared-library
Le autorizzazioni in piedi da un'approvazione (Approvare e permettere sempre)
L'oggetto APPROVALE di un membro può ora nominare uno strumento (tool name) e registrare il l'approvazione è venuto da, che ha concesso e quando (item origin APPROVAL). The risolutore risposte risolto.toolApprovamenti per le regole degli strumenti che siedono sotto una classe regola che è il default o il membro proprio e non FORBIDDEN; regola di uno strato non è mai allentato. StandingPermissions elenca i tipi di azione che non sono mai permesso per il bene (money, dispositivi, computer del SI, rilascio di informazioni, fuori condivisione, primo contatto) e dice ogni tipo in parole semplici. La vista e timbro sono byte-for-byte invariato per i charter senza questi articoli. DDL: servizio di sicurezza E' il momento giusto. (applicato).
· kamo-internal
I nastri d'angolo sostituiscono le guide d'accento a sinistra su System Bugs
CornerRibbon è la forma dell'indicatore del nastro del pannello del segnale di kamo-login: un sottile banda diagonale ombreggiata dall'angolo in alto a sinistra, in qualsiasi colore, a tre dimensioni. Si blocca al suo angolo scatola e eredita il raggio del genitore, quindi un genitore ha solo bisogno di posizione: relativo. Sostituisce il binario sulla scheda bug, il segnale di stato del cassetto, il il genitore citato del thread e la sua barra di risposta, e la scheda di consegna SI mostrata nel thread (condiviso con Supporto Live).
· KlusterServices
Svc iot può abbonarsi a iot.live.device.> — il canario di produzione IoT guarda il suo telaio live (SP14)
· kamo-marketing
Annuncio IoT Dispositivi — la categoria /features, il gruppo di funzionalità e /device-compatibilità andare in diretta (SP14 T+0)
IoT Devices è stato pubblicato il 2026-10-21 03:47 UTC (catalogo override COMPLETED + disponibile, approvato dal proprietario). The la pagina di compatibilità legge il feed dal vivo: 8 servizi oggi.
· kamo-internal
Carte di approvazione in lingua normale e inbox di approvazione premium
Proprietario ordine 2026-10-20: la scheda Approvazioni del Centro Interazione e i popup di approvazione ha mostrato i membri GUID e JSON. Ogni approvazione ora legge come carta una persona non tecnica comprende: il volto e il nome del SI, una frase di quello che vuole fare ('Missir Juan Gesù vuole segnare il compito “Riportare Jane sulla valutazione” come fatto’), i record tocca come chip che li aprono, il messaggio esatto che invierà (email, testo, chat, chiamata, riunione), i dettagli come campi etichettati (money, tempi nella zona del lettore, telefoni e indirizzi come loro popup), perché si chiede, il rischio in parole semplici, che cosa l'approvazione e il declino fanno, e un conto alla rovescia a quando manca. La richiesta cruda si trova solo sotto un dettaglio tecnico chiuso. Approva, decoder con una nota, chiedi al SI in chat, e modificare la formulazione prima di approvare dove il server lo consente; scorciatoie A / D / E. La casella di posta (Interaction Center scheda, e il mozzo Workforce con un pannello di lettura accanto elenco): ricerca, filtri per genere e rischio, smistamento (soonest to lapse first), multi-select con Approva tutti / Decoder tutti (quelli ad alto rischio di nome primo), approvare e decoder rapido su ogni riga (una richiesta ad alto rischio si apre invece), navigazione della tastiera, righe ottimistiche che lasciare come sono decisi, caricare scheletri e uno stato vuoto caldo; MotionConfig ridottoMotion=user, transizioni CSS con la propria query; leggero e scuro; layout del telefono. Strings nel dizionario (pushed first); una frase il dizionario manca o che deriva dal server rientra nell'inglese del server, mai una chiave.
· kamo-internal
I Dispositivi (IoT) nav badge opzione si aprono allarmi, impulsi mentre uno aspetta, e il suo menu porta a Allarmi
Proprietario, 2026-10-20 (IoT close-out F12): Gli avvisi IoT rimangono e-mail solo; gli allarmi raggiungono le persone nell'app. - Dispositivi (IoT) è un menu (toolKey iot) delle sue pagine, le righe della scheda (IOT TABS), Allarmi tra di loro con il conteggio a braccio aperto, quindi Impostazioni dispositivi (IoT) per un membro che può aprire una scheda impostazioni. - Il distintivo del grilletto è l'allarme aperto che il membro può vedere (il riassunto dell'allarme, shelved/suppressed lasciato fuori dal server); l'icona pulsa (blinkIcon, il trattamento di posta/supporto) mentre si aspetta un riconoscimento. Vivi dal polso di notifica IoT, rt.org.iot, focus/reconnect e un piano di un minuto; una lettura non riuscita mantiene l'ultimo conteggio piuttosto che rivendicare nessuno. - Launchpad (sezioniForTool) e la tavolozza di comando (lands su /iot) seguire. - badge Nav: l'errore della tavolozza della luce rosso in entrambi i temi (dark #f44336 sotto bianco era 3.7:1). Shots /tmp/iot-wt/fu-shots/F12 (rail espanso/collapsed, bar; light/dark; ascia pulita).
· InitializerService
KamoCameras è incluso in Business e su, e su ogni rung Premium dell'universo e sopra
Proprietario, 2026-10-20 (IoT close-out F11): Affari, Enterprise e i loro equivalenti negli altri universi. - PlatformTierMatrixMigration: Business acquisisce KAMO CAMERAS (Enterprise eredita). - UniversePackages: Family/Comunità/Personal Premium lo ottengono (Enterprise/Pro eredita). - TIER LADDER: businessUp (era piattaformaSolo) più le rungs dell'universo da UniversePackages. - KamoCamerasTiersTest pins la scala; i pacchetti contratti di UniverseCatalogMigrationTest seguono. Le righe di produzione sono state scritte per la prima volta. 2 righe di catalogo, 20 file di piano; i piani di sign.pink lo escludono, come ha fatto SP14 E2 per IoT), perché spingere KI non funziona nulla.

Il tuo universo ti sta aspettando.
Aggiungi i prodotti quando sei pronto: nessuna migrazione, nessun nuovo login, nessuna richiesta di pagamento.
Gratis per sempre — nessuna carta di credito richiesta