# Módulo Consultora Financeira Estratégica — TudoCerto

Este módulo foi criado para ser acoplado manualmente à plataforma sem alterar o core atual.

## O que ele faz

- Lê o contexto financeiro enviado pelo frontend ou backend da TudoCerto.
- Analisa renda, teto mensal, gastos, categorias, metas, cofre e aportes.
- Gera parecer financeiro estratégico.
- Gera relatório HTML completo.
- Conversa com o usuário por endpoint `/advisor/chat`.
- Simula cenários de investimento por prazo e perfil.
- Busca contexto macroeconômico básico pela API pública do Banco Central quando disponível.

## Como subir isolado

1. Copie a pasta `tudocerto-financial-advisor-module` para o mesmo nível do projeto TudoCerto.
2. Confirme o nome da network Docker da TudoCerto:

```bash
docker network ls
```

3. Se a rede não for `tudocerto_default`, ajuste em `docker-compose.advisor.yml`.
4. Suba o módulo:

```bash
docker compose -f docker-compose.advisor.yml up --build -d
```

5. Teste:

```bash
curl http://localhost:4100/health
```

## Endpoints

### GET /health
Verifica se o serviço está vivo.

### GET /advisor/market-context
Retorna Selic/CDI/IPCA estimados e premissas.

### POST /advisor/analyze
Recebe o contexto financeiro e devolve parecer estruturado.

### POST /advisor/chat
Recebe pergunta do usuário e contexto financeiro.

```json
{
  "question": "Como posso economizar mais este mês?",
  "context": {
    "monthlyIncome": 12000,
    "monthlyLimit": 9000,
    "expenses": [],
    "categories": [],
    "vault": { "balance": 1000, "goal": 10000 }
  }
}
```

### POST /advisor/scenarios
Simula cenários de investimento.

```json
{
  "initialAmount": 1000,
  "monthlyContribution": 500,
  "months": 36
}
```

### POST /advisor/report-html
Gera uma página HTML do parecer.

## Integração no frontend

1. Copie `frontend-widget/FinancialAdvisorWidget.jsx` para sua pasta de componentes.
2. Copie o CSS de `frontend-widget/financial-advisor.css` para seu CSS global.
3. Passe o contexto atual da família para o componente.

Exemplo:

```jsx
<FinancialAdvisorWidget context={dashboardData} />
```

## Segurança

Este módulo não altera dados da TudoCerto. Ele apenas analisa o JSON recebido e responde com pareceres.

## Observação regulatória

O módulo não substitui consultoria profissional credenciada. Ele deve apresentar projeções como simulações educativas, sempre deixando claro que rentabilidade passada ou estimada não garante resultado futuro.
