📦 Recursos WOKDEX — Referência Técnica para os Trabalhos Práticos
Este diretório contém os artefatos oficiais do modelo WOKDEX necessários para a execução dos TPs da disciplina de IA II.
📄 Artigo Científico Base
Miranda Junior, A.; Santos, V. F. (2026). “Quebrando o Silêncio Pedagógico: O Modelo WOKDEX para Feedback Formativo em Juízes Online”. SBIE 2026 — Trilha TPIE (Trabalhos e Pesquisas em Informática na Educação). CBIE 2026.
- PDF Local:
artigo-sbie-wokdex.pdf - Contribuições formalizadas:
contribuicoes-artigo-sbie.md - Afiliação: CEFET-MG (DECOM-TM) / UFMG (DCC)
Contribuições do Artigo
| ID | Contribuição |
|---|---|
| C1 | Proposta do schema WOKDEX — modelo de metadados estruturado (YAML validado por JSON Schema) que formaliza atributos pedagógicos para exercícios de programação. |
| C2 | Formalização de uma tipologia de testes: SAMPLE, FUNCTIONAL, MISCONCEPTION e PERFORMANCE. |
| C3 | Proposição e catalogação de um corpus de referência (45 exercícios, 230 cenários, CS1–CS3). |
| C4 | Proposta da Heurística de Modulação de Dica (HMD) — modula a confiabilidade do feedback com base na taxa de falha intra-cenário. |
🔗 JSON Schema Oficial
- Arquivo local:
wok-problem.json(28 KB) - URL de produção: https://api.mundodocodigo.com.br/api/public/json/wok-problem.json
- Versão: JSON Schema Draft-07
Campos Obrigatórios (required)
id, name, slug, version, origin, description, editorial,
difficultyLevelId, timeComplexity, skills, solutions,
statements, successmsg, testScenarios
Definições Principais
| Definição | Tipo | Descrição |
|---|---|---|
Skill |
enum (230+ valores) | Habilidades técnicas do exercício. Ex: condicionais, loops, arrays, recursion, grafos |
SkillThematic |
enum (37 valores) | Habilidades temáticas. Ex: mathematics, daily-life, games, sci-fi |
TestType |
enum | SAMPLE · FUNCTIONAL · MISCONCEPTION · PERFORMANCE |
Level |
enum | A, B, C, D, E, sample |
TimeComplexity |
enum (28 valores) | Ex: O(1), O(N), O(N logN), O(N²), O(2ⁿ) |
Language |
enum (24 valores) | cpp, c, java, py, js, php, etc. |
Version |
enum | 0.1 a 3.0 |
Os 4 Tipos de Teste (TestType) — Evolução Terminológica
| Tipo Atual (WOKDEX) | Tipo Legado (WOK) | Visível? | Função Pedagógica |
|---|---|---|---|
SAMPLE |
(não existia) | ✅ Sim | Testes dos exemplos do enunciado |
FUNCTIONAL |
TDD |
❌ Não | Testes de comportamento funcional |
MISCONCEPTION |
TDD_FALSE_GREEN |
❌ Não | Armadilha pedagógica — detecta erro conceitual |
PERFORMANCE |
PERFORMANCE |
❌ Não | Avalia complexidade algorítmica |
⚠️ IMPORTANTE para o TP3: O
tp3.qmdoriginal usava a terminologia legada (TDD,TDD_FALSE_GREEN). O schema oficial (wok-problem.json) já utiliza a terminologia atualizada (SAMPLE,FUNCTIONAL,MISCONCEPTION,PERFORMANCE). Os alunos devem usar a terminologia oficial.
Subtipos de MISCONCEPTION
| Subtipo | Alvo | Exemplo |
|---|---|---|
| TYPE | Tipo de dado inadequado (CS1) | int vs double na divisão |
| FORMAT | Formatação de saída incorreta (CS1) | Falta de \n, espaço extra |
| STRATEGY | Estratégia algorítmica insuficiente (CS2–CS3) | Força bruta onde cabe DP |
Campo Especial: targetLanguages
Cenários MISCONCEPTION podem incluir o campo targetLanguages para restringir em quais linguagens a misconception se manifesta. Ex: ["c", "cpp", "java"] (divisão inteira não afeta Python 3).
🌐 WOKDEX Corpus — Site Público
O corpus de exercícios anotados está publicado em:
- Home: https://alessiojr.github.io/wokdex-corpus/
- Catálogo: https://alessiojr.github.io/wokdex-corpus/catalog.html
- Skills ACM: https://alessiojr.github.io/wokdex-corpus/skills.html
- Schema Interativo: https://alessiojr.github.io/wokdex-corpus/schema.html
Estatísticas do Corpus
- 45 exercícios curados (CS1 a CS3)
- 230 cenários de teste distribuídos pelos 4 tipos
- Nível D (mais fácil) ao Nível A (mais difícil)
- Cobertura de skills:
io,condicionais,loops,arrays,strings,mathematics,recursion,sorting,grafos, etc.
🛠️ Engenharia e Augmentation do Corpus (Machine Learning)
Como 45 exercícios são insuficientes para treinar Redes Neurais no TP1, o professor elaborou uma estratégia de Weak Supervision / Silver Standard para expandir o corpus usando um Crawler de juízes online e um classificador LLM (gerando um dataset Multi-Input).
- Documento Estratégico:
estrategia-construcao-corpus.md - Caminho Absoluto dos TPs (Disciplina):
/mnt/arquivos/GDrive/Documents/Disciplinas/ia2/trabalho - Caminho Absoluto do Corpus (Projeto Mundo do Código):
/dados/projetos/mundoDoCodigo/problemas/pack-tecnicas/workspace/wokdex-corpus
Nota para o Pesquisador: Qualquer melhoria feita no corpus (Fase 1 ou Fase 2) deve ser refletida nesses dois diretórios absolutos para garantir sincronia entre a Disciplina e a Pesquisa principal.
📐 Estrutura de um wok-problem.json Real (Exemplo: Divisão)
{
"id": 3,
"name": "Divisão",
"slug": "divisao",
"version": "1.0",
"description": "Leia dois números A e B. Imprima A/B com duas casas decimais.",
"difficultyLevelId": "D",
"timeComplexity": "O(1)",
"skills": ["mathematics", "io"],
"testScenarios": [
{
"id": "d-sample",
"name": "Exemplos do Enunciado",
"level": "D",
"testType": "SAMPLE",
"description": "Verifica os casos de exemplo.",
"helpTip": "Verifique os testes básicos do enunciado.",
"skills": [
{ "skill": "io", "points": 1 },
{ "skill": "mathematics", "points": 1 }
]
},
{
"id": "c-falso-positivo-inteiros",
"name": "Inteiros - Falso Positivo",
"level": "C",
"testType": "MISCONCEPTION",
"description": "Detecta alunos que declararam variáveis como int em vez de double.",
"helpTip": "Erro na declaração de tipo de variável. Verifique se está usando double/float.",
"targetLanguages": ["c", "cpp", "java"],
"skills": [
{ "skill": "mathematics", "points": 1 }
]
},
{
"id": "a-performance-grande",
"name": "Performance com valores grandes",
"level": "A",
"testType": "PERFORMANCE",
"description": "Verifica se a solução executa dentro do tempo limite.",
"helpTip": "Sua solução pode estar muito lenta. Revise a complexidade.",
"skills": [
{ "skill": "mathematics", "points": 1 }
]
}
]
}📚 Heurística de Modulação de Dica (HMD)
A HMD (Contribuição C4 do artigo) define quando o sistema emite o helpTip:
| Confiança | Condição | Ação |
|---|---|---|
| Alta | Todos os testes do cenário falharam | Emite helpTip com máxima confiança |
| Moderada | Maioria dos testes falhou | Emite helpTip com ressalva |
| Baixa | Apenas 1 teste falhou | Não emite dica (pode ser erro pontual) |
🗂️ Arquivos neste Diretório
| Arquivo | Descrição |
|---|---|
wok-problem.json |
JSON Schema oficial (Draft-07) — 28 KB |
artigo-sbie-wokdex.pdf |
Artigo SBIE 2026 completo — 250 KB |
contribuicoes-artigo-sbie.md |
Rastreamento de contribuições do artigo |
estrategia-construcao-corpus.md |
Estratégia de expansão do Corpus (Weak Supervision) |
index.qmd |
Este documento |