Origem
Bloqueio P0 do LayoutParserReact #197 ([PBI] Histórico seguro de análises fiscais por workspace). Drift do `@lp-contract-qa` (2026-09-07) confirmou: não existe endpoint de histórico/persistência de análise fiscal com identificador durável recuperável.
Gap
Escopo a desenhar (@lp-architect antes de implementação)
- Contrato de persistência de uma "análise fiscal" (o que é uma análise: parse + candidatos + transformação exibida?) com `AnalysisId` durável (GUID determinístico ou gerado).
- Endpoint(s): `GET /api/analyses/{analysisId}`, listagem por workspace (`GET /api/workspaces/{id}/analyses` ou `/api/analyses?workspaceId=`), com paginação.
- Isolamento por workspace/usuário (reusar `ICurrentUser`/membership fiscal já existente).
- Banco: `IdentityDatabase:` — nunca `Database:`/172.31.249.51 (security.md).
- Retenção/TTL (fora de escopo desta issue ou dentro? decidir).
Critério de aceite
Relacionado
Origem
Bloqueio P0 do LayoutParserReact #197 ([PBI] Histórico seguro de análises fiscais por workspace). Drift do `@lp-contract-qa` (2026-09-07) confirmou: não existe endpoint de histórico/persistência de análise fiscal com identificador durável recuperável.
Gap
Escopo a desenhar (@lp-architect antes de implementação)
Critério de aceite
Relacionado