# Design — Esconder Adiantamento + Cheque Especial da criacao de emprestimo

> Data: **2026-07-14**. Branch: `feat/loan-product-required-cosif-accounts`.
> Status: **aprovado no brainstorming**. Area: credito (frontend `SimulationDialog.vue`).

## Problema

Na tela de criacao de emprestimo (`SimulationDialog`), o dropdown de produtos lista TODOS os produtos
ativos — inclusive **Adiantamento** e **Cheque Especial**, que sao liberados por outra tela ou
automaticamente pelo sistema, nao por essa criacao manual.

## Achado
- Os produtos vem do composable **compartilhado** `useLoanProducts` (usado tambem pela tela de Cheque
  Especial via `useOverdraft` e pela gestao de produtos `LoanProductsView`) → filtrar no endpoint/composable
  quebraria essas telas. **O filtro tem que ser local ao dropdown do SimulationDialog.**
- O tipo do produto e o campo **`model_type`** (`loan_product`): valores `normal | limite | garantidor |
  adiantamento | renegociacao`, onde **`limite` = Cheque Especial** e **`adiantamento` = Adiantamento**
  (doc do schema `loan_product.ex`). O tipo TS `LoanProductModelType` ja existe.
- `activeProducts` (filtra `p.active`) alimenta `productOptions` (dropdown) E `selectedProduct`
  (`activeProducts.find(id)`).

## Comportamento
- O dropdown de produtos passa a **excluir** produtos com `model_type ∈ {"limite", "adiantamento"}`.
- Mantem `normal`, `garantidor`, `renegociacao`.

## Frontend (`SimulationDialog.vue`)
- Filtrar no **`productOptions`** (o dropdown), NAO no `activeProducts` — assim `selectedProduct` continua
  resolvendo qualquer produto ja pre-selecionado (ex.: uma renegociacao desses tipos), so nao aparece pra
  escolher num emprestimo novo. Constante `HIDDEN_MODEL_TYPES = ['limite', 'adiantamento']`.
- Sem mudanca no backend nem nas outras telas.

## Testes
- Front: type-check.
- Validacao viva: o dropdown de novo emprestimo nao lista mais Adiantamento nem Cheque Especial; os demais
  (normal etc.) seguem aparecendo.

## Fora de escopo (YAGNI)
- Filtrar `garantidor`/`renegociacao` (so os dois pedidos).
- Mudar o endpoint/composable de produtos ou as telas de Cheque Especial / gestao de produtos.

## Arquivos afetados
| Arquivo | Mudanca |
|---|---|
| `SimulationDialog.vue` | `productOptions` exclui `model_type ∈ {limite, adiantamento}` |
