KamoCRM

Live Change Log

Jede Funktion, fix und Verbesserung, geschrieben, wie es Schiffe. Nichts wird für einen Start zurückgehalten.

17,500
Totale Änderungen
5,986
Merkmale
5,284
Behebungen
30
Projekte
Filter nach Projekt
Alle Projekte17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
Filter nach Typ
Alle ArtenBuild16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
March 17, 2026
FixAIService

Serialisieren Entity IDs als Strings, um JavaScript Präzisionsverlust zu verhindern

CockroachDB unique_rowid() generiert INT8-Werte, die JavaScript überschreiten Number.MAX_SAFE_INTEGER, verursacht ID Korruption im Frontend.

Kamo·7mo ago
March 16, 2026
Fixkamo-internal

E-Mail-Inhalte auf volle Breite des Detail-Panels ausdegradieren

Entfernen max-w-4xl Einschränkung, so dass die E-Mail-Karosserie, Anhänge, und schnelle Antwort füllen 100% der verfügbaren Panel-Breite.

kamo·7mo ago
FixAIService

OTK Authentifizierungsunterstützung hinzufügen, die SecurityService-Muster abgleicht

- OTKPreAuthFilter hinzufügen, um X-OTK Header zu validieren und zu *** session auflösen - Update SessionHelper, um von Anfrage-Attributen zu lesen, die durch F...

Kamo·7mo ago
FixEmailService

Verwenden Sie @Value für RspamdConfig und machen Training non-blocking

RspamdConfig verwendet jetzt @Value, um bestehende Projektmuster anzupassen. Rspamd Trainingsausfälle verhindern nicht mehr, dass die Nachricht bewegt wird.

Kamo·7mo ago
Fixkamo-internal

Stellen Sie sicher, dass Junk und andere Systemordner immer in Sidebar erscheinen

Ergänzt garantierte Systemordner (INBOX, Sent, Drafts, Junk, Müll, Archiv) auch wenn sie noch nicht auf dem IMAP-Server existieren.

kamo·7mo ago
Fixkamo-internal

Auto-refresh message list when draft is saved or email is sent

MessageTool dispatches email:folder-changed events after saving a draft (Drafts) or sending an email (Sent). MessageBrowser listens and refreshes if the affecte...

kamo·7mo ago
Fixkamo-internal

Match message tool color scheme to other tools and rename to New Email

Switch from dark theme to the light theme used by chat/calculator tools: light gray gradients, white inputs, var(--color-primary) accents. Rename tool from "New...

kamo·7mo ago
Fixkamo-internal

Restore full WYSIWYG toolbar options in message tool

Adds back headers, strike, background color, alignment, and image options. Toolbar wraps onto two lines when in compact (non-maximized) mode via flex-wrap.

kamo·7mo ago
Fixkamo-internal

Markieren Sie Nachrichten wie auf IMAP-Server und Aktual-Ordner zählt

Klicken Sie auf eine Nachricht jetzt PUT **************** mit gesehen:true auf dem Backend, beharrlich auf dem Lesezustand zu IMAP. Sidebar-Ordner ungelesen zäh...

kamo·7mo ago
FixEmailService

Kopie auf gesendeten Ordner nach dem Senden von E-Mail speichern

Transport.send() sendet nur per SMTP ohne Speichern an IMAP. saveToSent() hinzugefügt, um die Nachricht an den Sent-Ordner anzuhängern mit dem SEEN-Flag gesetzt...

Kamo·7mo ago
FixEmailService

STARTTLS deaktivieren und für Port 25 intern SMTP

Port 25 auf internem Postfix unterstützt STARTTLS nicht und erlaubt Relais von Cluster-IPs über mynetworks. Nur authentisch ermöglichen und STARTTLS bei Verwend...

Kamo·7mo ago
Fixkamo-internal

Verschieben Sie useState Hook vor frühen Rückkehren, um React-Fehler zu beheben #300

useState(Synchronisierung) wurde nach bedingter vorzeitiger Rückkehr erklärt, Verstoß gegen Reacts Regeln der Haken.

kamo·7mo ago
FixEmailService

Verwenden Sie SMTP Port 25 statt 587 für internen Postfix

Postfix hört nur auf Port 25 innerhalb des Clusters. Hafen 587 (Einsendungen) ist im Container nicht aktiviert.

Kamo·7mo ago
Fixkamo-internal

Schnelle Antwort senden Taste - entfernen Client OTK, hinzufügen Anmeldeinformationen und Feedback

Die schnelle Antwort war das Senden eines Client-generierten OTK-Headers, dass die proxy verwendet nicht (proxy erzeugt seine eigene). Entfernt die unnötige OTK...

kamo·7mo ago
Fixkamo-internal

LabelPicker holt und zeigt aktuelle Nachrichtenetiketten an

- getMessageLabels API-Anruf auf emailApi hinzugefügt - LabelPicker holt aufgetragene Etiketten auf Halterung über GET Endpunkt - Toggle aktualisiert lokalen Zu...

kamo·7mo ago
Fixkamo-internal

Wire up verbleibenden unverdrahteten UI-Elemente in Nachrichten-Seite

- FolderSidebar: Ordneroptionen-Button öffnet jetzt umbenennen/löschen Menü - FolderSidebar: Ordnereinstellungen in Ordner umbenannt, umschalten Ordner - Folder...

kamo·7mo ago
Fixkamo-internal

Schnelle Antwort senden Antworten und Abbrechen-Buttons

Der schnelle Antworttext und Buttons waren statisch ohne Zustand oder auf Kllick-Handler. Schickt jetzt richtig Antworten über die E-Mail API und löscht den Tex...

kamo·7mo ago
FixDocsService

Verwenden Sie docs-api.* für WOPISrc URL statt api.*

Die WOPI Endpoints (/wopi/files/**) live auf DocsService, der ausgesetzt bei docs-api.kamocrm.com . not api.kamocrm.com (APIService). Docs macht serverseitige W...

Kamo·7mo ago
FixDocsService

Setzen Sie Alias-Gruppe zu api.kamocrm.com und Kraft https WOPISrc

- Docs aliasgroup1 muss mit dem WOPI-Host (api.kamocrm.com) übereinstimmen. - WOPISrc URL standardmäßig auf http:// innerhalb K8s; Kraft https und construct a...

Kamo·7mo ago
FixKlusterServices

Fix kubectl nicht in pod gefunden, hinzufügen docs alias, proaktiv SUBDOMAINS

- Mount /usr/local/bin/kubectl vom Host via hostPath statt die dechute apt-get-Installation (kubectl nicht in der Standard-Debian repos) - "docs" zur SUBDOMAI...

Kamo·7mo ago
FixDocsService

MinIO-Eimer auf 'intern' stellen und leere Vorlagen hochladen

Der Standard-Eimer-Splatzhalter wurde nie konfiguriert. Verwenden Sie 'intern' -Emer, der die leeren Dokumentvorlagen hochgeladen hat.

Kamo·7mo ago
Fixkamo-internal

Öffnen Sie doc Editor Registerkarte synchron, um Popup-Blocker zu vermeiden

window.open() nachdem ein async holen von Browsern blockiert wird, weil es nicht mehr im User-gesture Kontext. Öffnen Sie einen leeren Tab sofort auf Klicken Si...

kamo·7mo ago
Fixkamo-internal

DOCS_EDITOR zu den Fallback-Funktionen org in Layout und API-Route hinzufügen

Das Server-seitige Org-Fetch des Layouts verwendet häufig den Fallback org (keine auth Kontext während SSR), der DOCS_EDITOR fehlte. Dies verhinderte die Neue D...

kamo·7mo ago
FixDocsService

COPY .mvn/ von Dockerfile entfernen, um CI build zu beheben

Das .mvn-Verzeichnis war leer und nicht verfolgt, was dazu führte, dass Builds ausschlusen. Maven wird bereits durch das Basisbild zur Verfügung gestellt.

Kamo·7mo ago
FixInitializerService

Aktivieren Hibernate Schema Auto-Schema für email_metadata

Fügen Sie ************ Eigentum so Hibernate schafft fehlende PostgreSQL Schemata vor dem Erstellen von Tabellen.

Kamo·7mo ago
FixEmailService

ddl-auto von none zu update für Auto-Schema-Management

Hibernate erstellte nicht das email_metadata Schema und Gespräche -Tabelle, weil ddl-auto in der k8s configmap auf keine gesetzt wurde.

Kamo·7mo ago
FixDocsService

Korrekturen - Dialekt, Fehlerbehandlung, CI/CD manifestiert

- Fix Hibernate Dialekt zu CockroachDialect (passen K8s configmap) - Getrennte Token-Validierung von der Geschäftslogik in checkFileInfo - Docs hinzufügen und i...

Kamo·7mo ago
Fixkamo-shared-library

Verwenden Sie native Abfrage für markConversationRead, um Hibernate 6.2 Typ Mismatch zu beheben

CURRENT_TIMESTAMP in JPQL gibt java.sql.Timestamp zurück, der nicht zusammenpasst das Instant-typed aktualisierteFeld. Native Abfrage mit NOW() umgeht dies.

Kamo·7mo ago
March 15, 2026
Fixkamo-shared-library

Verwenden Sie Datenbank-Level-Zeitstempel anstelle von Instant.now()

Ersetzen Sie alle @Builder.Default Instant.now() und @PreUpdate Methoden mit @CreationTimestamp(source=DB) und @UpdateTimestamp(source=DB) so ist die Datenbank ...

Kamo·7mo ago
FixEmailService

Verwenden Sie native Abfrage für PostgreSQL Text[] Spalte in ConversationRepository

MEMBER OF wird von Hibernate für @JdbcTypeCode(ARRAY) Felder nicht unterstützt. Wechseln Sie zu nativem SQL mit ANY() für folder_ids Array-Lookup.

Kamo·7mo ago

Wie, was Sie sehen Versand?

Alles kommt in Ihrem Arbeitsbereich für sich. Starten Sie mit dem kostenlosen Plan und lesen Sie diese Seite in einem Monat wieder.

Free Forever startenPreisgestaltung anzeigen