# Observatório GEF Áreas Privadas

Exportação para análise. Enunciados copiados de `discovery/index.json` (`generatedAt`: 2026-11-03T07:15:00-03:00). Casos de uso, modelo e rastreabilidade vêm de `specs/use-cases.md`, `specs/data-model.md` e `specs/traceability.md` (gerados em 2026-09-29T20:10:00.000Z). O identificador com hífen é o mesmo número do catálogo: RF01 permanece RF-001.

Onde as fontes não fecham, o texto traz `[NEEDS CLARIFICATION: …]`. Nada abaixo completa essa lacuna.

## Functional Requirements

Cada item é um requisito do catálogo. RF é requisito funcional, RN é regra de negócio e RNF é requisito não funcional, como em `discovery/index.json`.

### RF-001

- **Origem:** RF01
- **Título no catálogo:** Mapa público do observatório
- **Feature:** mapa
- **Status no catálogo:** proposed
- **Enunciado:** O portal público oferece duas leituras. Por imóvel: visualizador com navegação, zoom, deslocamento, escolha de mapa-base, camadas e identificação do imóvel. Por território: o mapa de prioridade que o IIS entregou, com nota de 1 a 20, para as regiões já recebidas. Mata Atlântica e Cerrado ainda não têm essa leitura por território.
- **Depende de:** RF-007 (RF07)
- **Critérios de aceite:** CA-003 (CA03), CA-004 (CA04)

### RF-002

- **Origem:** RF02
- **Título no catálogo:** Camadas de Valor de Conservação e variáveis
- **Feature:** mapa
- **Status no catálogo:** proposed
- **Enunciado:** A plataforma exibe a camada de Valor de Conservação e, à medida que o IIS entregar os dados, as variáveis de risco de extinção, integridade de ecossistemas, vulnerabilidade de ecorregiões, carbono, custo de oportunidade, recarga de águas subterrâneas e vulnerabilidade climática, além de biomas, estados e municípios.
- **Depende de:** RN-001 (RN01), RF-007 (RF07)
- **Critérios de aceite:** CA-005 (CA05), CA-006 (CA06)
- [NEEDS CLARIFICATION: CA06 diz que a plataforma não inventa variável ainda não entregue. O contrato specs/api.yaml, operação exibirCamadas, diz que variáveis ausentes no arquivo usam um número simulado e a ficha marca isso.]

### RF-003

- **Origem:** RF03
- **Título no catálogo:** Consulta do imóvel selecionado
- **Feature:** consulta
- **Status no catálogo:** proposed
- **Enunciado:** Ao selecionar um imóvel, a plataforma mostra, conforme os dados disponíveis, o Valor de Conservação, as informações do imóvel que vierem do CAR e os valores das variáveis associadas.
- **Depende de:** RF-001 (RF01)
- **Critérios de aceite:** CA-007 (CA07), CA-008 (CA08)

### RF-004

- **Origem:** RF04
- **Título no catálogo:** Filtros, busca pelo CAR e lista de imóveis
- **Feature:** consulta
- **Status no catálogo:** proposed
- **Enunciado:** A pessoa filtra por bioma, estado, município e faixa de Valor de Conservação, busca pelo número do recibo do CAR e vê a lista dos imóveis encontrados. A barra superior é um campo só. Ao digitar um município, aparecem nomes parecidos no formato município-UF. Ao escolher um município com área em um dos cinco biomas desta versão, o mapa dá zoom nessa parte e a lista mostra os imóveis dela, sem média e sem aviso de fora da versão. Ao escolher um município totalmente fora desses biomas, o mapa vai até lá e avisa que não faz parte desta versão, sem imóveis e sem Valor de Conservação. O recibo completo de um imóvel publicado nesses cinco biomas leva o zoom até o polígono publicado e abre o bioma desse imóvel. Recibo de fora desses biomas, ou inexistente, gera aviso, sem mover o mapa e sem outro imóvel no lugar. Ao apertar o x da barra de busca, a busca é cancelada e todos os filtros são limpos: bioma, estado, município, faixa de Valor de Conservação e o texto da barra. O menu esquerdo volta para Todos e o mapa mostra de novo os imóveis do recorte.
- **Depende de:** RF-001 (RF01)
- **Critérios de aceite:** CA-009 (CA09), CA-010 (CA10), CA-011 (CA11), CA-027 (CA27), CA-028 (CA28), CA-029 (CA29), CA-031 (CA31), CA-057 (CA57)
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### RF-005

- **Origem:** RF05
- **Título no catálogo:** Números e gráficos conforme a consulta
- **Feature:** indicadores
- **Status no catálogo:** proposed
- **Enunciado:** Cards, gráficos e indicadores acompanham os filtros, as buscas e as seleções feitas no mapa. No menu direito, Consolidados deste conjunto de dados mostra imóveis listados, área total em hectares e municípios desse conjunto. A pessoa também abre Estatísticas deste conjunto: uma faixa colorida do Valor de Conservação, dois números por bioma e barras por estado. Uma variável publicada usa a mesma faixa. Sem número publicado, a tela avisa que a variável ainda não foi publicada. Não há média de Valor de Conservação por município ou por estado. Esses números mudam quando a pessoa filtra a tela.
- **Depende de:** RF-004 (RF04)
- **Critérios de aceite:** CA-013 (CA13)
- [NEEDS CLARIFICATION: o enunciado pede «dois números por bioma» e não diz quais são. O contrato `relatorios-produtos-3-4/anexos/openapi-qas.yaml`, schema `PorBioma`, tem os campos `imoveis` e `areaHa`. O discovery não aponta esse schema.]

### RF-006

- **Origem:** RF06
- **Título no catálogo:** Área administrativa com login
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** A plataforma tem uma área administrativa. A pessoa clica em Área do Gestor, entra por uma tela de login interna e, com o perfil certo, abre o painel para gerir usuários, cargos e permissões, atualizar ou incluir camadas e conteúdos e acompanhar o que está publicado. A visão geral mostra quantas camadas e tooltips estão no observatório, quantos acessos de gestão estão ativos e a data da última atualização. Incluir uma camada nova nesta versão vale só para a leitura por imóvel. O arquivo é shapefile em zip ou GeoJSON, com nome, texto de ajuda e cor única. A pré-análise recusa vazio, imagem, PDF, planilha, GeoTIFF, arquivo sem coordenada e desenho que não cruza Mata Atlântica nem Cerrado. A camada vai para a fila: só o administrador testa no observatório e publica. No mapa ela entra na lista e o desenho aparece no lugar dos imóveis, sem recalcular o Valor de Conservação. No mapa público, upload de arquivo e calibração de pesos não estão disponíveis. O uso do observatório público é registrado e a visão geral da gestão mostra esses números no período escolhido.
- **Critérios de aceite:** CA-014 (CA14), CA-015 (CA15), CA-016 (CA16)
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### RF-007

- **Origem:** RF07
- **Título no catálogo:** Carga e publicação dos dados recebidos
- **Feature:** dados
- **Status no catálogo:** proposed
- **Enunciado:** O backend recebe, organiza, armazena e publica os dados entregues pelo IIS e pela SBio/MMA, integra o Valor de Conservação aos polígonos do CAR e disponibiliza esses dados para o mapa consultar.
- **Depende de:** RN-001 (RN01)
- **Critérios de aceite:** CA-017 (CA17), CA-018 (CA18)

### RF-008

- **Origem:** RF08
- **Título no catálogo:** Implantação, manuais, código e treinamento
- **Feature:** entrega
- **Status no catálogo:** proposed
- **Enunciado:** A entrega final inclui a plataforma em produção, o código-fonte, a documentação técnica, o banco de dados, o manual do usuário, o manual do administrador e o treinamento de uso e de administração, além de um canal para registrar pedidos de suporte.
- **Depende de:** RF-001 (RF01), RF-006 (RF06)
- **Critérios de aceite:** CA-019 (CA19)

### RF-009

- **Origem:** RF09
- **Título no catálogo:** Produtos e datas do contrato
- **Feature:** entrega
- **Status no catálogo:** proposed
- **Enunciado:** As entregas de referência são: concepção e planejamento em 20/09/2026; infraestrutura e arquitetura em 30/09/2026; backend e processamento de dados em 10/10/2026; frontend e WebGIS em 15/10/2026; testes e homologação em 01/11/2026; implantação e treinamento em 20/11/2026. O conjunto se encerra até 15/12/2026.
- **Critérios de aceite:** CA-020 (CA20)

### RF-010

- **Origem:** RF10
- **Título no catálogo:** Entrar na área do gestor
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** Ao clicar em Área do Gestor, a pessoa vai para uma tela de login interna. Com o acesso certo, abre o painel de gerenciamento. Sem o acesso, o painel não abre. No primeiro acesso, a pessoa entra com a senha inicial e, antes do painel, cadastra uma senha nova: no mínimo 8 caracteres, com letra maiúscula, letra minúscula, número e caractere especial, diferente da senha inicial.
- **Depende de:** RF-006 (RF06)
- **Critérios de aceite:** CA-033 (CA33), CA-034 (CA34), CA-035 (CA35)

### RF-011

- **Origem:** RF11
- **Título no catálogo:** Usuários e cargos da área do gestor
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** No painel, só o administrador registra usuários e cargos. O cadastro pede nome, senha inicial, e-mail, telefone, data de nascimento e cargo. O CPF é opcional. O acesso é o e-mail. Os cargos iniciais são Administrador, Editor de conteúdo e Editor de camadas. Não há cargo de consulta da área: o observatório é aberto ao público. O administrador vê a visão geral, os acessos, os cargos, as camadas, os conteúdos e o histórico completo. O editor de conteúdo vê a visão geral, os conteúdos e o histórico de conteúdos. O editor de camadas vê a visão geral, as camadas e o histórico de camadas. O administrador pode criar outros cargos e marcar o que cada um pode fazer. Pode editar os dados de um usuário, ver a ficha e o histórico dessa pessoa, e revogar o acesso. Usuário revogado não entra. O administrador não revoga o próprio acesso.
- **Depende de:** RF-010 (RF10)
- **Critérios de aceite:** CA-036 (CA36), CA-037 (CA37), CA-038 (CA38), CA-039 (CA39)

### RF-012

- **Origem:** RF12
- **Título no catálogo:** Data da última atualização no observatório
- **Feature:** mapa
- **Status no catálogo:** proposed
- **Enunciado:** O observatório público mostra, num canto da tela, a data e a hora da última alteração confirmada que mudou o que o público vê. Camadas, conteúdos e informações visíveis são os que a área administrativa confirmou. O que ainda não foi confirmado não aparece e não muda essa data. A simulação que o administrador abre para testar uma publicação ainda não está no ar e não muda essa data.
- **Depende de:** RN-004 (RN04)
- **Critérios de aceite:** CA-043 (CA43), CA-044 (CA44), CA-045 (CA45)

### RF-013

- **Origem:** RF13
- **Título no catálogo:** Tooltips do observatório na lista de conteúdos
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** Na lista de conteúdos, quem pode atualizar conteúdos adiciona, edita ou exclui os tooltips do observatório. A lista começa com os tooltips que o observatório já mostra. Um tooltip novo pede o texto, como aparece e a posição no observatório. A pessoa arrasta o tooltip até o lugar da página. Ao enviar, ele ainda não vai para o ar: fica na fila para o administrador testar no observatório e publicar. Só é possível publicar depois desse teste, digitando PUBLICAR. Editar ou excluir um tooltip que já está no ar pede confirmação. O formulário pode ser fechado sem gravar. Em cada local, o tooltip ou mostra o ícone i, ou aparece quando a pessoa passa o mouse. A pessoa ajusta o tamanho e marca trechos em negrito, itálico ou sublinhado, e vê a prévia. Cada tooltip guarda quem escreveu.
- **Depende de:** RF-011 (RF11), RN-004 (RN04)
- **Critérios de aceite:** CA-046 (CA46), CA-047 (CA47), CA-048 (CA48)

### RF-014

- **Origem:** RF14
- **Título no catálogo:** Exportar as estatísticas deste conjunto
- **Feature:** indicadores
- **Status no catálogo:** proposed
- **Enunciado:** Em Estatísticas deste conjunto, a pessoa clica em Exportar, escolhe o formato e baixa um arquivo com o recorte que está na tela: bioma, estado, município e busca, os números do conjunto, os números por bioma, a faixa do Valor de Conservação, as barras por estado e a variável escolhida, quando houver. Os formatos são Excel (.xlsx), PDF e planilha simples (CSV). Excel e PDF saem com o logo, as cores e o cabeçalho do Observatório gef, a data em que o arquivo foi gerado e a data da última atualização do observatório. O CSV sai só com texto, separado por ponto e vírgula, para outros sistemas. O arquivo não traz média de Valor de Conservação por município ou por estado.
- **Depende de:** RF-005 (RF05)
- **Critérios de aceite:** CA-049 (CA49), CA-050 (CA50), CA-051 (CA51), CA-052 (CA52), CA-053 (CA53), CA-054 (CA54)

### RF-015

- **Origem:** RF15
- **Título no catálogo:** Leitura por território do mapa de prioridade
- **Feature:** prioridade
- **Status no catálogo:** proposed
- **Enunciado:** A leitura por território mostra o mapa de prioridade entregue pelo IIS, em classes de 1 a 20, para Caatinga, Pampa e Pantanal. A pessoa escolhe a região, a conta de benefícios ou de custo-efetividade, e a escala de paisagem ou de ecorregiões. A plataforma não recalcula a nota. Uma nota 20 numa região não equivale a uma nota 20 em outra. Mata Atlântica e Cerrado aparecem como ainda não recebidos. Camada publicada pela gestão para o território entra na lista dessa leitura.
- **Critérios de aceite:** CA-055 (CA55)
- [NEEDS CLARIFICATION: o texto de RF15 em discovery/index.json e em prd/prioridade.md (Caatinga, Pampa e Pantanal recebidos; Mata Atlântica e Cerrado ainda não recebidos) não é o mesmo @req RF15 de sim-mvp/v1/prioridade/meta.md (cenários, pastilhas, Bacia do Alto Paraguai, seis biomas do IBGE, Mata Atlântica abre marcada, estatísticas por pixel). Não há caso de uso em specs/use-cases.md, rota em specs/api.yaml nem entidade em specs/data-model.md. issues/gestao-v1/00-indice.md deixa a leitura por território fora da leva.]

### RF-016

- **Origem:** RF16
- **Título no catálogo:** Registro de uso do observatório
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** O observatório público registra cada acesso, o tempo em que a pessoa navegou, a leitura usada (por imóvel ou por território), a camada ligada, a busca ou o filtro feito, o lugar consultado e a exportação de estatísticas. A visão geral da gestão mostra esses números no período escolhido: últimos 7 dias, últimos 30 dias ou desde a publicação. O tempo médio é o tempo médio em que a pessoa ficou navegando pelo observatório nesse período.
- **Depende de:** RF-006 (RF06)
- **Critérios de aceite:** CA-056 (CA56)
- [NEEDS CLARIFICATION: RF16 não tem entidade em specs/data-model.md nem rota em specs/api.yaml. specs/traceability.md cita administracao/actions.js#mostrarUso, ausente da lista de paths de specs/api.yaml.]

### RF-017

- **Origem:** RF17
- **Título no catálogo:** Recuperar ou trocar a senha
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** Quem esquece a senha da área do gestor pede, na tela de login, um link de uso único enviado ao e-mail de login. O link vale 1 hora, serve uma vez, não traz senha pronta e abre a criação de uma senha nova com as mesmas regras do primeiro acesso: no mínimo 8 caracteres, letra maiúscula, letra minúscula, número, caractere especial e diferente da senha anterior. A tela responde sempre a mesma frase, exista ou não o cadastro. Acesso revogado não recebe o link. Muitos pedidos seguidos são recusados. Dentro do painel, a pessoa troca a senha informando a senha atual, a nova e a repetição. As outras sessões se encerram e o e-mail de login recebe um aviso sem a senha. A pessoa pode cadastrar um segundo e-mail só para receber o link. Esse endereço só vale depois que ela confirma o link enviado a ele, e o login não muda. Sem esse segundo e-mail, outro administrador indica na ficha o endereço novo e confirma, como nas outras alterações de pessoa. Sem confirmar, nada muda. A caixa antiga é avisada e pode cancelar em 24 horas. A caixa nova confirma. Só então o link de senha sai. Ninguém faz isso na própria ficha, e o pedido confirmado fica no histórico. No primeiro acesso, o administrador vê uma vez um código de recuperação, que não vai por e-mail. Com o e-mail de login e esse código, indica o e-mail que vai receber o link e cria a senha nova por esse link. O e-mail de login recebe o aviso, sem a senha. O código usado morre e outro aparece uma vez. O login continua o e-mail original. Quem perde a caixa e também o código não tem caminho na tela. O telefone do cadastro não recebe este link.
- **Depende de:** RF-010 (RF10), RF-011 (RF11)
- **Critérios de aceite:** CA-058 (CA58), CA-059 (CA59), CA-060 (CA60), CA-061 (CA61), CA-062 (CA62), CA-063 (CA63), CA-064 (CA64), CA-065 (CA65), CA-066 (CA66), CA-067 (CA67), CA-068 (CA68), CA-069 (CA69), CA-070 (CA70), CA-071 (CA71), CA-072 (CA72)
- [NEEDS CLARIFICATION: a quantidade de «muitos pedidos seguidos» não está no enunciado. RF17 não está em specs/api.yaml, specs/data-model.md, specs/use-cases.md nem specs/traceability.md.]

### RN-001

- **Origem:** RN01
- **Título no catálogo:** O cálculo do Valor de Conservação fica com o IIS
- **Feature:** dados
- **Status no catálogo:** proposed
- **Enunciado:** O Valor de Conservação é produzido pelo IIS em parceria com a SBio/MMA. A plataforma recebe esses resultados, organiza, publica, consulta e atualiza. A contratada não redefine a metodologia nem recalcula o valor, salvo se isso for incluído depois por instrumento próprio.
- **Depende de:** RF-002 (RF02), RF-007 (RF07)
- **Critérios de aceite:** CA-001 (CA01), CA-002 (CA02)

### RN-002

- **Origem:** RN02
- **Título no catálogo:** Sem média de Valor de Conservação por município ou estado
- **Feature:** consulta
- **Status no catálogo:** proposed
- **Enunciado:** A plataforma não calcula nem exibe média de Valor de Conservação por município ou por estado. A comparação é entre os imóveis listados no recorte.
- **Depende de:** RF-003 (RF03), RF-004 (RF04), RF-005 (RF05), RF-014 (RF14)
- **Critérios de aceite:** CA-012 (CA12)

### RN-003

- **Origem:** RN03
- **Título no catálogo:** Desenho cobre Mata Atlântica e Cerrado
- **Feature:** mapa
- **Status no catálogo:** proposed
- **Enunciado:** Na leitura por imóvel, o desenho desta versão cobre os biomas Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal. O filtro de bioma oferece esses cinco. Imóvel de outro bioma não entra nesta versão. O mapa pinta um bioma por vez, porque os valores não se comparam entre biomas: abrir o recibo de um imóvel abre o bioma desse imóvel. A leitura por território é outra tela e não coloca outros biomas na busca de imóvel.
- **Depende de:** RF-001 (RF01), RF-002 (RF02), RF-004 (RF04)
- **Critérios de aceite:** CA-025 (CA25), CA-026 (CA26), CA-030 (CA30), CA-032 (CA32), CA-073 (CA73)
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### RN-004

- **Origem:** RN04
- **Título no catálogo:** Mudança só vale depois da confirmação
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** Alterar usuário, cargo, camada, conteúdo ou informação publicada pede confirmação. Sem confirmar, o que está publicado permanece e o histórico não registra essa tentativa. Ao confirmar, o histórico guarda quem fez, quando e o que mudou. Camada ou tooltip novo só entra no observatório depois que o administrador testa a simulação e publica. Publicar antes do teste é recusado. Toda linha do histórico tem o detalhe do que mudou. Restaurar uma versão é do administrador, só quando o registro guarda o estado anterior, e pede a palavra RESTAURAR.
- **Depende de:** RF-006 (RF06), RF-010 (RF10), RF-011 (RF11), RF-012 (RF12), RF-013 (RF13)
- **Critérios de aceite:** CA-040 (CA40), CA-041 (CA41), CA-042 (CA42)

### RNF-001

- **Origem:** RNF01
- **Título no catálogo:** Garantia de 180 dias
- **Feature:** entrega
- **Status no catálogo:** proposed
- **Enunciado:** Por 180 dias depois da homologação final, defeitos e comportamentos diferentes dos requisitos homologados são corrigidos sem custo adicional. Função nova, fora do escopo, só entra com autorização da contratante.
- **Depende de:** RF-008 (RF08)
- **Critérios de aceite:** CA-021 (CA21), CA-022 (CA22)
- [NEEDS CLARIFICATION: specs/traceability.md marca RNF01 como não atendido, sem artefato. specs/honesty.md marca a garantia de 180 dias como simulada. Não há critério verificável de correção além do enunciado.]

### RNF-002

- **Origem:** RNF02
- **Título no catálogo:** Dados pessoais seguem a LGPD
- **Feature:** administracao
- **Status no catálogo:** proposed
- **Enunciado:** Quando a execução tratar dados pessoais, o tratamento segue a Lei Geral de Proteção de Dados e as orientações de segurança da contratante e do MMA.
- **Depende de:** RF-006 (RF06), RF-011 (RF11)
- **Critérios de aceite:** CA-023 (CA23)
- [NEEDS CLARIFICATION: specs/traceability.md marca RNF02 como não atendido, sem artefato. specs/honesty.md marca o tratamento LGPD como simulado. O enunciado não lista as orientações de segurança da contratante e do MMA.]

### RNF-003

- **Origem:** RNF03
- **Título no catálogo:** Portal responsivo
- **Feature:** mapa
- **Status no catálogo:** proposed
- **Enunciado:** O portal web funciona em tela de computador e em tela menor, com o mapa e a consulta utilizáveis nos dois casos.
- **Depende de:** RF-001 (RF01)
- **Critérios de aceite:** CA-024 (CA24)
- [NEEDS CLARIFICATION: specs/traceability.md marca RNF03 como não atendido, sem artefato. specs/honesty.md marca o comportamento responsivo como simulado. O enunciado não define largura de tela nem o que conta como consulta utilizável.]

## Acceptance Criteria

Texto de `discovery/index.json` (`dado`, `quando`, `entao`). `specs/traceability.md` deixa CA01–CA54 como não verificados e não lista CA55–CA73. `specs/use-cases.md` nomeia o controlador e não descreve o fluxo.

### CA-001

- **Verifica:** RN-001 (RN01)
- **Dado** que o IIS entregou uma camada de Valor de Conservação já calculada
- **Quando** a plataforma publica essa camada
- **Então** o valor exibido é o valor recebido, sem novo cálculo na plataforma
- **Rastreabilidade:** CA01 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-23 (onCA01 (dados)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-002

- **Verifica:** RN-001 (RN01)
- **Dado** que uma pessoa está consultando um imóvel
- **Quando** ela tenta alterar pesos ou recalcular o Valor de Conservação
- **Então** a plataforma não oferece esse cálculo
- **Rastreabilidade:** CA02 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-24 (onCA02 (dados)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-003

- **Verifica:** RF-001 (RF01)
- **Dado** que a pessoa abre o observatório sem login
- **Quando** ela move, amplia e liga uma camada
- **Então** o mapa responde e mostra a camada escolhida
- **Rastreabilidade:** CA03 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-33 (onCA03 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-004

- **Verifica:** RF-001 (RF01)
- **Dado** que o mapa está aberto
- **Quando** a pessoa desliga uma camada
- **Então** essa camada deixa de aparecer e as demais permanecem
- **Rastreabilidade:** CA04 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-34 (onCA04 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-005

- **Verifica:** RF-002 (RF02)
- **Dado** que o IIS entregou a camada de carbono e a de biomas
- **Quando** a pessoa liga essas camadas
- **Então** elas aparecem no mapa junto com o Valor de Conservação
- **Rastreabilidade:** CA05 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-35 (onCA05 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-006

- **Verifica:** RF-002 (RF02)
- **Dado** que uma variável temática ainda não foi entregue pelo IIS
- **Quando** a pessoa procura essa camada
- **Então** a plataforma não inventa o dado dessa variável
- **Rastreabilidade:** CA06 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-36 (onCA06 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.
- [NEEDS CLARIFICATION: CA06 diz que a plataforma não inventa variável ainda não entregue. O contrato specs/api.yaml, operação exibirCamadas, diz que variáveis ausentes no arquivo usam um número simulado e a ficha marca isso.]

### CA-007

- **Verifica:** RF-003 (RF03)
- **Dado** que um imóvel tem Valor de Conservação e atributos do CAR
- **Quando** a pessoa seleciona esse imóvel
- **Então** vê o valor, os dados do CAR disponíveis e as variáveis associadas
- **Rastreabilidade:** CA07 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-17 (onCA07 (consulta)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-008

- **Verifica:** RF-003 (RF03)
- **Dado** que o imóvel não tem uma variável associada
- **Quando** a pessoa seleciona esse imóvel
- **Então** a ficha mostra o que existe e não preenche a variável faltante
- **Rastreabilidade:** CA08 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-18 (onCA08 (consulta)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-009

- **Verifica:** RF-004 (RF04)
- **Dado** que há imóveis em um município
- **Quando** a pessoa filtra por esse município e por uma faixa de valor
- **Então** a lista e o mapa mostram só os imóveis que atendem aos dois filtros
- **Rastreabilidade:** CA09 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-19 (onCA09 (consulta)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-010

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa informa um recibo de CAR que existe
- **Quando** ela busca
- **Então** a plataforma localiza o imóvel correspondente
- **Rastreabilidade:** CA10 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-20 (onCA10 (consulta)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-011

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa informa um recibo de CAR que não existe
- **Quando** ela busca
- **Então** a plataforma informa que não encontrou o imóvel e não mostra outro no lugar
- **Rastreabilidade:** CA11 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-21 (onCA11 (consulta)); UC-37 (onCA11 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-012

- **Verifica:** RN-002 (RN02)
- **Dado** que a pessoa filtrou um município
- **Quando** ela olha o resultado
- **Então** vê os imóveis e seus valores, sem uma média do município ou do estado
- **Rastreabilidade:** CA12 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-22 (onCA12 (consulta)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-013

- **Verifica:** RF-005 (RF05)
- **Dado** que há indicadores na tela
- **Quando** a pessoa muda o filtro
- **Então** números e gráficos passam a refletir o novo recorte
- **Rastreabilidade:** CA13 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-31 (onCA13 (indicadores)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-014

- **Verifica:** RF-006 (RF06)
- **Dado** que uma pessoa tem perfil administrativo
- **Quando** ela entra na área administrativa
- **Então** consegue gerir usuários e permissões, atualizar ou incluir camadas e conteúdos e acompanhar o que está publicado
- **Rastreabilidade:** CA14 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-01 (onCA14 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-015

- **Verifica:** RF-006 (RF06)
- **Dado** que uma pessoa está no mapa público
- **Quando** ela procura upload de arquivo ou calibração de pesos
- **Então** essas funções não estão disponíveis
- **Rastreabilidade:** CA15 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-02 (onCA15 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-016

- **Verifica:** RF-006 (RF06)
- **Dado** que uma pessoa não tem perfil administrativo
- **Quando** ela tenta abrir a área administrativa
- **Então** o acesso é recusado
- **Rastreabilidade:** CA16 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-03 (onCA16 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-017

- **Verifica:** RF-007 (RF07)
- **Dado** que o IIS entregou um novo conjunto de Valor de Conservação ligado aos polígonos do CAR
- **Quando** a rotina de carga publica esse conjunto
- **Então** o mapa passa a consultar os novos valores
- **Rastreabilidade:** CA17 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-25 (onCA17 (dados)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-018

- **Verifica:** RF-007 (RF07)
- **Dado** que o arquivo recebido não pode ser publicado
- **Quando** a carga é tentada
- **Então** a inconsistência é informada e o dado anterior publicado permanece
- **Rastreabilidade:** CA18 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-26 (onCA18 (dados)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-019

- **Verifica:** RF-008 (RF08)
- **Dado** que a solução foi homologada
- **Quando** ocorre a implantação
- **Então** produção, código-fonte, documentação, manuais e treinamento de uso e de administração são entregues
- **Rastreabilidade:** CA19 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-27 (onCA19 (entrega)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-020

- **Verifica:** RF-009 (RF09)
- **Dado** que um produto da tabela contratual foi entregue
- **Quando** o contratante aprova e a nota fiscal é emitida
- **Então** o pagamento daquele produto pode seguir, dentro da vigência até 15/12/2026
- **Rastreabilidade:** CA20 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-28 (onCA20 (entrega)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-021

- **Verifica:** RNF-001 (RNF01)
- **Dado** que a homologação final ocorreu há menos de 180 dias
- **Quando** aparece um defeito em relação ao que foi homologado
- **Então** a correção é feita sem custo adicional
- **Rastreabilidade:** CA21 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-29 (onCA21 (entrega)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-022

- **Verifica:** RNF-001 (RNF01)
- **Dado** que alguém pede uma função que não estava no escopo homologado
- **Quando** o pedido chega no canal de suporte
- **Então** ele não é tratado como garantia e depende de autorização da contratante
- **Rastreabilidade:** CA22 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-30 (onCA22 (entrega)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-023

- **Verifica:** RNF-002 (RNF02)
- **Dado** que a área administrativa trata dados pessoais
- **Quando** esses dados são armazenados ou compartilhados
- **Então** o tratamento segue a LGPD e as orientações da contratante e do MMA
- **Rastreabilidade:** CA23 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-04 (onCA23 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-024

- **Verifica:** RNF-003 (RNF03)
- **Dado** que a pessoa abre o portal em uma tela menor
- **Quando** ela consulta o mapa e um filtro
- **Então** a consulta continua utilizável
- **Rastreabilidade:** CA24 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-38 (onCA24 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-025

- **Verifica:** RN-003 (RN03)
- **Dado** que a pessoa abre o filtro de bioma
- **Quando** ela vê as opções
- **Então** as opções são Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal
- **Rastreabilidade:** CA25 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-39 (onCA25 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### CA-026

- **Verifica:** RN-003 (RN03)
- **Dado** que um imóvel está fora dos cinco biomas desta versão
- **Quando** a pessoa busca esse imóvel nesta versão
- **Então** ele não aparece no mapa nem na lista
- **Rastreabilidade:** CA26 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-40 (onCA26 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### CA-027

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa digita o começo de um município na barra
- **Quando** aparecem sugestões
- **Então** a lista mostra municípios com nome parecido, no formato município-UF
- **Rastreabilidade:** CA27 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-41 (onCA27 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-028

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa escolhe Campos dos Goytacazes-RJ, município na Mata Atlântica
- **Quando** a barra aplica a busca
- **Então** o mapa dá zoom nesse município, a lista mostra os imóveis dele e não aparece aviso de fora da versão
- **Rastreabilidade:** CA28 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-42 (onCA28 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-029

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa escolhe Ouro Preto-MG, município com só uma parte na Mata Atlântica
- **Quando** a barra aplica a busca
- **Então** o mapa dá zoom nessa parte e a lista mostra os imóveis que estão nela, sem aviso de fora da versão
- **Rastreabilidade:** CA29 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-43 (onCA29 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-030

- **Verifica:** RN-003 (RN03)
- **Dado** que a pessoa escolhe Manaus-AM, município fora da Mata Atlântica e do Cerrado
- **Quando** a barra aplica a busca
- **Então** o mapa vai até esse município, aparece o aviso de que não faz parte desta versão, e não mostra imóveis nem Valor de Conservação
- **Rastreabilidade:** CA30 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-44 (onCA30 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### CA-031

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa informa o recibo inteiro de um imóvel publicado na Mata Atlântica ou no Cerrado
- **Quando** a barra busca
- **Então** o mapa dá zoom nesse imóvel, no polígono já publicado
- **Rastreabilidade:** CA31 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-45 (onCA31 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-032

- **Verifica:** RN-003 (RN03)
- **Dado** que a pessoa informa um recibo de imóvel fora dos cinco biomas desta versão
- **Quando** a barra busca
- **Então** o sistema avisa que o recibo não faz parte desta versão, não move o mapa e não mostra outro imóvel
- **Rastreabilidade:** CA32 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-46 (onCA32 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.
- [NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

### CA-033

- **Verifica:** RF-010 (RF10)
- **Dado** que a pessoa clica em Área do Gestor sem ter entrado
- **Quando** a tela abre
- **Então** aparece o login interno e o painel de gerenciamento fica fechado
- **Rastreabilidade:** CA33 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-05 (onCA33 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-034

- **Verifica:** RF-010 (RF10)
- **Dado** que a pessoa informa um acesso de perfil administrativo
- **Quando** ela entra
- **Então** o painel de gerenciamento abre
- **Rastreabilidade:** CA34 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-06 (onCA34 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-035

- **Verifica:** RF-010 (RF10)
- **Dado** que a pessoa informa um acesso que não vale
- **Quando** ela tenta entrar
- **Então** o painel permanece fechado
- **Rastreabilidade:** CA35 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-07 (onCA35 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-036

- **Verifica:** RF-011 (RF11)
- **Dado** que um administrador está no painel
- **Quando** ele registra um usuário e escolhe um dos cargos iniciais
- **Então** o usuário passa a entrar na área com esse cargo
- **Rastreabilidade:** CA36 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-08 (onCA36 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-037

- **Verifica:** RF-011 (RF11)
- **Dado** que um administrador está no painel
- **Quando** ele cria um cargo novo e marca o que esse cargo pode fazer
- **Então** o cargo fica disponível para atribuir a um usuário
- **Rastreabilidade:** CA37 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-09 (onCA37 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-038

- **Verifica:** RF-011 (RF11)
- **Dado** que a pessoa entrou como editor de conteúdo
- **Quando** ela tenta registrar um usuário
- **Então** o registro é recusado
- **Rastreabilidade:** CA38 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-10 (onCA38 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-039

- **Verifica:** RF-011 (RF11)
- **Dado** que a pessoa entrou como editor de conteúdo ou editor de camadas
- **Quando** ela tenta atualizar a área do outro cargo
- **Então** a alteração é recusada
- **Rastreabilidade:** CA39 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-11 (onCA39 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-040

- **Verifica:** RN-004 (RN04)
- **Dado** que a pessoa pode atualizar uma camada
- **Quando** ela confirma a alteração
- **Então** a camada publicada muda e o histórico guarda quem fez, quando e o que mudou
- **Rastreabilidade:** CA40 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-12 (onCA40 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-041

- **Verifica:** RN-004 (RN04)
- **Dado** que a pessoa iniciou uma alteração
- **Quando** ela não confirma
- **Então** o que está publicado permanece e o histórico não registra essa tentativa
- **Rastreabilidade:** CA41 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-13 (onCA41 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-042

- **Verifica:** RN-004 (RN04)
- **Dado** que a pessoa pode atualizar um conteúdo
- **Quando** ela confirma a alteração
- **Então** o tooltip publicado muda e o histórico guarda quem escreveu
- **Rastreabilidade:** CA42 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-14 (onCA42 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-043

- **Verifica:** RF-012 (RF12)
- **Dado** que uma alteração confirmada mudou o que o público vê
- **Quando** a pessoa abre o observatório
- **Então** um canto da tela mostra a data e a hora dessa atualização
- **Rastreabilidade:** CA43 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-47 (onCA43 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-044

- **Verifica:** RF-012 (RF12)
- **Dado** que a pessoa cancelou a confirmação
- **Quando** alguém abre o observatório
- **Então** a data da última atualização não muda
- **Rastreabilidade:** CA44 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-48 (onCA44 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-045

- **Verifica:** RF-012 (RF12)
- **Dado** que a pessoa consulta o mapa sem login
- **Quando** ela olha o observatório
- **Então** vê a data da última atualização confirmada
- **Rastreabilidade:** CA45 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-49 (onCA45 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-046

- **Verifica:** RF-013 (RF13)
- **Dado** que a pessoa envia um tooltip novo com texto e posição
- **Quando** o envio termina
- **Então** o tooltip fica na fila, ainda fora do ar, para o administrador testar e publicar
- **Rastreabilidade:** CA46 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-15 (onCA46 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-047

- **Verifica:** RF-013 (RF13)
- **Dado** que a pessoa pode atualizar um tooltip
- **Quando** ela confirma a exclusão
- **Então** o tooltip sai da lista e do observatório e o histórico guarda quem excluiu
- **Rastreabilidade:** CA47 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-16 (onCA47 (administracao)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-048

- **Verifica:** RF-013 (RF13)
- **Dado** que um tooltip foi confirmado
- **Quando** a pessoa abre o observatório
- **Então** o texto aparece no local escolhido, no ícone i ou ao passar o mouse
- **Rastreabilidade:** CA48 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** UC-50 (onCA48 (mapa)). O caso em `specs/use-cases.md` não tem passos, ator nem fluxo alternativo.

### CA-049

- **Verifica:** RF-014 (RF14)
- **Dado** que a pessoa está em Estatísticas deste conjunto com um recorte na tela
- **Quando** ela clica em Exportar, escolhe um formato e baixa
- **Então** recebe um arquivo com o mesmo recorte e os mesmos números da tela
- **Rastreabilidade:** CA49 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** [NEEDS CLARIFICATION: CA49 não tem caso em specs/use-cases.md]

### CA-050

- **Verifica:** RF-014 (RF14)
- **Dado** que a pessoa escolheu Excel (.xlsx)
- **Quando** ela abre o arquivo
- **Então** vê o logo e as cores do Observatório gef, o recorte e as tabelas, com imóveis e hectares em colunas de número
- **Rastreabilidade:** CA50 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** [NEEDS CLARIFICATION: CA50 não tem caso em specs/use-cases.md]

### CA-051

- **Verifica:** RF-014 (RF14)
- **Dado** que a pessoa escolheu PDF
- **Quando** ela abre o arquivo
- **Então** vê páginas A4 com o logo e o cabeçalho do Observatório gef, as seções das estatísticas e o número da página no rodapé
- **Rastreabilidade:** CA51 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** [NEEDS CLARIFICATION: CA51 não tem caso em specs/use-cases.md]

### CA-052

- **Verifica:** RF-014 (RF14)
- **Dado** que a pessoa escolheu planilha simples (CSV)
- **Quando** ela abre o arquivo numa planilha
- **Então** o conteúdo é só texto separado por ponto e vírgula, sem logo, e os acentos aparecem certos
- **Rastreabilidade:** CA52 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** [NEEDS CLARIFICATION: CA52 não tem caso em specs/use-cases.md]

### CA-053

- **Verifica:** RF-014 (RF14)
- **Dado** que o recorte está fora da Mata Atlântica e do Cerrado
- **Quando** a pessoa exporta as estatísticas
- **Então** o arquivo traz o aviso de fora da versão e nenhum Valor de Conservação
- **Rastreabilidade:** CA53 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** [NEEDS CLARIFICATION: CA53 não tem caso em specs/use-cases.md]
- [NEEDS CLARIFICATION: CA53 trata o recorte fora da Mata Atlântica e do Cerrado. CA25, CA26 e CA32, no mesmo discovery/index.json, falam em cinco biomas.]

### CA-054

- **Verifica:** RF-014 (RF14)
- **Dado** que a pessoa exportou as estatísticas em qualquer formato
- **Quando** ela lê o arquivo
- **Então** não há média de Valor de Conservação por município ou por estado
- **Rastreabilidade:** CA54 em `specs/traceability.md`, situação rastreado, veredicto não verificado.
- **Caso de uso:** [NEEDS CLARIFICATION: CA54 não tem caso em specs/use-cases.md]

### CA-055

- **Verifica:** RF-015 (RF15)
- **Dado** que a pessoa abre a leitura por território
- **Quando** ela escolhe Caatinga, benefícios e paisagem
- **Então** o mapa mostra a prioridade recebida, sem recalcular a nota
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA55 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA55 não tem caso em specs/use-cases.md]
- [NEEDS CLARIFICATION: CA55 não está em specs/use-cases.md nem em specs/traceability.md. O texto de RF15 que ele verifica diverge de sim-mvp/v1/prioridade/meta.md.]

### CA-056

- **Verifica:** RF-016 (RF16)
- **Dado** que o observatório registrou acessos
- **Quando** o administrador abre a visão geral e escolhe os últimos 30 dias
- **Então** vê os acessos do período, o tempo médio de navegação, a leitura mais usada, a camada mais ligada, a busca mais feita e o lugar mais consultado
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA56 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA56 não tem caso em specs/use-cases.md]
- [NEEDS CLARIFICATION: CA56 não está em specs/use-cases.md nem em specs/traceability.md.]

### CA-057

- **Verifica:** RF-004 (RF04)
- **Dado** que a pessoa buscou um município e o menu esquerdo ficou nesse município
- **Quando** ela aperta o x da barra de busca
- **Então** bioma, estado, município, faixa de Valor de Conservação e a busca ficam limpos, e o mapa mostra de novo os imóveis do recorte
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA57 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA57 não tem caso em specs/use-cases.md]

### CA-058

- **Verifica:** RF-017 (RF17)
- **Dado** que o e-mail de login está ativo
- **Quando** a pessoa pede Esqueci minha senha
- **Então** a tela mostra a mesma frase de sempre e o e-mail de login recebe um link de uso único, válido por 1 hora, sem senha pronta
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA58 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA58 não tem caso em specs/use-cases.md]

### CA-059

- **Verifica:** RF-017 (RF17)
- **Dado** que o e-mail não está cadastrado ou o acesso foi revogado
- **Quando** a pessoa pede Esqueci minha senha
- **Então** a tela mostra a mesma frase e nenhum link é enviado
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA59 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA59 não tem caso em specs/use-cases.md]

### CA-060

- **Verifica:** RF-017 (RF17)
- **Dado** que o link de senha já foi usado ou passou de 1 hora
- **Quando** a pessoa abre o link
- **Então** a senha não muda
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA60 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA60 não tem caso em specs/use-cases.md]

### CA-061

- **Verifica:** RF-017 (RF17)
- **Dado** que a pessoa abre um link de senha válido
- **Quando** a senha nova não cumpre as regras ou repete a anterior
- **Então** a senha não muda
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA61 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA61 não tem caso em specs/use-cases.md]

### CA-062

- **Verifica:** RF-017 (RF17)
- **Dado** que a pessoa está no painel
- **Quando** ela informa a senha atual e uma senha nova válida
- **Então** a senha muda, as outras sessões se encerram e o e-mail de login recebe um aviso sem a senha
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA62 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA62 não tem caso em specs/use-cases.md]

### CA-063

- **Verifica:** RF-017 (RF17)
- **Dado** que a pessoa está no painel e informa um segundo e-mail
- **Quando** esse e-mail ainda não confirmou o link
- **Então** o login continua o e-mail original e o link de senha não vai para o segundo e-mail
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA63 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA63 não tem caso em specs/use-cases.md]

### CA-064

- **Verifica:** RF-017 (RF17)
- **Dado** que o segundo e-mail foi confirmado
- **Quando** a pessoa pede o link dizendo que não tem acesso ao e-mail de login
- **Então** o link vai para o segundo e-mail e o login não muda
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA64 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA64 não tem caso em specs/use-cases.md]

### CA-065

- **Verifica:** RF-017 (RF17)
- **Dado** que outro administrador indica um e-mail novo na ficha
- **Quando** ele não confirma a alteração
- **Então** nada muda e o histórico não registra a tentativa
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA65 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA65 não tem caso em specs/use-cases.md]

### CA-066

- **Verifica:** RF-017 (RF17)
- **Dado** que outro administrador indica um e-mail novo na ficha
- **Quando** a caixa antiga cancela em até 24 horas, ou a caixa nova ainda não confirmou
- **Então** o link de senha não sai e o login não muda
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA66 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA66 não tem caso em specs/use-cases.md]

### CA-067

- **Verifica:** RF-017 (RF17)
- **Dado** que outro administrador indica um e-mail novo e a caixa nova confirma
- **Quando** passam 24 horas sem cancelamento da caixa antiga
- **Então** o link de senha vai para o e-mail novo, o pedido fica no histórico e o login não muda
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA67 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA67 não tem caso em specs/use-cases.md]

### CA-068

- **Verifica:** RF-017 (RF17)
- **Dado** que a pessoa é administradora e está na própria ficha
- **Quando** ela tenta indicar outro e-mail para o próprio link de senha
- **Então** o pedido é recusado
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA68 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA68 não tem caso em specs/use-cases.md]

### CA-069

- **Verifica:** RF-017 (RF17)
- **Dado** que é o primeiro acesso de um administrador
- **Quando** ele cria a senha nova
- **Então** o código de recuperação aparece uma vez na tela e não é enviado por e-mail
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA69 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA69 não tem caso em specs/use-cases.md]

### CA-070

- **Verifica:** RF-017 (RF17)
- **Dado** que o administrador informa o e-mail de login e o código de recuperação válido e indica outro e-mail
- **Quando** esse outro e-mail abre o link
- **Então** ele cria a senha nova, o e-mail de login recebe o aviso sem a senha, o login continua o e-mail original, o código usado morre e um código novo aparece uma vez
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA70 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA70 não tem caso em specs/use-cases.md]

### CA-071

- **Verifica:** RF-017 (RF17)
- **Dado** que a pessoa não tem o segundo e-mail nem o código de recuperação
- **Quando** ela tenta informar um e-mail novo na tela de login
- **Então** a tela não aceita o endereço e nenhum link sai
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA71 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA71 não tem caso em specs/use-cases.md]

### CA-072

- **Verifica:** RF-017 (RF17)
- **Dado** que o cadastro tem telefone
- **Quando** a pessoa pede a recuperação da senha
- **Então** o telefone não recebe o link
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA72 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA72 não tem caso em specs/use-cases.md]

### CA-073

- **Verifica:** RN-003 (RN03)
- **Dado** que a pessoa busca o recibo de um imóvel de um bioma diferente do que está aberto
- **Quando** a barra encontra esse imóvel
- **Então** o mapa abre o bioma desse imóvel e a legenda passa a mostrar esse bioma
- **Rastreabilidade:** [NEEDS CLARIFICATION: CA73 não aparece em specs/traceability.md]
- **Caso de uso:** [NEEDS CLARIFICATION: CA73 não tem caso em specs/use-cases.md]
- [NEEDS CLARIFICATION: CA73 manda abrir o bioma do imóvel encontrado. Não está em specs/use-cases.md nem em specs/traceability.md. O recorte de biomas segue o conflito registrado em RN03.]

## Out of Scope

Lista `escopo.naoInclui` de `discovery/index.json`, copiada sem completar:

- Cálculo ou recálculo do Valor de Conservação
- No mapa público, upload de arquivo e calibração de pesos
- Média de Valor de Conservação por município ou por estado
- Na leitura por imóvel, biomas além de Mata Atlântica e Cerrado
- Leitura por território de Mata Atlântica e Cerrado, enquanto o arquivo não chega

[NEEDS CLARIFICATION: o recorte de biomas da leitura por imóvel não é o mesmo em todas as fontes. discovery/index.json (2026-11-03) afirma cinco biomas (Caatinga, Cerrado, Mata Atlântica, Pampa e Pantanal) em RN03, RF04, CA25, CA26 e CA32. O mesmo arquivo, em escopo.inclui, escopo.naoInclui e no título de RN03 («Desenho cobre Mata Atlântica e Cerrado»), fala só em Mata Atlântica e Cerrado. CA30, que verifica RN03, trata Manaus-AM como fora da Mata Atlântica e do Cerrado e não diz se Caatinga, Pampa e Pantanal entram nessa busca. RF06 limita a pré-análise ao desenho que cruza Mata Atlântica ou Cerrado. prd/_overview.md, specs/api.yaml (filtrarImoveis, filtrarImoveisMapa, sugerirFiltro e exibirCamadas), a documentação de arquitetura de 06/10/2026 e as issues 01 a 05 do observatório público também ficam em Mata Atlântica e Cerrado.]

Também fora do desenvolvimento, segundo `issues/observatorio-v1/00-indice.md` e `issues/gestao-v1/00-indice.md`: RF08, RF09, RNF01 e CA19–CA22 são entrega do contrato, não issue de construção. A leitura por território (RF15) fica fora da leva de gestão.

A documentação de arquitetura de 06/10/2026 registra a decisão «Login gov.br ficou fora deste contrato». `issues/observatorio-v1/01-base-do-projeto.md` só diz que a autenticação fica para a fase da gestão. O catálogo não tem um item de escopo com o texto do gov.br.

## Glossary

Somente os termos de `glossario` em `discovery/index.json`.

- **Valor de Conservação** — Índice produzido pelo IIS e pela SBio/MMA para imóveis rurais privados, publicado na plataforma sem recálculo. (fonte: Termo de Referência)
- **CAR** — Cadastro Ambiental Rural. A busca do imóvel usa o número do recibo do CAR. (fonte: Termo de Referência)
- **Perfil administrativo** — Acesso por login interno para gestão de usuários e cargos, atualização e inclusão de camadas e conteúdos, confirmação das mudanças e acompanhamento do que está publicado. (fonte: Termo de Referência, etapa 4, e decisão do PO em 29/09/2026)

[NEEDS CLARIFICATION: o glossário não define IIS, SBio/MMA, tooltip, bioma, recibo, faixa de Valor de Conservação, leitura por território, nota de prioridade nem SIRGAS 2000.]

## Success Criteria

[NEEDS CLARIFICATION: o discovery não declara uma seção de critérios de sucesso nem meta numérica de uso, desempenho ou disponibilidade. Os campos `value` e `measurableTarget` já gravados em cada requisito estão abaixo. Onde o campo não existe, não há critério de sucesso declarado para esse requisito.]

`specs/honesty.md` registra 0 de 54 CA verificados. Isso descreve o protótipo; não é meta de sucesso.

- **RF-001** — value: Qualquer pessoa consegue ver o território e o Valor de Conservação sem precisar de cadastro.
- **RF-002** — value: Dá para ver o valor final e, quando houver dado, o que compõe esse valor.
- **RF-003** — value: A pessoa entende o valor daquele imóvel sem sair do mapa.
- **RF-004** — value: Dá para achar um imóvel ou um recorte territorial sem percorrer o mapa inteiro.
- **RF-005** — value: O painel resume o conjunto de dados que a pessoa está vendo.
- **RF-006** — value: A equipe entra numa área fechada e atualiza o observatório sem abrir o cálculo do Valor de Conservação.
- **RF-007** — value: O mapa mostra o dado oficial do projeto, atualizado quando chegar uma nova entrega.
- **RF-008** — value: O contratante consegue operar e continuar a plataforma depois da entrega.
- **RF-009** — value: O pagamento e o fim do trabalho seguem os produtos aprovados até 15 de dezembro de 2026.
- **RF-010** — value: Quem não tem acesso não vê o gerenciamento do observatório.
- **RF-011** — value: Cada pessoa da equipe mexe só no que o cargo dela permite.
- **RF-012** — value: Quem consulta o mapa sabe qual é a versão publicada do painel.
- **RF-013** — value: O texto de ajuda do mapa é o que a equipe confirmou, e dá para saber quem escreveu.
- **RF-014** — value: Quem consulta leva os números do recorte para um relatório ou outro sistema sem refazer a formatação.
- **RF-015** — [NEEDS CLARIFICATION: sem `value` e sem `measurableTarget`]
- **RF-016** — value: A equipe do MMA acompanha o uso, o comportamento de quem consulta o observatório e onde concentrar conteúdo e leitura territorial.
- **RF-017** — value: Quem esquece a senha volta ao painel sem entregar a conta a quem só conhece o e-mail.
- **RN-001** — value: O número publicado é o mesmo produzido pelo projeto, sem uma segunda conta feita na plataforma.
- **RN-002** — value: A comparação permanece no imóvel, que é a unidade do dado.
- **RN-003** — value: O protótipo e as regras mostram só o território combinado para esta versão.
- **RN-004** — value: Uma mudança no observatório não acontece por engano e dá para ver o que foi alterado.
- **RNF-001** — value: O observatório permanece corrigido depois de entrar em produção, dentro do que foi homologado. · measurableTarget: 180 dias após a homologação final
- **RNF-002** — value: Dados de pessoas não são usados fora das regras combinadas com o contratante e o MMA.
- **RNF-003** — value: A consulta não fica restrita a um único tamanho de tela.

## Open Questions

1. Recorte de biomas da leitura por imóvel: cinco biomas no enunciado regravado em 03/11/2026, ou só Mata Atlântica e Cerrado nas demais fontes do mesmo repositório. Ver RN-003, RF-004, RF-006, CA-025, CA-026, CA-030, CA-032, CA-053 e CA-073.
2. Texto vigente de RF-015: o enunciado curto do discovery e de `prd/prioridade.md`, ou o `@req` longo de `sim-mvp/v1/prioridade/meta.md`.
3. Variável ainda não entregue: CA-006 proíbe inventar o dado; `specs/api.yaml` (`exibirCamadas`) usa número simulado marcado na ficha.
4. Quais são os «dois números por bioma» de RF-005. O schema `PorBioma` do contrato qas tem `imoveis` e `areaHa`; o enunciado do discovery não os nomeia.
5. Quantos pedidos seguidos de recuperação de senha passam a ser recusados em RF-017.
6. Orientações de segurança da contratante e do MMA citadas em RNF-002, e o que torna a consulta «utilizável» em tela menor em RNF-003.
7. CA55–CA73 e RF15–RF17 não entraram em `specs/traceability.md`, `specs/use-cases.md` nem `specs/honesty.md`, que param em 29/09/2026. `specs/use-cases.md` não descreve passos de nenhum caso.
8. Comparação de até três imóveis está em `specs/api.yaml` (`compararImoveis`, ligada a RF03 e RN02) e na issue `06-ficha-e-comparacao.md`. O enunciado de RF03 no discovery não menciona comparação nem o limite de três.
9. `discovery/index.json` traz um conflito já marcado como resolvido pelo PO (`perfil-admin`: Termo de Referência, reunião de 28/09 e conversa de 29/09). O texto da resolução não está nesse registro, só o status «resolvido pelo PO».
10. Nomes dos seis schemas PostgreSQL, contrato HTTP do produto (além do contrato levantado do MVP) e entidade da leitura por território e do registro de uso: ver `epic/plan.md`.

