Canais de eventos
O Lerian STA publica nestes canais:
- Um canal de auditoria que carrega a trilha de auditoria do Lerian STA: mudanças de credencial, mudanças de estado de transferência, ações de operador e desfechos de arquivos de entrada. Ele alimenta o log de auditoria do Lerian STA e roda quando
AUDIT_PUBLISHER_ENABLEDétrue. - Um canal de negócio assinado, roteado como
sta.{direction}.{sanitized-source-product}com um fallbackunrouted, para consumidores de produtos externos. Ele carrega seis desfechos terminais de transferência. O campostatusdo payload nomeia o estado (Accepted,Rejected,Inconsistent,Canceled,DownloadFinishedouNotAuthorized), eoutcometrazSUCCESS,FAILUREouCANCELED. Ele também carrega os desfechos de envio do Reporter, roteados pelo nome do desfecho. - O stream de eventos, quando
STREAMING_ENABLEDétrue. Ele carrega os mesmos desfechos como CloudEvents do tipostudio.lerian.br-sta.br_sta_transfers.<event>, em que<event>éaccepted,rejected,inconsistent,canceled,download_finishedoudownload_not_authorized. Cada evento carrega o tenantdefaultemce-tenantid.
error_code apenas para desfechos de falha e de cancelamento, e um cancelamento pelo operador o deixa vazio. 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. Um cancelamento pelo operador de uma transferência de entrada não carrega nenhum dos dois campos.
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 processa o arquivo. 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 da instituição. Ele entrega o arquivo e o claim-check. O produto consumidor é o dono de qualquer lançamento no ledger. Por exemplo, a Lerian SISBAJUD Mensageria lê os arquivos de ordem judicial, e o Lerian SISBAJUD executor executa as ordens no Midaz. 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.
Envios regulatórios do Reporter
Quando
REPORTER_EVENTS_CONSUMER_ENABLED é true, o Lerian STA consome o evento regulatory.filing_approved do Reporter. Ele envia o relatório aprovado ao BACEN como uma transferência de saída. Antes de enviar o relatório, o Lerian STA compara o arquivo armazenado com o artifact_sha256 do evento.
O Lerian STA informa o resultado de um envio como um desfecho de envio. Ele publica o desfecho no canal de negócio assinado, com o nome do desfecho como routing key. Quando STREAMING_ENABLED é true, ele também publica o desfecho no stream de eventos.
Os dois desfechos carregam
report_id, document_id, document_version, event_id e source_event_id. source_event_id é o id do CloudEvent da aprovação, quando a aprovação tem um. Um desfecho entregue adiciona channel, protocol e delivered_at, o momento em que o Lerian STA observou a aceitação. Um desfecho recusado adiciona refused_at e reason. O reason é checksum_mismatch, digest_missing, credential_unavailable, malformed_approval, rejected_by_regulator, inconsistent_transfer, canceled ou transfer_failed.
Convenções de integração
- Eventos acoplados ao commit. Um registro gravado com uma mudança de estado apenas fica disponível depois que essa mudança é 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.
- Entrega pelo menos uma vez. Faça a deduplicação pelo
event_iddo payload, que permanece o mesmo para um fato terminal. - Subscription com chave. Os clientes escolhem suas subscriptions no broker. O STA roteia os desfechos de transferência 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.

