# Estratégia de Migração de Problemas Legados (WOK)

Este documento descreve a estratégia automatizada para converter problemas legados (geralmente em PDF) para o ecossistema **Universo WOK**. A estratégia é dividida em cinco fases principais, utilizando uma sequência de prompts inteligentes no **Antigravity**.

---

## 🗺️ Fluxo de Trabalho (Pipeline)

![Fluxo de Migração](/static/docs/wok_migration_strategy.svg)

---

## 🚀 Fase 1: Análise e Estrutura Inicial
**Objetivo**: Realizar a "limpeza física" e a classificação técnica do problema, preparando o terreno para a expansão pedagógica.

### 0.1: Conversão WOK (PDF → Markdown)
- **Objetivo**: Extrair o texto do PDF original com máxima fidelidade.
- **Ação**: Remove ruídos de extração, organiza tabelas de exemplos e cria a estrutura de pastas `statements/a-{slug}/`.
- **Resultado**: Arquivos `a_pt_{slug}.md` e `a_pt_{slug}.pdf` (Preservação histórica).

### 0.2: Refinamento de Metadados
- **Objetivo**: Criar o "esqueleto" técnico do problema.
- **Ação**: Gera o `metadata.yaml` inicial com `description`, `editorial` (estratégia gulosa, PD, etc) e `timeComplexity`.
- **Resultado**: Classificação inicial de dificuldades e habilidades (`skills`).

### 1.1: Análise de Enunciado
- **Objetivo**: Garantir que o problema seja compreensível e sem ambiguidades.
- **Ação**: Busca por restrições inconsistentes ou casos de borda não mencionados no PDF original.

---

## 🎨 Fase 2: Organização, Expansão e Enunciados
**Objetivo**: Focar na experiência do usuário e na diversidade pedagógica.

### 2.1: Expansão de Níveis (A/B/C/D)
- **Objetivo**: Suportar alunos em diferentes níveis de maturidade.
- **Níveis**:
    - **Nível A**: Enunciado técnico padrão.
    - **Nível B**: PDF original como fonte.
    - **Nível C (Educacional)**: Cita a estratégia recomendada (ex: "Use Sorting").
    - **Nível D (Tutorial)**: Explica o passo a passo da solução.

### 2.2: Geração Temática (Extra/Opcional) ✨
- **Objetivo**: Gamificação e imersão.
- **Ação**: Reescreve o problema no cenário intergaláctico (planetas, naves, alienígenas).

### 2.3: Tradução Multilíngue (Extra/Opcional) 🌍
- **Objetivo**: Alcance global da plataforma.
- **Ação**: Traduz os enunciados para Inglês (EN) e Espanhol (ES) mantendo a consistência.

---

## 🧪 Fase 3: Soluções e Casos de Teste
**Objetivo**: Transformar o enunciado em um problema funcional e testável.

### 3.1: Geração de Soluções
- **Objetivo**: Fornecer referências de código confiáveis.
- **Ação**: Cria soluções **Ótimas (A)** em Java/Python/C++ e **Sub-ótimas (B)** (ex: Brute Force) para validar limites de tempo.

### 3.2: Design de Cenários e Análise de Erros
- **Objetivo**: Planejar a cobertura de testes baseada em possíveis falhas dos alunos.
- **Ação**: Define os `testScenarios` e cria `helpTips` (dicas) acionáveis no `metadata.yaml`.

### 3.3: Criação e Validação de Casos de Teste
- **Objetivo**: Gerar os arquivos físicos de teste (.in/.out).
- **Ação**: Scripts Python automatizados para gerar dados de teste e validar se respeitam as restrições (`min/max`).

---

## 🔍 Fase 4: Verificação Técnica
**Objetivo**: Garantir que o problema se comporte conforme o esperado antes da publicação.

### 4.1: Check de Complexidade e Paradigma
- **Objetivo**: Auditoria de desempenho.
- **Ação**: Verifica se a solução ótima realmente atende à complexidade declarada e se o paradigma (Gulo, PD, etc) está correto.

### 4.2: Script de Verificação Automática
- **Objetivo**: Criar uma ferramenta de teste local rápida.
- **Ação**: O script `verify_solutions.py` julga todas as soluções contra todos os casos de teste.

---

## 🎓 Fase 5: QA Final e Melhoria Pedagógica
**Objetivo**: O toque final de qualidade e valor educacional.

### 5.1: Integridade de Metadados e Estrutura
- **Objetivo**: Conformidade total com o Schema WOK.
- **Ação**: Verifica slugs, IDs, caminhos de arquivos e formatos de habilidades.

### 5.2: Melhoria Educacional
- **Objetivo**: Maximização do aprendizado.
- **Ação**: Refina as `helpTips` e sugere melhorias no enunciado para clareza didática.

---

## 📄 Resultado Final: YAML Consolidado
Ao final de todas as etapas, o arquivo `metadata.yaml` estará totalmente preenchido, validado e pronto para o upload na plataforma, contendo toda a inteligência pedagógica e técnica do Universo WOK.