Skip to main content
O Lerian STA é event-first em suas bordas. Uma transição terminal pode criar, de forma atômica, registros separados de auditoria e de negócio por meio de outboxes transacionais, com um sink de log durável adicional pós-commit. Um registro de outbox apenas chega aos consumidores quando a mudança de estado da transferência é commitada. Os consumidores são os serviços de produto de origem que são donos dos arquivos que o Lerian STA entrega.

Canais de eventos


O Lerian STA publica em dois canais:
  • Um canal de auditoria que carrega fatos de sucesso e falha de entrada para observabilidade e conciliação.
  • Um canal de negócio assinado, roteado como sta.{direction}.{sanitized-source-product} com um fallback unrouted, para consumidores de produtos externos. Seus tipos de evento terminais são sta.transfer.accepted, sta.transfer.rejected, sta.transfer.inconsistent, sta.transfer.canceled, sta.transfer.download_finished e sta.transfer.download_not_authorized.
Os eventos de negócio carregam um código de erro enumerado apenas para desfechos que não são de sucesso. Os eventos Accepted e DownloadFinished, que são de sucesso, o omitem. Os eventos de sucesso de entrada carregam o claim-check.

O claim-check


Ao concluir um download de entrada, o Lerian STA emite seu evento terminal download-finished, roteado pelo produto de origem do arquivo. O evento carrega um claim-check (object_key, sha256, size_bytes e file_name), mas não os bytes em si. Para os fatos terminais de entrada, document_code carrega o código do BACEN observado. Quando o mnemônico persistido e o código se corroboram, document_type carrega o mnemônico. Caso contrário, ele mantém o código para compatibilidade. O produto de domínio consumidor se inscreve na própria chave. Ele busca o artefato durável pela sua chave de objeto e reverifica o SHA-256. Em seguida, ele concilia o resultado no ledger do cliente. O Lerian STA é a fronteira de transporte e integridade. O produto consumidor é o dono do lançamento no ledger.

Fronteira do ledger


O Lerian STA não grava, por si só, no ledger do cliente. Ele entrega o arquivo e o claim-check. O produto consumidor faz a conciliação no ledger, por exemplo o Lerian SISBAJUD para arquivos de ordem judicial de ativos. Isso mantém o Lerian STA como uma camada pura de transporte e integridade, independente do significado de negócio de qualquer arquivo específico.

Convenções de integração


  • Eventos acoplados ao commit. Todo registro de outbox de auditoria ou de negócio apenas fica disponível depois que a mudança de estado da sua transferência é commitada.
  • Claim-check, não payload. Os consumidores recebem uma referência ao artefato durável, buscam-no e reverificam seu SHA-256 antes de agir sobre ele.
  • Subscription com chave. Os clientes escolhem suas subscriptions no broker. O STA roteia os eventos de negócio assinados por direção e produto de origem sanitizado, com um fallback unrouted. Ele não impõe que apenas um subscriber possa receber um arquivo.