KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

17,667
Total Changes
6,081
Features
5,345
Fixes
30
Projects
Filter by project
All Projects17,667AIService261APIService174BillingService158ConversionService110DaemonService138DocsService223ESigService91EmailService588InitializerService329KBService151KlusterServices745MCPGatewayService261MediaService604RAGService79SecurityService1,875TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,414kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,683kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild16CI523Chore776Docs3,257Feature6,081Fix5,345Other998Performance165Refactor278Revert23Style42Test162Upgrade1
August 12, 2026
Featurekamo-internal

Di' alla gente quando serve un conto e lascia che smettano di pagare

Un banner sulla home page quando un pagamento per cui questa persona è responsabile ha fallito, collegando direttamente alla loro pagina di fatturazione. Fino a...

kamo·2mo ago
FeatureBillingService

Un piano per organizzazione, un soffitto Enterprise 25 posti, e un modo per smettere di pagare

Il piano è ora una decisione a livello organizzativo e nient'altro può superarlo. Lasciare un self-payer o un manager di gruppo scegliere le proprie letture com...

Kamo·2mo ago
FeatureSecurityService

Relè omologato con ruolo risolto dai diritti

IL RUOLO E' DECIDEto QUI, dai diritti dell'interprete e dal loro rapporto con la soggetto -- mai dal corpo di richiesta. Un corpo che potrebbe nominare il propr...

Kamo·2mo ago
Featurekamo-shared-library

APPROVAZIONE TIMECARD ADJUSTMENTS (197) e FINALIZE PAY PERIODS (198)

Dividere così la separazione dei doveri è esprimibile: chi approva una cartolina non è automaticamente chiunque può chiudere un periodo di pagamento su di esso....

Kamo·2mo ago
Featurekamo-shared-library

La macchina di stato del livello di approvazione

Il dipendente presenta -> il manager approva -> payroll chiude, per decisione del proprietario. Quattro regole, applicate in una tabella di transizione pura e ...

Kamo·2mo ago
Featurekamo-internal

Scheda Member Timecard e scheda impostazioni HRS Timecard

La scheda membro è SELF-SERVICE SOLO e gated su identità, esattamente come la conformità giuridica: i suoi punti finali non prendono affatto parte, quindi è str...

kamo·2mo ago
Featurekamo-internal

/hr / roster di attenzione e il controllo orologio NavTop

Sostituisce il corpo HrTabPlaceholder. Il percorso, ingresso HR TABS, MANAGE TIMECARDS cancello e scheda i18n chiavi tutto già esistito; niente qui registra nul...

kamo·2mo ago
Featurekamo-shared-library

Database-clock accessor sul repository dei pugni

Ogni istante di pugno viene dal DB, mai il JVM: i pod riavviano e nodo orologio skew, e un record salariale il cui ordine dipende da quale pod ha risposto Non u...

Kamo·2mo ago
Featurekamo-internal

Itinerario BFF per /api/security/timecards

TimecardService è ClusterIP senza ingresso, quindi senza questa rotta l'intero caratteristica 404s nel browser mentre ogni servizio è sano e ogni costruzione è ...

kamo·2mo ago
FeatureSecurityService

Relè di SecurityService a TimecardService

Il confine dell'autorizzazione. TimecardService detiene i dati e il motore ma non sessione; questo tiene la sessione e decide chi può fare cosa, poi relè. The i...

Kamo·2mo ago
Featurekamo-shared-library

Secchiatura della giornata di lavoro, fase 2 della pipeline

Gli intervalli risolti diventano per-business-date secondi, pronti per l'allocatore. Un intervallo è SPLIT ad ogni confine del giorno di lavoro attraversa: un ...

Kamo·2mo ago
August 11, 2026
FeatureInitializerService

Registrazione KI e migrazione degli schemi

Le tabelle provengono da ddl-auto; questo corridore fornisce solo ciò che Hibernate non può -- gli indici unici parziali su un incarico primario aperto e un pay...

Kamo·2mo ago
Featurekamo-shared-library

Workweek e confini del giorno di lavoro

La settimana lavorativa è l'unità di straordinario FLSA -- un fisso, regolarmente ricorrenti 168 ore periodo -- e non è il periodo di pagamento. Un periodo biwe...

Kamo·2mo ago
Featurekamo-shared-library

Risoluzione intervallare, fase 1 della pipeline di calcolo

Le punture vengono risolte. Tipi puri, totali e sopra i valori piuttosto che entità così ogni fase è fissabile con nessun contesto di persistenza. Le durazioni...

Kamo·2mo ago
Featurekamo-shared-library

Assegnatore straordinario non piramide con preset di giurisdizione

Le regole sono DATI sulla forma RequirementRule già utilizzata in questa libreria, non codice rami, quindi la California è una riga di configurazione invece di ...

Kamo·2mo ago
Featurekamo-internal

Consegnare il fuso orario org al browser

Il modello di organizzazione client non aveva campo di fuso orario, utilizzareFormatters e prossimo-intl sono entrambi configurati senza tempoZone, e la chiamat...

kamo·2mo ago
FeatureSecurityService

E' IL MOMENTO GIUSTO

timezoneService.ts ha chiamato questo endpoint da quando è stato scritto ed è esistito in nessun servizio Java; il cliente ha ingoiato il 404 e risolto a UTC. N...

Kamo·2mo ago
Featurekamo-shared-library

WorkSite, l'ancora della giurisdizione

Nome WorkSite, non WorkLocation: TeamMember.workLocation è un esistente ufficio / rimuovere enum e un secondo simbolo da quel nome sarebbe collidere in ogni gra...

Kamo·2mo ago
Featurekamo-shared-library

L'occupazione e le revisioni di assegnazione con efficacia

Le punture riferiranno un ASSIGNMENT, non un membro. Questo è ciò che rende posizione corrente, il 29 CFR 778.115 tasso medio ponderato, Competenza multi-sito e...

Kamo·2mo ago
Featurekamo-shared-library

Tassi di pagamento effettivi, solo append-

Nessuna compensazione dei dipendenti esisteva ovunque su questa piattaforma prima di questa entità. È richiesto: il tempo di straordinario è calcolato contro il...

Kamo·2mo ago
Featurekamo-shared-library

Evento di registrazione e audit solo in Allegato

Entrambi serviti da interfacce NARROW Repository, non JpaRepository: deleteAllInBatch e all'ingrosso JPQL bypass entità callback, quindi la forma dell'interfacc...

Kamo·2mo ago
Featurekamo-shared-library

Timezone-of-record

Sito di lavoro di ordine dell'autorità -> membro -> org -> UTC. Il sito di lavoro vince perché le regole salariali e orari seguono dove il lavoro è PERFORMED. ...

Kamo·2mo ago
Featurekamo-shared-library

Guardia di rifiuto WORM condivisa

@Column(updatable=false) NON applica l'immutabilità -- Hibernate silenziosamente omette la colonna dall'UPDATE e la scritta stante sembra che sia riuscita. L'un...

Kamo·2mo ago
Featurekamo-shared-library

Enums di dominio e risolutore di versione point-in-time

Enums sono tutti @Enumerated(STRING) al sito di chiamata: ORDINAL emette un numerico gamma CHECK contenente AND, che SchemaCleanupRunner saltare deliberatamente...

Kamo·2mo ago
Featurekamo-internal

Mostra i membri che pagano per il loro posto, e smettila di offrire un secondo

Il punto finale di copertura spedito con chiavi di traduzione e nessun componente, quindi il domandare le risposte — che paga per il mio posto — non aveva ancor...

kamo·2mo ago
FeatureBillingService

Lasciate che il piano di un gruppo sia annullato e fermate il doppio pagamento per una persona

Tre lacune in quello che ha spedito ultimo: Un gruppo con un piano non potrebbe mai essere rimosso. delete() rifiuta mentre un live l'abbonamento esiste — corr...

Kamo·2mo ago
Featurekamo-internal

Un gruppo su cui puoi mettere le persone e pagare

Creare un gruppo ha prodotto un nome e nient'altro — nessun modo per aggiungere nessuno, nessun modo per il suo manager di scegliere un piano, da nessuna parte ...

kamo·2mo ago
FeatureBillingService

Rendere i gruppi di fatturazione lavorare fine a fine, e smettere di pagare per nulla

Un gruppo può ora riunire le persone, comprare un piano sulla carta del suo manager, e la mano i suoi posti fuori. Nessuna di queste esisteva: le uniche operazi...

Kamo·2mo ago
FeatureInitializerService

Schema per gruppi che possono effettivamente pagare

Tre corridori: BillingGroupRosterMigration crea billing pay group members — che un gruppo significa pagare, prima che abbia comprato qualcosa. org id è denorma...

Kamo·2mo ago
Featurekamo-shared-library

Lasciate che un gruppo di fatturazione sia il proprio payer

Un gruppo potrebbe essere chiamato e nient'altro. Il suo abbonamento non è mai stato stabilito — nulla nella piattaforma chiamata setSubscription — così sottosc...

Kamo·2mo ago
Featurekamo-internal

L'editor del corso HR, assegnazioni griglia e giocatore del corso membro

/hr/training sostituisce il suo segnaposto con i due sottotitoli il brief richiesto, e il membro La griglia di formazione assegnata guadagna la colonna d'azione...

kamo·2mo ago
FeatureDaemonService

L'orario di formazione promemoria tick

ORE 10, a differenza delle 13:00. La formazione ricorda ogni org al suo invio locale OWN ora, e Organization.timezone è di 21 ore (Pacific/Honolulu in Australia...

Kamo·2mo ago
FeatureDocsService

Il backend completo HR Training

Autorizzazione del corso, pubblicazione, assegnazione, giocatore membro, grading lato server, prove WORM e il richiamo spazzare — l'intero modulo dietro /api/do...

Kamo·2mo ago
Featurekamo-shared-library

I quattro modelli di posta elettronica di formazione

Stessa chiave costante/dotted divisa come famiglia legale HR: il CONSTANT è lo stelo del nome file, il templateKey la piattaforma SENDS è il valore punteggiato ...

Kamo·2mo ago
Featurekamo-internal

Una superficie membro per entrambi gli obblighi, un distintivo per entrambi

La scheda di conformità del membro aveva due sotto-tabs, Pending e Completed, per un tipo di obbligo. Questi sono uno STATO, non un tipo — quindi crollano in un...

kamo·2mo ago
FeatureDocsService

L'API di Formazione

Iscrizioni com.kamo.z.shared.hr.training in @EnableJpaRepositories — @EntityScan è ampio in modo che il le entità si trovano in entrambi i modi, ma i repository...

Kamo·2mo ago
FeatureInitializerService

Creare lo schema HR Training

Iscrizioni com.kamo.z.shared.hr.training nella lista esplicita @EnableJpaRepositories — @EntityScan è ampia quindi le entità si trovano in entrambi i modi, ma i...

Kamo·2mo ago
Featurekamo-shared-library

Carica i documenti in streaming e aggiungi lo schema HR Training

ImageService acquisisce uploadDocumentStreaming, la controparte in streaming di uploadDocument. Il modulo buffered non può esprimere un grande upload affatto: r...

Kamo·2mo ago
FeatureInitializerService

Creare gruppi billing pay groups esplicitamente, e annullare la collisione legacy

Crearlo in una migrazione piuttosto che lasciarlo a ddl-auto, che ha prodotto una tabella semi-costruita quando l'entità è stato indicato ai gruppi di fatturazi...

Kamo·2mo ago
FeatureEmailService

Dimensione ogni casella di posta contro l'archiviazione dell'organizzazione

Dovecot ora fa rispettare un limite per-mailbox, e nulla stava impostando la colonna legge. Questo lo scrive di notte, dopo l'istantanea di archiviazione in mod...

Kamo·2mo ago
FeatureKlusterServices

Fornire la quota di archiviazione sulla consegna in entrata e interrompere la spedizione della password DB

Lo storage di oggetti già rifiuta i contenuti che avrebbero preso un'organizzazione oltre la sua soffitto, che copre ogni dominio che attraversa il negozio di o...

Kamo·2mo ago
FeatureKlusterServices

Fornire la quota di archiviazione sulla consegna in entrata e interrompere la spedizione della password DB

Lo storage di oggetti già rifiuta i contenuti che avrebbero preso un'organizzazione oltre la sua soffitto, che copre ogni dominio che attraversa il negozio di o...

Kamo·2mo ago
Featurekamo-internal

Lasciare un membro autorizzare il proprio posto dalla console

Il pannello che chiude il loop su self-pay. Sembra solo dove la politica dell'organizzazione lo permette, e solo per le persone che non stanno già comprando per...

kamo·2mo ago
FeatureBillingService

Dite alle persone che il loro pagamento è fallito e ritirate l'abbonamento

L'abbraccio che non esisteva. fattura.payment failed ha scritto una riga e ha restituito: nessuna e-mail, nessuna bandiera, nessun cambiamento di stato e fattur...

Kamo·2mo ago
FeatureInitializerService

Aggiungere le colonne dell'orologio

past due since e suspension notified at, entrambi nullable. Null significa pagare e rispettivamente.

Kamo·2mo ago
Featurekamo-shared-library

Fare un pagamento fallito significa qualcosa

PAST DUE ha contato come vivere pienamente in entrambi i risolutori di diritto, senza timestamp e nessun tappo, quindi un cliente la cui carta non è riuscita ha...

Kamo·2mo ago
FeatureBillingService

Lascia che un membro acquisti il proprio posto, e chiuda un foro di parametri del corpo

Il self-pay non aveva traccia all'interno della console. Tutto sulla superficie di fatturazione è a forma di account — è già necessario tenere una riga AccountM...

Kamo·2mo ago
Featurekamo-internal

Lascia che il proprietario decida chi può pagare e gestisca i gruppi che fanno

Il proprietario aveva esattamente una leva sul pagamento di sé ed era la forma sbagliata: una irreversibile promuovere il gesto, senza alcun modo di dire in ant...

kamo·2mo ago
FeatureBillingService

Org policy e fatturazione gruppo API

Chi all'interno di un'organizzazione può pagare Kamo ora è responsabile e impostabile. Entrambi i percorsi sono org-scoped e quindi deliberatamente fuori /api/b...

Kamo·2mo ago
Featurekamo-internal

Un Plans & console di fatturazione un proprietario può effettivamente trovare

Non c'era modo di acquistare un primo abbonamento ovunque nel prodotto. Elenchi dei piani erano raggiungibili solo attraverso un abbonamento che hai già tenuto,...

kamo·2mo ago

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing