feat: adiciona competências ENEM na análise de redações

- Adiciona campos para armazenar as 5 competências do ENEM na tabela essay_analyses
- Atualiza função analyze-essay para salvar notas e justificativas das competências
- Adiciona restrições para validar valores entre 0 e 200 pontos
- Atualiza documentação com comentários nos campos

patch: atualização incremental que adiciona funcionalidade sem quebrar compatibilidade
This commit is contained in:
Lucas Santana 2025-02-12 19:29:12 -03:00
parent 374ac90a3b
commit 2ff79ced53
2 changed files with 22 additions and 16 deletions

View File

@ -182,25 +182,20 @@ e este projeto adere ao [Semantic Versioning](https://semver.org/lang/pt-BR/).
- Atualizado payload da Edge Function para incluir `language_type` - Atualizado payload da Edge Function para incluir `language_type`
- Melhorada tipagem para suporte a múltiplos idiomas - Melhorada tipagem para suporte a múltiplos idiomas
## [1.4.0] - 2024-01-31 ## [1.4.0] - 2024-03-28
### Adicionado ### Adicionado
- Integração completa com a tabela `languages` do banco de dados - Novas competências na análise de redações:
- Suporte para ícones de bandeira nos seletores de idioma - Domínio da língua (0-200 pontos)
- Instruções específicas por idioma na interface - Compreensão da proposta (0-200 pontos)
- Hook `useLanguages` para gerenciamento centralizado de idiomas - Seleção de argumentos (0-200 pontos)
- Mecanismos linguísticos (0-200 pontos)
### Modificado - Proposta de intervenção (0-200 pontos)
- Removido `LANGUAGE_OPTIONS` hard coded do `StoryGenerator`
- Atualizado `CreateStoryPage` para usar `DEFAULT_LANGUAGE` do type
- Melhorada a validação de idiomas usando dados do banco
- Aprimorada a UX do seletor de idiomas com ícones e instruções
### Técnico ### Técnico
- Refatorado o sistema de idiomas para usar dados dinâmicos do banco - Adicionados novos campos na tabela `essay_analyses` para armazenar as competências
- Adicionada tipagem forte para dados de idioma - Atualizada a função `analyze-essay` para salvar as notas e justificativas das competências
- Implementada validação robusta de códigos de idioma - Adicionada restrição para garantir que os valores das competências estejam entre 0 e 200
- Melhorada a estrutura de componentes para suportar dados dinâmicos
## [1.5.0] - 2024-03-19 ## [1.5.0] - 2024-03-19

View File

@ -504,7 +504,18 @@ Responda em formato JSON seguindo exatamente esta estrutura:
.insert({ .insert({
essay_id, essay_id,
overall_score: analysis.overall_score, overall_score: analysis.overall_score,
suggestions: analysis.suggestions suggestions: analysis.suggestions,
// Campos de competências
language_domain_value: analysis.competencies.language_domain.value,
language_domain_justification: analysis.competencies.language_domain.justification,
proposal_comprehension_value: analysis.competencies.proposal_comprehension.value,
proposal_comprehension_justification: analysis.competencies.proposal_comprehension.justification,
argument_selection_value: analysis.competencies.argument_selection.value,
argument_selection_justification: analysis.competencies.argument_selection.justification,
linguistic_mechanisms_value: analysis.competencies.linguistic_mechanisms.value,
linguistic_mechanisms_justification: analysis.competencies.linguistic_mechanisms.justification,
intervention_proposal_value: analysis.competencies.intervention_proposal.value,
intervention_proposal_justification: analysis.competencies.intervention_proposal.justification
}) })
.select() .select()
.single() .single()