> ## 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.

# Contratos de fontes de dados e de preview do Reporter

> O ciclo de vida das fontes de dados do Reporter, a paginação de relatórios, a criptografia de credenciais e a capacidade de preview de templates agora estão documentados.

<Badge stroke icon="calendar-days" iconType="regular">25 de agosto de 2026</Badge> <Badge stroke icon="file-code" iconType="regular">Correção de documentação</Badge> <Badge color="red" size="lg" stroke icon="triangle-exclamation" iconType="regular">Ação necessária</Badge>

## Afeta

***

Equipes que gerenciam fontes de dados do Reporter, paginam listas de relatórios ou renderizam previews de template.

## O que mudou

***

O Reporter gerencia pela API um registro persistido de fontes de dados PostgreSQL e MongoDB. As senhas são apenas escrita e criptografadas em repouso com `DATASOURCE_CRED_ENC_KEY`; templates ativos impedem que uma fonte de dados referenciada seja excluída. Deploys single-tenant podem popular entradas na inicialização, enquanto deploys multi-tenant as criam pela API.

As listas de relatórios usam paginação por keyset com `nextCursor` e `prevCursor`. Os previews de template têm um limite de concorrência síncrona controlado por `PREVIEW_MAX_CONCURRENT` (padrão `4`); capacidade esgotada retorna HTTP `429` com `RPT-0108`, e uma recusa de renderização retorna `RPT-0107`.

Isto corrige a documentação de contratos implementados. Não anuncia um release de runtime.

## Impacto

***

**Classificação: Ação necessária.** A automação de fontes de dados existente, o gerenciamento de segredos, a paginação de relatórios e o tratamento de nova tentativa de preview podem depender de suposições descontinuadas.

## O que você precisa fazer

***

<Steps>
  <Step>Defina uma `DATASOURCE_CRED_ENC_KEY` válida e persistente para cada runtime do Reporter que lê o registro.</Step>
  <Step>Use o ciclo de vida da API de fontes de dados e considere a recusa de soft delete enquanto templates ativos referenciarem uma fonte.</Step>
  <Step>Siga `nextCursor` e `prevCursor` nas listas de relatórios em vez de usar números de página.</Step>
  <Step>Trate `RPT-0107` como uma recusa de renderização e tente `RPT-0108` novamente depois que houver capacidade disponível.</Step>
</Steps>

### Prazo

Revise antes de fazer deploy de clientes do Reporter ou de alterar a configuração de fontes de dados.
