- Navios
- 7 de agosto de 2026 às 06:51 UTC
- Autor
- Kamo
- Enviar
- d8bc8c4
Tudo depois de um sinalizador imprensa Finalização estava incompleto. Avisos: a última assinatura de um envelope produziu um PDF achatado em MinIO que só o assinante final viu uma ligação para, durante as quatro horas sessão vivida. Assinantes anteriores e o remetente não aprenderam nada, enquanto o o aplicativo de assinante disse a cada um deles que uma cópia assinada seria enviada por e-mail. Adiciona EsignNotificationService: cópia executada de cada parte (re-minting their acesso token e estendendo-o para uma janela de 90 dias indicada), o remetente aviso de conclusão, e o decodificador / vazio / avisos de validade. Cada envio é Adiado para após o compromisso — o correio não pode ser devolvido se a assinatura A transacção volta atrás. Ordem de roteamento: SigningSession reported SEQUENTIAL sempre que a lista carregou ordens de encaminhamento distintas, e nada o obrigou — cada o destinatário foi enviado imediatamente e qualquer um deles poderia assinar a qualquer momento. O EsignRouting agora decide o nível aberto; o envio inicial apenas convida essa camada, uma assinatura que a move convida a próxima, e uma saída O submit é um 409. Guardas: um destinatário DELEGADO ainda poderia assinar o slot que tinha apenas o descodificador () não tinha nenhuma verificação de estado- terminal, por isso uma parte que já tinha assinado poderia virar-se para DecoderD em um executado envelope; deleck () poderia adicionar um destinatário ao vivo a um fechado. A decodificador agora fecha o envelope em vez de deixar as partes restantes assinando algo envelopeComplete nunca pode chamar completa. Expiração: EsignEnvelopeStatus.EXPIRED existiu, tinha um chip de UI, e nunca foi escrita por qualquer caminho de código. Adiciona EsignExpirySweeper (+ @EnableScheduling). Além disso: o step-up OTP foi de seis dígitos com tentativas ilimitadas contra um sessão de quatro horas — agora tentada e comparada em tempo constante; a reenviar falhou respondeu 200 ("Convidar ressentido" para o correio que nunca saiu); A mensagem do remetente nunca foi persistida, por isso uma reenviação e cada O convite de nível avançado deixou cair e a sessão. a mensagem foi sempre nula; **************************** apontado dentro do próprio BFF do aplicativo singer onde nenhum consumidor do lado do remetente poderia chamá-lo; um modelo sem campos em tudo poderia ser enviado e "assinado"; e ResponseStatusException razões nunca chegou ao cliente, por isso cada recusa cuidadosamente formulada chegou como um nu Código do estado. 103 -> 140 testes, 0 falhas.