> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Como o Lerian SILOC funciona

> Ciclo de vida da conexão de gateway, processamento SFN configurado por MQ, despacho de mensagens aceitas, entrega pelo menos uma vez com deduplicação durável e tratamento de certificados.

O Lerian SILOC expõe um pequeno conjunto de operações tipadas sobre a superfície `/api/v1/siloc`. A superfície ativa cobre conectividade e administração. Um descritor de conexão MQ do SILOC completo ativa o processamento SFN de entrada, que despacha os códigos de mensagem aceitos. O serviço também mantém os registros de participante, certificado e cobertura que dão suporte a esse trabalho.

## Ciclo de vida da conexão de gateway

***

Quando um descritor de conexão MQ do SILOC completo ativa o processamento SFN de entrada, o serviço abre e mantém **uma** conexão de gateway de mensageria com o SILOC da Nuclea pela rede do sistema financeiro nacional. Quatro proteções protegem a conexão:

* um **circuit breaker** que abre após falhas repetidas,
* **reconexão automática** com backoff limitado,
* uma **parada por credencial desabilitada** que interrompe o gateway após uma revogação de certificado, e
* uma **sonda de readiness** que informa a conexão e a saúde do gateway.

O processamento SFN de entrada começa quando você configura o descritor de conexão MQ do SILOC completo. Se nenhum gatilho de conexão estiver presente, o serviço inicia sem conectividade SILOC ativa. Definir `MQ_HOST`, `MQ_CHANNEL`, `MQ_QUEUE_MANAGER`, `MQ_SEND_QUEUE` ou `MQ_RECEIVE_QUEUE` aciona a validação do descritor completo na inicialização. Fornecer apenas parte do descritor falha de forma fechada e impede o serviço de iniciar. Com o descritor completo configurado, o serviço descriptografa e decodifica as mensagens de entrada a partir do envelope regulado antes de despachar uma mensagem aceita.

## Despacho SFN de entrada

***

Após a decodificação, a ingestão seleciona uma rota a partir de uma política fechada **(`CodProdt`, `CodMsg`)**. Os mesmos três códigos de funding têm destinos diferentes por produto:

\| Código | OT | SLC |
\| --- | --- |
\| **PAG0102** | Adiamento durável de abertura de período | Repasse ao Lerian SLC |
\| **LDL0021** | Adiamento durável de instrução de depósito | Repasse ao Lerian SLC |
\| **PAG0103** | Adiamento durável de encerramento de período | Repasse ao Lerian SLC |
\| **PAG0101** | Adiamento durável de status de participante | Adiamento durável de status de participante |

O serviço não aceita `LDL0020`, `LDL0006` nem nenhum outro par produto/código. Eles falham de forma fechada para uma exceção de operador. O serviço nunca os repassa como funding de liquidação. Um envelope não decodificável ou uma mensagem com `BCMSG.NUOp` em branco segue o mesmo caminho de falha fechada.

## Despacho pelo menos uma vez com deduplicação durável

***

A origem pode reenviar uma mensagem, então o repasse ao SLC é **pelo menos uma vez**. Para um frame de funding do SLC decodificado com sucesso e com `BCMSG.NUOp` não em branco, o serviço verifica a deduplicação durável por **`BCMSG.NUOp`** antes do repasse. A política trata esse número de operação como globalmente único. O serviço não usa uma chave baseada apenas no ID da mensagem.

O serviço grava o registro de mensagem processada apenas após um repasse bem-sucedido e antes de confirmar o recebimento à origem. Ele não cria esse registro para uma mensagem não decodificada ou não aceita. Uma falha antes da gravação desse registro pode deixar a mensagem elegível para outra entrega. Não trate esse comportamento como uma garantia incondicional de exatamente uma vez de ponta a ponta.

## Resultados de falha

***

* Uma falha de despacho **sujeita a nova tentativa** permanece sem confirmação. Com commits de origem seguros por offset, o serviço lê a mensagem novamente após um reinício, a partir do último offset confirmado. Uma falha transitória persistente pode travar sua partição até o reinício.
* Uma falha **não sujeita a nova tentativa**, como um envelope malformado ou um par (`CodProdt`, `CodMsg`) não aceito, falha de forma fechada para uma exceção de operador durável. O serviço confirma a mensagem apenas após o commit desse registro de exceção, para que a partição possa avançar.
* O registro de mensagem processada protege apenas as mensagens decodificadas com sucesso e aceitas descritas acima. Ele não garante a retenção de todo frame nem efeitos de exatamente uma vez em todo sistema downstream.

## Observabilidade da ingestão

***

* **Listar mensagens processadas**: o feed de auditoria das mensagens SFN aceitas que o serviço despachou.
* **Ler status da ingestão**: o estado de saúde atual do caminho de ingestão habilitado, além do timestamp do último despacho.

## Diretório de participantes

***

O Lerian SILOC mantém um diretório dos participantes do SILOC para os quais ele liquida. Você **registra**, **lista**, **consulta** e **atualiza** um participante, e lê o **status** de um participante. Cada participante carrega seu ISPB, seu papel e seu status operacional.

Todo registro gera uma entrada no histórico de status e emite um fato de participante. As gravações de registro são idempotentes por meio de uma chave de idempotência, então um registro repetido não cria uma duplicata.

| Papel                      | Significado                                                    |
| -------------------------- | -------------------------------------------------------------- |
| **Direto**                 | Um participante direto do SILOC.                               |
| **Indireto**               | Um participante que liquida por meio de outra instituição.     |
| **Instituição liquidante** | A instituição que liquida em nome dos participantes indiretos. |

O status operacional usa o domínio de sete valores de status do SILOC:

| Valor | Status                       |
| ----- | ---------------------------- |
| 1     | Participando                 |
| 2     | Excluído do ciclo            |
| 3     | Excluído do SILOC            |
| 6     | No ciclo, excluído do SILOC  |
| 7     | Suspenso                     |
| 8     | Suspenso, excluído do ciclo  |
| 9     | Inoperante (regime especial) |

## Certificados regulados

***

O serviço mantém os certificados regulados da conexão como referências, não como segredos. Você **registra** um certificado público junto com uma **referência de custódia externa**. O serviço extrai do certificado seu assunto, número de série e janela de validade, e não armazena **nenhuma** chave privada. Você então **lista**, **consulta** e **revoga** certificados pela mesma superfície.

## Cobertura de capacidades

***

Uma **listagem de capacidades** somente leitura descreve as capacidades de cobertura de liquidação como uma superfície de transparência. Para cada tipo de mensagem, ela informa a direção, o estado de implementação e a disposição.
