Appearance
Março
Dia 31
- Adiciona logo baseado no tenant em relatórios resumidos
Dia 30
- Implementa a funcionalidade de adicionar um enunciado na questão de atividade PDF para ser possível utilizar o Subjetiva IA
- Recupera o draft do Summernote se tiver o mesmo questionId
- Corrigido problema onde o blank state do Subjetiva IA não aparecia para respostas contendo apenas HTML vazio (ex:
<p><br></p>) - Adiciona guard rails para respostas sem sentido ou com caracteres aleatórios (ex. "aaa") para o Subjetiva IA
- Criação do pdf saresp
Dia 27
- CORREÇÃO CRÍTICA: Adicionado
wkhtmltopdfao estágiosidekiqno Dockerfile para corrigir o erro de geração de PDFs nos certificados enviados por email. O Sidekiq estava tentando usar o binário da gemwkhtmltopdf-binary, que não tinha permissão de execução, resultando em erroPermission deniede falha no envio dos emails de certificado.
Dia 25
- Migração de ~43 componentes de
app/components/v3/paraapp/components/, removendo o namespace V3. Preservados 7 componentes no V3 (button, date_time_picker, input, input_file, input_number, select_box, toast) por terem implementações diferentes. - Corrigido erro de build do Vite: atualizados paths de import CSS no
entrypoint.csspara componentes migrados (toggle, summernote, du_duq_card). - Atualizadas referências de classes de
V3::ComponentName::ComponentparaComponentName::Componentem testes, previews e componentes.
Dia 24
- Corrige o bug do Summernote nas questões discursivas para alunos, onde a toolbar do editor não aparecia ao navegar entre questões usando os botões "Voltar" ou "Continuar"
Dia 23
- Melhorada leitura de HTML do Summernote nas questões subjetivas avaliadas por IA: tabelas e listas agora são convertidas para formato Markdown e preservadas na avaliação
- Adicionada flexibilidade na avaliação de questões que pedem estruturas (tabelas, listas, esquemas): a IA agora foca no conteúdo e organização ao invés da formatação perfeita
- Responsividade: Elementos escalam com
calc(X * var(--ui-scale))para telas entre 1024px e 1580px em classes TailwindCSS e views/components principais que usam css puro - Adiciona maior fidelidade com Figma na responsividade do dashboard de aluno
Dia 19
- Adicionada tarefa de manutenção
AddTeachersToMultidisciplinarVirtualClassroomTaskpara adicionar automaticamente todos os professores de uma turma à sala virtual Multidisciplinar quando ela existir
Dia 18
- Adiciona NSE (Nível Socioeconômico) no relatório resumido de turma
Dia 17
- Remove visualmente as informações individuais de Pretos, Pardos e Povos Originários dos relatórios socioeconômicos, mantendo apenas o contador agregado de PPI (Pretos + Pardos + Povos Originários), além de Brancos e Amarelos individualmente
Dia 16
- Adiciona o frontend do Subjetiva IA, que é um botão com popover para gerar um feedback com IA
- Atualiza a estilização do botão de adicionar feedback a resposta do aluno em tempo real (Stimulus)
- Adiciona options opcionais ao v3::popover para position e fixed
Dia 12
- Adicionado PDF de gabarito para avaliações SARESP com o mesmo header e footer do PDF de questões
Dia 11
- Integra o
GradeDiscursiveStrategyao sistema de créditos por uso de IA - Adiciona concern para tratamento de erros de operações com IA (saldo insuficiente, operação não encontrada, validação falhou, etc.)
Dia 10
- Adiciona o backend do Subjetiva IA e adiciona verificação da feature flag
ai_discursive_gradingno endpointgenerate_ai_gradingpara bloquear acesso quando a feature não está ativada para o county do usuário
Dia 05
- Altera a como se edita uma questão da atividade de Ficha Avaliativa para ficar no mesmo da atividade PDF, e padroniza os campos da criação e edição, deixando apenas os relevantes para Educação Infantil
Dia 04
- Correção da atualização de questões em atividades com PDF (DocumentExam).
- CORREÇÃO CRÍTICA: Correção do cálculo do NSE (Nível Socioeconômico) para considerar apenas o formulário respondido pelo estudante, em vez de somar perguntas de todos os formulários do banco. Antes, o cálculo considerava todos os 9 formulários (369 pontos máx), resultando em 99.7% dos alunos classificados incorretamente como Nível 1. Agora, infere o formulário específico do estudante a partir das respostas (~41 pontos máx), resultando em distribuição correta (média: 5.11, com níveis de 1 a 8 bem distribuídos).
- Correção do cálculo do score máximo para considerar o valor correto por tipo de pergunta:
quantity_4_levels(3 pontos por item),boolean_per_item(1 ponto),frequency_3_levels(2 pontos), etc. - Adicionado método
student_socioeconomic_formque infere o formulário respondido pelo estudante a partir das respostas existentes. - Adicionada rake task
socioeconomic:recalculate_nsepara recalcular o NSE de todos os alunos que completaram o formulário socioeconômico (necessário para corrigir os NSEs calculados incorretamente).
Dia 03
- Correção da permissão de visualização do Relatório de Atividade Socioeconômico.
Dia 17
- Corrige o problema do select de atividades aparecendo atrás do modal ao adicionar atividades em lote, adicionando o parâmetro
dropdown_parentao SelectBox
Dia 02
- Moderniza fluxo de Gabarito SAEB com TailwindCSS e components V3
Dia 18
- CORREÇÃO: Trilha de Aprendizagem não encerra prematuramente após responder apenas uma questão. Corrigida variável não utilizada
@total_questionsno métodosubmit_answerdoLearningTrail::StudentController, substituindo por@trail_questions.countpara consistência.