# Implementação - Análise de Pesquisas com Inteligência Artificial

## Visão Geral
Integração completa do sistema de survey com **Cursor Cloud Agents API** para análise automática de respostas usando inteligência artificial.

## Componentes Implementados

### 1. Configuração de Ambiente
**Arquivo: `.env`**
- `CURSOR_API_KEY`: Chave de autenticação da API Cursor
- `CURSOR_API_BASE`: URL base da API (https://api.cursor.com/v0)

**Arquivo: `config/env.php`**
- Carrega variáveis de ambiente a partir do arquivo `.env`
- Implementa parsing de KEY=VALUE com suporte a comentários
- Define variáveis via `putenv()` e `$_ENV`

**Arquivo: `config/cursor.php`**
- Função `get_cursor_config()` que retorna array com `api_key` e `api_base`
- Centraliza configurações da API

### 2. Backend - Endpoint de Análise
**Arquivo: `analisar_respostas_ia.php`**

Responsabilidades:
- ✅ Recebe `POST id_pesquisa_empresa`
- ✅ Busca dados da pesquisa, empresa e todas as respostas
- ✅ Constrói prompt formatado com:
  - Nome da empresa
  - Nome da pesquisa
  - Nome do questionário
  - Todas as perguntas e respostas
- ✅ Chama Cursor Cloud Agents API com modelo `claude-4.5-sonnet-thinking`
- ✅ Implementa polling para aguardar conclusão (máximo 60 segundos)
- ✅ Extrai e retorna análise da conversa
- ✅ Tratamento de erros com HTTP status codes:
  - 400: ID inválido
  - 404: Pesquisa não encontrada
  - 500: Erro na API
  - 504: Timeout

Fluxo de Funcionamento:
```
POST request → Valida ID → Busca dados → Constrói prompt → 
Chama API Cursor → Aguarda FINISHED → Busca resposta → Retorna JSON
```

### 3. Frontend - Interface de Usuário
**Arquivo: `responder_pesquisa.php`**

Novas Seções Adicionadas:
1. **Checkbox Toggle**: "🤖 Gerar Análise com Inteligência Artificial"
   - Mostra/oculta área de análise
   - Estilo visual destacado (#f0f8ff background)

2. **Botão de Ação**: "⚡ Gerar Análise"
   - Dispara requisição AJAX para `analisar_respostas_ia.php`
   - Estilo principal (#0066cc)

3. **Estado de Carregamento**:
   - Spinner animado com "⏳"
   - Mensagem: "Analisando respostas... Isso pode levar alguns segundos..."
   - Barra de progresso animada (animação slideright)

4. **Área de Resultados**:
   - Exibe análise em textarea estilizado
   - Preserva formatação (white-space: pre-wrap)
   - Botão "📋 Copiar Análise" com funcionalidade clipboard

5. **Tratamento de Erros**:
   - Exibe erros em box destacado (#fff3cd background)
   - Mostra mensagens específicas da API

### 4. Lógica JavaScript
**Scripts Adicionados em `responder_pesquisa.php`**

Funcionalidades:
- **Toggle**: Mostra/oculta container de análise conforme checkbox
- **Geração**: AJAX POST para analisar com loading animation
- **Parsing**: Extrai sucesso/erro da resposta JSON
- **Cópia**: Copia análise para clipboard com confirmação
- **Animação**: Progress bar com keyframe `slideright`

## Fluxo Completo do Usuário

1. **Abrir Pesquisa**: Acesso `responder_pesquisa.php?id=X`
2. **Preencher Respostas**: Responder perguntas normalmente
3. **Ativar Análise IA**: Marcar checkbox "🤖 Gerar Análise"
4. **Gerar Análise**: Clicar botão "⚡ Gerar Análise"
5. **Aguardar**: Ver animation de carregamento (máx 60 segundos)
6. **Visualizar**: Análise aparece na tela
7. **Copiar**: Usar botão para copiar para clipboard
8. **Salvar**: Clicar "💾 Salvar Respostas" ou "✓ Finalizar e Enviar"

## Segurança

- ✅ Verifica autenticação via `verifica_login.php`
- ✅ Valida entrada (id_pesquisa_empresa como inteiro)
- ✅ API key armazenada em variável de ambiente (.env não versionado)
- ✅ Autenticação Basic Auth com Cursor API
- ✅ Response Content-Type: application/json

## Tratamento de Timeout

- Polling implementado com máximo 60 tentativas (1 segundo cada)
- Retorna HTTP 504 se timeout
- Verifica status: PROCESSING → FINISHED/FAILED

## Requisitos

- ✅ PHP 7.4+ com cURL
- ✅ Chave de API Cursor válida (obtida em https://console.cursor.com)
- ✅ Acesso à internet para API calls
- ✅ Arquivo .env com CURSOR_API_KEY configurada

## Testes Recomendados

1. **Teste Backend**:
   ```bash
   curl -X POST http://localhost/analisar_respostas_ia.php \
     -d "id_pesquisa_empresa=1"
   ```

2. **Teste Frontend**:
   - Abrir `responder_pesquisa.php`
   - Marcar checkbox
   - Clicar "Gerar Análise"
   - Verificar console do navegador para erros

3. **Teste de Timeout**:
   - Mudar `$max_attempts` em `analisar_respostas_ia.php` para valor baixo
   - Verificar se retorna 504

## Próximas Melhorias Possíveis

- [ ] Cache de análises (não refazer se respostas não mudaram)
- [ ] Mostrar tempo de conclusão da análise
- [ ] Suporte a múltiplas análises paralelas
- [ ] Opções de customização do prompt
- [ ] Exportar análise para PDF
- [ ] Histórico de análises anteriores

## Suporte

Para dúvidas sobre a API Cursor:
- Documentação: https://cursor.com/docs/cloud-agent/api
- Dashboard: https://console.cursor.com
- Support: support@cursor.com
