Registo de Mudança ao Vivo

Ver o que estamos a construir, em tempo real. Cada recurso, correção e melhoria enviados através da plataforma.

17,933
Total de Alterações
4,614
Características
4,543
Correcções
32
Projectos
Filtrar por projeto
Todos os Projetos17,933AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService373InitializerService300KBService74KlusterServices546MCPGatewayService43MediaService461RAGService61SecurityService1,523TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,579kamo-login319kamo-marketing585kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,322kamo-signer-monorepo50kamolos102
Filtro por tipo
Todos os TiposBuild24CI523Chore670Docs226Feature4,614Fix4,543Other6,781Performance136Refactor274Revert23Style48Test70Upgrade1
April 26, 2026
Fixkamo-internal

Ponto final do modelo mestre da sonda e correção aplicadaModelo org ID

- Substituir o portão aplicadoModel.source baseado em uma sonda direta de /api/security/master-model na montagem; r.ok=false (409) significa a org é governado p...

kamo·4mo ago
Fixkamo-internal

Gate censorship tab options by applied model constraints

- Hide EDIT MASTER MODEL button when org is governed by a branch type (use appliedModel.source instead of unreliable org context branchTypeID) - Hide ATF fiel...

kamo·4mo ago
Fixkamo-internal

Mark-as-read and message fetch for shared/member mailboxes

Classic mode now loads shared mailbox messages via the correct /messages/{folder} endpoint (was calling the non-existent /conversations endpoint). Fetching a fu...

kamo·4mo ago
FixEmailService

Mark-as-read for shared and member mailboxes

EmailController.setFlags now accepts an optional mailboxId query param and routes through resolveProviderWithMailbox so member-mailbox flags are set against the...

Kamo·4mo ago
FixVOIPService

Use extensionId as external ID, not Relay node id

FreePBX returns the same Relay id (ZXh0ZW5zaW9uOg== = "extension:") for every extension because the id field is not populated. Using it caused all extensions to...

Kamo·4mo ago
FixEmailService

Lidar com IMAPInputStream no getMessage para evitar ClassCastException

JavaMail pode retornar um IMAPInputStream em vez de uma string decodificada de part.getContent() quando o conteúdo da mensagem não foi pré-fetched. A moldes dir...

Kamo·4mo ago
FixVOIPService

Reescreva todas as consultas/mutações do GQL contra a introspecção do esquema ao vivo

Verifiquei cada nome e tipo de campo contra o esquema atual do FreePBX 17. Conjunto completo de correcções: Consultas: - obterAllExtensions: remover o campo 'v...

Kamo·4mo ago
Fixkamo-internal

Passe selectedFolder to ThreadDetailView so email:folder- changed fires with a valid folder

conversation.folder é sempre indefinido porque o Java ConversationEntity tem folderIds (text[]) não um campo de string de pastas. Isto fez com que o loadThread ...

kamo·4mo ago
FixVOIPService

Correct GraphQL field name to fetchAsteriscoDetalhes

A API do FreePBX retorna "Você quis dizer fetchAsteriscoDetalhes?" — renomear a saúde verificar consulta e seu acessor caminho de dados em conformidade.

Kamo·4mo ago
FixVOIPService

Adicionar cabeçalhos XHR/Accept e análise de resposta de String ao cliente GraphQL

O mesmo padrão do FreePBXTokenCache: adicionar X-Pedido-Com + Aceitar: aplicativo/json para suprimir respostas de redirecionamento HTML do FreePBX, e mudar todo...

Kamo·4mo ago
Fixkamo-internal

Sincronizar o dropdown da caixa de correio primária ao carregar

O dropdown foi predefinido para o item da primeira lista porque a caixa de correio selecionada foi inicializada sem uma caixa de correio, fazendo com que o valo...

kamo·4mo ago
FixAPIService

Aumentar o limite de tamanho de envio de arquivos para 500MB

Spring Boot padrão tampa várias partes em 1MB, causando imagem de fundo uploads para falhar com 500 em request.getParts(). Coincidir os Serviços de Segurança li...

Kamo·4mo ago
Fixkamo-internal

Erros HTTP de superfície para que as falhas de upload sejam visíveis

Substituido console silencioso.warn com um erro lançado no status não-OK, assim o usuário vê a razão de falha real (status + corpo de resposta) em vez de proced...

kamo·4mo ago
FixVOIPService

Adicionar cabeçalhos Accept+XHR e análise de resposta de texto bruto para o endpoint do token

O FreePBX estava retornando texto/html quando chamado via DNS de cluster porque o O cabeçalho da máquina não correspondeu ao PBX HOSTNAME configurado. Adiciona...

Kamo·4mo ago
Fixkamo-marketing

Drive minimized-tab entrada através de controles de animação

A mudança de animação={...} para animar={tabControls} quebrou a entrada animation: tabControls não tem nenhum alvo em fila na montagem, então o botão ficou na s...

Kamo·4mo ago
FixVOIPService

Correct OAuth2 scope strings for FreePBX API

Os escopos do FreePBX são identificadores de nível superior: 'gql' (todos GraphQL) e "Descanso" (todos os REST). O formato 'gql:read' significa GQL para um módu...

Kamo·4mo ago
FixKlusterServices

Expor a porta 8088 diretamente no serviço ClusterIP

O serviço tinha apenas o mapeamento da porta 80→8088. Serviços internos que utilizam **************************** (por exemplo, token de API VOIPService requisi...

Kamo·4mo ago
Fixkamo-internal

Confiar na infra- estrutura pendenteCount, soltar deslocamentos do cliente

Infraestrutura pendenteO Conta não foi lido agora (conta as sessões do SUPPORT TICKET com mensagens mais novas do que a última Vista do proprietário). Quando o ...

kamo·4mo ago
FixKlusterServices

Adicionar o Mapa de Configuração da Configuração de 2ban em falta para o k1m1

Referências de implantação falham2ban-config ConfigMap (jail.local + asterisco-security.conf) mas não existia, bloqueando o pod em MountVolume. Configurar e imp...

Kamo·4mo ago
April 25, 2026
Fixkamo-internal

MarkAsRead after agent send so lastViewed advances

Nos tickets de suporte, as mensagens de visitante e agente são armazenadas sob o mesmo sistemaMembro, por isso a consulta não- lida é depende inteiramente da úl...

kamo·4mo ago
Fixkamo-shared-library

Os tickets de suporte precisam de contagens não lidas por membro- diagnóstico

Mensagens de visitantes em tickets de suporte são armazenadas no mesmo sistemaMembro que o agente autentica como, para que a sessão de CHAT existente não seja l...

Kamo·4mo ago
Fixkamo-internal

Passar a pasta para carregar o botão de repetição do Thread

loadThread leva (threadId, pasta); o botão retry error- state somente passou threadId, quebrando a construção kamo-internal. Coincidir com a chamada A assinatur...

kamo·4mo ago
Fixkamo-shared-library

Correct JsonIdentity Info property de 'uniqueId' para 'id'

Entidade membro declarou @JsonIdentityInfo(propriedade = "uniqueId") mas o o campo de chave primária real é chamado 'id'. Jackson atirou "não foi possível encon...

Kamo·4mo ago
Fixkamo-marketing

Remova a proteção SSR causando descompasso de hidratação; solte SockJS para WebSocket nativo

- Hero.tsx: remover o tipo de janela em torno do campo de partículas — campo de partículas já tem ssr:false assim que o guard produziu um servidor/cliente árvor...

Kamo·4mo ago
Fixkamo-internal

Limpar os indicadores não lidos ao abrir a conversa

ThreadDetailView agora envia e-mail:folder-changed after markConversationRead sucessos para que MailButton refetches a contagem de crachás navtop caixa de entra...

kamo·4mo ago
FixAPIService

Move CORS to Traefik via kamo-middlewares, remove in-app CorsFilter

The CorsFilter @Bean in the Spring app was silently not applying headers after WebConfig.java was removed. CORS is now handled entirely at the Traefik layer by ...

Kamo·4mo ago
Fixkamo-marketing

Use /public/{mainDomain}-{tld} path matching actual MinIO bucket layout

The getThemePath() was generating /domain/{tld}/{split}/kamosite paths that don't exist in MinIO — theme files live in the public bucket under kamocrm-com/, bad...

Kamo·4mo ago
Fixkamo-internal

Quebrar a cadeia min- w- 0 para conter apenas o rolagem de e- mail na coluna do corpo

Adicionar min-w-0 ao recipiente exterior e conteúdo principal flex div para crianças flex não pode expandir para e-mail min- conteúdo largura, o que estava caus...

kamo·4mo ago
Fixkamo-internal

Hoist provedores acima ToolProviders

A mesma causa raiz que o guincho ChatWebSocketProvider: SupportTicketWindow chamadas E o ChatBox chama useUnread().markAsRead(), mas ambas as janelas renderizam...

kamo·4mo ago
Fixkamo-marketing

Adicionar supressãoHydrationAviso e corrigir imagens de placeholder quebradas

supressorHydrationAviso em <html> previne erro de reação #418 causado pelo navegador extensões (por exemplo, traduzir, modo escuro) mutando atributos html entre...

Kamo·4mo ago
FixKlusterServices

Permitir o prefixo de / domínio/ caminho no tema IngressRoute for CORS

A configuração do tema no theme.kamocrm.com/domain/... não foi regras de rota existentes (apenas /public/ e /internal/ foram permitidas), então Traefik retornou...

Kamo·4mo ago
FixAPIService

Remover o CorsFilter duplicado e remover os cabeçalhos CORS no gateway

WebConfig.java definiu um segundo feijão CorsFilter competindo com o CorsConfig. java's feijão, arriscando duplicar cabeçalho escreve. Excluído para que apenas ...

Kamo·4mo ago
FixSecurityService

Remover duplicado CorsFilter bean causando duplo cabeçalho Access-Control-Allow-Origin

O Feijão CorsFilter explícito causou um segundo filtro CORS ao lado da Primavera Suporte CORS incorporado da segurança (que usa CorsConfigurationSource). Ambos ...

Kamo·4mo ago
Fixkamo-internal

Remover instruções de depuração console.log e adicionar rotas em falta

Remover todo o registro temporário de depuração adicionado durante o rastreamento do WebSocket ChatBox, TicketChat, MemberItem, ChatTool e useChatWebSocket; adi...

kamo·4mo ago
Fixkamo-internal

Impedir que o cabeçalho da mensagem expanda a coluna em endereços longos

A criança flex esquerda do cabeçalho não tinha min-w-0, por tanto tempo e-mail inquebrável endereços em From/To/Cc forçaram sua largura de conteúdo min a cresce...

kamo·4mo ago
Fixkamo-internal

Hoist ChatWebSocketProvider acima ToolProviders

ToolDock (e suas janelas de ferramenta como SupportTicketWindow → TicketChat) é montado dentro ToolProviders, que se senta ABOVE PresenceWrapper na árvore para ...

kamo·4mo ago
Fixkamo-internal

Soltar o DOM do Shadow no renderizador de e- mail para overflow-x-auto

Shadow DOM foi a causa raiz. Conteúdo de e-mail amplo (mesas de largura fixa) dentro da árvore sombra pintada após o hospedeiro sem contribuir para a caixa de l...

kamo·4mo ago
Fixkamo-internal

Alinhar o caminho de importação do ChatWebSocketContext para corresponder ao provedor

TicketChat e ChatNotificationListener importaram o contexto através do '@/app/contexts/...' pseudônimo enquanto PresenceWrapper (o provedor) importa através do ...

kamo·4mo ago
Fixkamo-internal

Forçar a contenção da máquina com estilos inline + contém: layout

Overflow-x-auto baseado em classe no host sombra não estava ganhando de forma confiável contra a sombra ':host { all: inicial}' reset, so wide email o conteúdo ...

kamo·4mo ago
Fixkamo-internal

Role conteúdo de email amplo dentro da sombra DOM, não fora

As tentativas anteriores de adicionar overflow-x-auto à luz dos antepassados DOM não foi possível obter conteúdo de e-mail amplo porque a árvore de sombra é vis...

kamo·4mo ago
FixEmailService

Use getHasAttachments () para corresponder ao tipo de invólucro booleano

************* é um booleano (embrulhador), então Lombok gera getHasAttachments() não isHasAttachments(). Apenas este último existe para booleanos primitivos. Us...

Kamo·4mo ago
FixMediaService

Expandir a verificação do repositório JPA para incluir o pacote de comércio

A nova biblioteca da Kamo-compartilhada traz consigo que exige **************************** (com.kamo.z.commerce partilhado). MediaService apenas digitalizou do...

Kamo·4mo ago
FixMediaService

Restaurar a importação do HashMap no ChatWebSocketController

O refator anterior removeu a importação do HashMap, mas a manipulação método ainda constrói um HashMap para a carga útil do evento de digitação, causando a comp...

Kamo·4mo ago
Fixkamo-internal

Adicionar min-w-0 ao conteúdo de e-mail div so overflow-x-auto fire

Sem min-w-0, a largura mínima padrão da criança flex-col:auto resolve para min-content, deixando tabelas de e-mail amplas expandir o div passado a coluna largur...

kamo·4mo ago
Fixkamo-marketing

Remover a chamada de ligação duplicadaStomp no sendMessage

Quando a primeira mensagem cria uma nova sessão, onSessionCreated actualiza os adereços que desencadeia o usoEffect para chamar connectStomp. A chamada em linha...

Kamo·4mo ago
FixMediaService

Proativamente criar consumidor NATS na criação de sessão para evitar perda de mensagem

Anteriormente, o consumidor de push NATS JetStream só foi criado quando um cliente STOMP enviado /app/chat/subscribe. Com a Política de Entrega. Novo, quaisquer...

Kamo·4mo ago
Fixkamo-internal

Fechar o gap de reconexão que causa mensagens perdidas em tempo real

Remover `connected` do uso da assinaturaEffect deps no TicketChat e ChatBox. Anteriormente, cada reconexão WebSocket desencadeou o efeito limpeza que chamou uns...

kamo·4mo ago
FixSecurityService

Permitir que o usuário do sistema gerencie a marca org e corrija a autenticação de logo

- Adicionar bypass do usuário do sistema como primeiro guard no canManageOrgBranding assim plataforma usuário do sistema tem controle total de marca sobre todas...

Kamo·4mo ago

Como o que vês no transporte?

Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.

Começar Livre Para SempreVer Preços