Parar o envio de uma credencial compartilhada como padrão de configuração
A senha compartilhada da plataforma foi criada como o retorno para DB PASSWORD e MINIO ROOT PASSWORD, então ele viveu neste repo e na imagem construída, bem com...
Parar o envio de uma credencial compartilhada como padrão de configuração
A senha compartilhada da plataforma foi criada como o retorno para DB PASSWORD e MINIO ROOT PASSWORD, então ele viveu neste repo e na imagem construída, bem com...
Pare de enviar a credencial compartilhada neste acordo
A senha do MySQL de e- mail sentou- se em texto simples em 14 ficheiros aqui — em ConfigMaps que o kubectl irá entregar a qualquer pessoa que os possa ler, em d...
Pare de enviar a credencial compartilhada neste acordo
A senha do MySQL de e- mail sentou- se em texto simples em 14 ficheiros aqui — em ConfigMaps que o kubectl irá entregar a qualquer pessoa que os possa ler, em d...
Forçar a quota de armazenamento na entrega de entrada, e parar de enviar a senha DB
Armazenamento de objetos já recusa conteúdo que levaria uma organização para além de sua teto, que cobre todos os domínios passando pela loja de objetos. Correi...
Forçar a quota de armazenamento na entrega de entrada, e parar de enviar a senha DB
Armazenamento de objetos já recusa conteúdo que levaria uma organização para além de sua teto, que cobre todos os domínios passando pela loja de objetos. Correi...
A alteração da quota de Dovecot, escrita e não aplicada
Armazenamento de objetos agora recusa conteúdo que levaria uma organização para além de sua teto, que cobre todos os domínios que passam pela loja de objetos. I...
A alteração da quota de Dovecot, escrita e não aplicada
Armazenamento de objetos agora recusa conteúdo que levaria uma organização para além de sua teto, que cobre todos os domínios que passam pela loja de objetos. I...
Deixe um membro licenciar seu próprio assento do console
O painel que fecha o ciclo de auto-pagamento. Só aparece onde o a política da organização permite, e apenas para as pessoas que já não estão comprando em nome d...
Diga às pessoas que o seu pagamento falhou, e manter a assinatura para baixo
O dunning que não existia. failure.payment failed escreveu uma linha e retornou: nenhum email, nenhuma bandeira, nenhuma alteração de estado, e billing.email-se...
Adicionar as colunas do relógio dunning
past due desde e suspension notificated at, ambos nuláveis. Null significa pagar e não-ainda-told, respectivamente.
Fazer um pagamento falhado significa alguma coisa
PAST DUE contado como totalmente vivo em ambos os resolvedores de direitos, sem timestamp e sem tampa, de modo que um cliente cujo cartão falhou manteve todos o...
Deixe um membro comprar seu próprio assento, e fechar um buraco corpo-parâmetro
O auto-pagamento não tinha rota dentro da consola. Tudo na superfície de faturamento é em forma de conta — você já deve ter uma linha ContaMembro antes de Plano...
Deixe o proprietário decidir quem pode pagar, e gerenciar os grupos que fazem
O proprietário tinha exatamente uma alavanca sobre o auto-pagamento e era a forma errada: um irreversível promover gesto, sem forma de dizer antecipadamente se ...
Política de org e APIs de grupos de faturamento
Quem dentro de uma organização pode pagar Kamo é agora responsável e settable. Ambos as rotas são org-scoped e, portanto, deliberadamente fora /api/billing/acco...
Um console de planos e faturamento que um proprietário pode realmente encontrar
Não havia como comprar uma primeira assinatura em qualquer lugar do produto. Listas de planos foram acessíveis apenas através de uma assinatura que você já real...
Por omissão, uma nova organização de destino da subscrição para o chamador
Uma primeira compra não tem assinatura existente para copiar alvoOrganizaçãoId de, e requerê-lo incondicionalmente é o que fez criar um a partir do console impo...
Mostrar o teto, não apenas os bytes
O painel reportado foi armazenado, adicionado, removido e os bytes da vida útil contra n referência em tudo — de modo que um proprietário olhando para 400 GB nã...
Pin o modo de delegação semântica
Estes predicados são o que as superfícies escondem-se, por isso estão a errar. ou oferece um botão que não pode trabalhar ou permite silenciosamente uma cobranç...
Promoção do portal na política do proprietário, torná-lo idempotente, adicionar o seu inverso
Promover um membro a pagar por si próprio era incondicional, unilateral e inseguro repetir. Agora se recusa quando a política da organização diz que a organiza...
Pare de revogar o acesso de faturamento de um membro ao adicioná- los em outro lugar
add() apagou a linha do membro em qualquer outra conta para satisfazer uma única global que já não existe. Adicionar alguém a uma segunda conta de faturamento a...
Largue a restrição que limita um membro a uma conta de faturamento
Encontra a restrição pela forma em vez de pelo nome — Hibernate a gerou e o nome não é estável em ambientes, então qualquer restrição única em account members c...
Que os membros e grupos paguem por si mesmos, segundo as regras do proprietário
Faltavam três coisas e uma era ativamente prejudicial. account members carregava um único elemento global no member id — um membro poderia administrar exatamen...
Expor o impacto da falha aberta ao operador
A página de catálogo de aplicativos já responde à pergunta independente de orgs — faz qualquer Plano mencionar este aplicativo — e levanta um aviso quando ningu...
Mostrar o que custaria desligar a abertura de falhas
kamo.entitlement.fail-open concede qualquer aplicativo que a matriz do plano nunca menciona. Está. documentado como uma válvula temporária para o enchimento do ...
Mostrar se alguém está lá, e sua extensão
Cada linha agora carrega um ponto de presença e palavra ao lado do nome, e sua extensão na linha de detalhe — então escolher uma pessoa já não significa escolhe...
Transportar disponibilidade, presença e extensão em uma linha de diretório
Escolher uma pessoa é mais fácil quando a linha diz se eles estão lá e como Apanhem-nos, pois, cada um agora carrega o que pela última vez declararam, quer algo...
Compre um bloco quando uma org optado ficar sem espaço
Corre pouco depois da varredura noturna de fotos, porque é isso que produz o figura de uso que decide sobre — expandir-se contra o número de ontem iria comprar ...
Opt-in auto-expand com um teto
Duas colunas sobre a assinatura que detém os blocos: se comprar outro um automaticamente quando a organização fica sem espaço, e o máximo que pode Nunca comprar...
Deixe uma mudança de preço do catálogo realmente chegar ao Stripe
Os preços são imutáveis e o mapeamento mantém uma linha por (org, tipo, código, ciclo) atrás de uma chave única, de modo que uma vez que um preço existiu nunca ...
Adicionar as colunas que fazem uma alteração de preço detectável
Order(0), nullable, no backfill — um valor nulo lê como "não sabemos o que este preço foi criado com" e o reconciliador trata-o como desconhecido em vez de como...
Gravar o que cada preço Stripe foi criado com
O mapeamento armazenado apenas qual ID de preço usar, então uma mudança de preço do catálogo poderia nem sequer ser notado. garantirPlanPreços curto-circuito na...
Digite a capacidade de armazenamento que o resumo agora retorna
Mantém o contrato do cliente na etapa com BillingService, que agora relata o que o plano inclui, quais blocos foram comprados, o teto combinado e o fração usada...
Capacidade de comunicação juntamente com a utilização
O painel de armazenamento apresentou os bytes armazenados contra nada — sem subsídio, nenhum percentual, nenhum dinheiro — assim um proprietário olhando para 40...
Dar um efeito ao subsídio de armazenagem
O armazenamento foi medido em dezenove domínios, por noite, com falha de construção teste de cobertura — e nada em qualquer lugar computou um subsídio ou recuso...
Diga ao solicitante se o seu agente está realmente lá
Um fio silencioso não distingue "ninguém olhou para isto" do "meu agente" se afastou", e a pessoa que espera não pode dizer qual. O anúncio da conversação diz q...
A reatribuição chega ao novo agente, e o solicitante é informado quem está lá
A mudança não chegou a ninguém. atribuiçãoAbridoAt registros que um cliente colocou a conversa na tela, e é o que levanta um ticket no sign-in — mas Ainda tinha...
Atribuir um pedido de chat e atribuir a partir da lista de tickets
Duas lacunas, mesma causa — a designação foi tratada como algo que acontece com bilhete em vez de um pedaço de trabalho. O botão de atribuição foi escondido pa...
A atribuição à mão não deve consumir o status PRE TICKET
atribuir aoAgente e reatribuir ao Agent set DESIGNADO incondicionalmente, que silenciosamente fez um pedido de chat impossível de converter depois — converterPr...
Motor de citação para o selecionador plano, combinando o que Stripe vai cobrar
A aritmética por trás de um total em execução ao vivo, mantido à parte de qualquer componente assim que o os números podem ser testados diretamente. Ele espelha...
Faça um primeiro plano de compra e retorne os preços reais do plano
Duas coisas impediram uma organização de comprar uma primeira assinatura. As listas de planos só foram acessíveis através do sub.marketId numa subscrição já re...
Deixe um sub-org alcançar a conta que paga por ele
ContaAssinatura deliberadamente separa o ordenante da organização cuja os membros consomem os assentos, e contas auto-provisionadas sentam-se no nível superior ...
Portão ações pagas em um assento licenciado, no ponto de estrangulamento
Quase todas as ações gateable no produto — discar uma extensão, e-mail um membro, abrir o assistente de IA, tocar uma gravação, iniciar uma conversa social — é ...
Resolver o que um membro pode fazer, não apenas o que seu plano inclui
Os subsídios de recurso descrevem um plano. Nunca descreveram este membro, porque o navegação por portas de console em org-level org.features — assim um membro ...
Derive a unidade adicional do catálogo e corrija os preços obsoletos
O complemento de armazenamento anunciado como "+$4 /usuário/mês" para uma piscina na mesma página chamada organização em toda a região. Causa: mapAddons addonCo...
Contas por unidade de acréscimos por unidades compradas, não por cabeça
Rola a nova quantidade adicional através da criação e atualização: um complemento FLAT agora toma a sua quantidade Listra do que a subscrição realmente comprou,...
Reprize Armazenamento Adicional em $2,50 por 10 GB, org-wide
O add-on descreveu um pool compartilhado em toda a organização e foi então preçod USO BASED em $4 com "25 GB" declarado apenas em prosa. Nunca nada apresentou e...
Dê um tamanho de unidade e uma quantidade de compra
A unidade de um complemento só existiu como prosa dentro de sua descrição ("Cada unidade adiciona 25 GB") e como uma constante codificada no site de marketing, ...
Cobrar o que o catálogo diz, uma vez, para a quantidade certa
Cinco defeitos que todos moveram dinheiro real, mais o IDOR sub-recurso abaixo deles. Ciclos de faturamento. Os preços anuais foram enviados à Stripe à taxa de...
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.