- Navios
- 11 de agosto de 2026 às 01:03 UTC
- Autor
- Kamo
- Enviar
- 67e586e
Faltavam três coisas e uma era ativamente prejudicial. account members carregava um único elemento global no member id — um membro poderia administrar exatamente uma conta de faturamento em toda a plataforma. Esse é o teto que fez cada arranjo multi-pagador impossível, e já estava causando danos em vez de meramente limitando: AccountMemberService.add() trabalhou em torno dela silenciosamente DELETAR a linha do membro em sua conta anterior, assim concedendo acesso de faturamento A um revogou-o de outro sem aviso; e promoverToBillingOwner lançou uma violação de restrição em sua segunda execução, transformando um duplo-clique em um 500. A compósito único em (account uid, member id) já existia e expressa o Uma verdadeira regra. Deixar cair faz uma descoberta derivadaByMemberId retornando Jogando opcional o momento Qualquer um tem duas filas, e nove pessoas dependem disso. É agora uma consulta limitada Ordenados pela criação, para que aqueles que ligarem, mantenham a resposta que tiveram em vez de dependendo do que o planner retornar primeiro; findAllByMemberId está lá para código que quer todos eles. OrgBillingPolítica é o controle preventivo que o proprietário nunca teve. O 2026-04-16 projeto especificado billing delegation mode e implementação deixou cair, deixando um irreversível promover gesto e nenhuma maneira de dizer antecipadamente se O auto-pagamento foi de todo permitido — enquanto um caminho de check-out do consumidor membros auto-assinalar de qualquer maneira. Onde um modo proíbe algo que as superfícies escondem em vez de o oferecer e falhar. BillingGroup nomeia um arranjo o modelo já permitido: AccountSubscription é único em (conta, mercado, org-alvo), por isso várias contas atingir uma organização. Não tem uma lista própria — quem detém um lugar é AssinaturaMembro mais ContaLicença, a mesma resposta que para qualquer outra pessoa, e um A segunda lista seria uma segunda verdade para manter o passo.