· v2.27.0.2
v2.27.0.2 2026-11-02
  • O aviso de um bloco que não pode ficar dentro de outro, nos relatórios, já diz que os separadores (`tabs`) também aceitam blocos.
v2.27.0.1 2026-11-01
  • **Nota da turma igual à da aula**: cada aula conta com as perguntas que ela própria teve — a mesma nota que vês no relatório da sessão. Antes, se a apresentação mudava entre aulas, a nota da turma podia cair para metade.
  • **Notas provisórias fora das médias**: enquanto houver respostas abertas por corrigir (ou resoluções por validar), a nota aparece com ⏳ mas não entra na média nem põe o aluno «Em risco». A «Nota média» do relatório da sessão faz o mesmo e diz quantas ficaram de fora.
  • **Presente sem responder = 0**: um aluno que entra na aula e não responde a nada fica com 0 nessa aula (antes ficava sem nota e nunca aparecia «Em risco»).
  • **Assiduidade**: sessões em que ninguém entrou deixam de contar; o TPC e a aula ainda a decorrer contam para a nota mas não como falta — também no texto da avaliação descritiva da turma. A tabela de perguntas da turma deixa de juntar numa linha as palavras da mesma categoria da Forca.
  • **Renomear um aluno na turma mantém o histórico**: cada aluno tem agora uma identidade fixa — corrigir «Joao» para «João Silva» já não faz as aulas anteriores aparecerem como faltas.
  • **Experiência VR na Nota**: conta a parte dos pontos (300 de 400 = 0,75 de uma pergunta), em vez de «certa» a partir de 1 ponto.
  • **Respostas que se perdiam**: um cenário com créditos acima de 500 ou negativos e um TypeMe com texto colado (mais de 500 PPM) passam a chegar.
  • **Percentagens**: o «% de acerto» ao vivo deixa de contar «terminou» dos jogos de arcada como resposta certa; o Robô e os jogos de pontos deixam de mostrar uma «%» sem sentido; as tabelas de exercício deixam de contar em «Por avaliar».
  • **Exportações**: os nomes do roster aparecem também nas tabelas de jogos, de exercício e de debate; o PAUTA do CSV ganha `student_key` (cruza com o BEHAVIOUR) e `nota_pending`.
v2.27.0.0 2026-11-01
  • **Avaliação descritiva da turma**: na página da turma (O meu espaço → Turmas), um cartão novo gera a avaliação da turma inteira a partir das aulas — médias, evolução da primeira à última aula, presenças, méritos e advertências, e as avaliações que já guardaste em cada aula. Determinística (corre no servidor) ou com IA (só recebe «Aluno 1…N», nunca nomes). Revês o texto da turma e o de cada aluno, guardas, e entra no relatório da turma (Ver o relatório / Relatório .md).
  • **Avaliação com IA — nomes de volta**: quando a IA escrevia «ajudou o colega Aluno 2», o texto chegava-te assim; agora lês o nome do aluno (os nomes continuam a não sair para a IA). Vale também para a avaliação de cada aula.
v2.26.0.0 2026-11-01
  • **Comportamento ao lado da Nota**: os registos confirmados (méritos, advertências, empenho) aparecem onde lês os resultados — na Pauta do results.md, na secção PAUTA do CSV, ao lado do nome de cada aluno no Resumo dos Resultados e na tabela da turma em O meu espaço (e no CSV e no relatório da turma). Ficam à parte: **não entram na Nota** nem no «Em risco». No modo projector o Resumo não os mostra.
  • **«Comportamento: Bom» já não conta como advertência** na avaliação descritiva — só um comportamento pouco satisfatório (ou pior), uma distração ou uma falta de pontualidade.
  • **Depois de terminar a aula**: o separador Comportamento continua lá, só de leitura, e «Gerar avaliação» funciona — a avaliação guarda-se na aula arquivada.
  • **CSV**: o mesmo aluno que entrou duas vezes (dois dispositivos, ou depois de recarregar) fica numa só pessoa na secção BEHAVIOUR, com o nome da lista da turma; a PAUTA ganha a atenção e as saídas.
v2.25.0.2 2026-10-31
  • **Painel — vídeo com perguntas**: o cartão de resultados de um vídeo leva o título do vídeo, e não o texto da primeira pergunta.
  • **Classificação do labirinto**: ordena-se pelos pontos, para que as criaturas apanhadas desempatem entre jogos perfeitos (que agora valem todos 100 %).
  • **Resultados por jogo**: a percentagem conta as perguntas que o bloco tem, não só as respondidas — quem respondeu a 1 de 2 fica a 50 %, e não a 100 %.
  • **Respostas erradas mais comuns**: numa associação, cada par errado conta à parte («Autocrítica → Escreve código ✗ — 2 alunos»), e o último par já não fica cortado.
  • **Painel**: uma linha com pergunta mostra as tentativas quando houve mais do que uma.
  • **Classificação**: o título do bloco em vez de «labirinto|s3-e1», e os pontos das criaturas do labirinto à parte («285/285 + 60 bónus»), também no CSV e no results.md (coluna Bónus).
v2.25.0.1 2026-10-31
  • **IA — «Ligar a partir do browser»**: no servidor online o browser não conseguia carregar o código que chama o modelo («Failed to fetch dynamically imported module»), e por isso a ligação falhava sempre. Agora carrega.
  • **Log de erros**: as falhas de IA passam a ficar no log de erros que se descarrega na consola — as do servidor (o modelo não respondeu, não havia painel aberto) e as do teu browser (o «Testar ligação», erros inesperados do painel e da página O meu espaço). Só a mensagem do erro; o texto enviado ao modelo nunca vai para o log.
v2.25.0.0 2026-10-31
  • **IA — «Ligar a partir do browser»**: com o servidor na Internet e o modelo (LM Studio, Ollama, Unsloth) num PC da escola ou de casa, liga esta caixa na página IA. Os pedidos de IA do painel — dicas, correcção de respostas, leitura de fotografias, avaliação descritiva — passam a sair do teu browser, que está na mesma rede do modelo, e nada fica exposto à Internet. Precisa de um painel de sessão aberto nesse computador. No endereço usa `http://localhost:1234` (LM Studio, com CORS ligado); o Ollama precisa de `OLLAMA_ORIGINS` com o endereço do servidor. O browser pode pedir licença para aceder à rede local — aceita. O «Testar ligação» corre no browser quando a caixa está ligada.
  • **IA — erros**: quando o servidor não chega a um endereço da rede local (`192.168…`, `localhost`), o erro diz que o servidor está noutra rede e aponta para a caixa nova, em vez de sugerir que o IP mudou.
  • **Avaliação descritiva com IA**: passa pelo mesmo caminho das outras funcionalidades — limpa o raciocínio do modelo, usa o endereço por defeito do fornecedor e fica no registo de uso.
v2.24.0.8 2026-10-31
  • **IA — LM Studio e outros servidores locais**: quando o servidor do modelo não responde, o erro diz porquê e para que endereço se tentou ligar — inalcançável (o IP da máquina mudou?) ou nada a escutar na porta — em vez de «fetch failed». Um endpoint deixado em branco usa o do fornecedor (LM Studio: `http://localhost:1234`), e o campo mostra-o como exemplo.
  • **IA — modelos**: as sugestões de modelo na página IA passam aos mais recentes (GPT-6.1, Claude Opus/Sonnet/Haiku 5.5, Gemini 4 Argon, catálogos gratuitos do OpenRouter e da NVIDIA de 31 de Outubro).
v2.24.0.7 2026-10-31
  • Os Resultados e o leaderboard reconhecem o jogo novo **Labirinto**: uma linha por nível, com as tentativas de cada um.
v2.24.0.6 2026-10-30
  • Em aula ao vivo, fechar a votação de um cenário sem nenhum voto já não escolhe a primeira opção: a turma fica no nó e o professor decide.
v2.24.0.5 2026-10-30
  • Nos relatórios, matemática com `<` (por exemplo `$a
v2.24.0.4 2026-10-29
  • **Placar:** um aluno já não consegue pôr-se em primeiro lugar com uma pontuação inventada. No Space Shooter, no Bubble Popper e no Wordbreaker o placar volta a ordenar pela pontuação. Antes ficava em primeiro quem tinha submetido primeiro.
  • **Resoluções com a IA:** a opinião da IA sobre uma resolução «por validar» tem agora um limite: 3 por aluno e 40 por bloco. Acima disso a resolução continua na lista, só que sem opinião, e assim um aluno já não gasta a sua conta de IA sem fim.
  • **Artilharia:** quando o aluno da vez sai da aula, a vez passa ao seguinte, e o jogo já não fica parado.
  • **Limpar respostas:** limpa tudo em todos os separadores do monitor que tiver abertos, não só no separador onde carregou.
  • **Retomar:** uma sessão retomada já não volta a mostrar aos alunos o quadro que estava a partilhar quando terminou.
  • O servidor passa a ignorar mensagens forjadas ou repetidas em excesso por um aluno: identificadores que não existem no deck, diapositivos impossíveis, rajadas de mensagens. Fá-lo sem desligar ninguém, e o painel deixa de ficar sobrecarregado.
v2.24.0.3 2026-10-29
  • Manutenção interna: o servidor acompanha uma mudança no bloco de destaque (callout) usada pela exportação para Word. Nada muda no que o professor vê.
v2.24.0.2 2026-10-26
  • Os relatórios usam a versão actual da configuração de temas do HTML PP, igual à da aplicação.
v2.24.0.1 2026-10-26
  • A demonstração da experiência VR foi refeita: criaturas que se esquivam e se cansam antes de se deixarem atordoar.
v2.24.0.0 2026-10-26
  • Os **Resultados** mostram as respostas da **Experiência VR**: as capturas e os pontos de cada aluno, com a lista dos factos que capturou, também no relatório descarregado (tabela «🎢 Experiência VR»).
  • A demonstração da experiência VR foi refeita com factos para capturar, árvores a sério e o museu cheio.
v2.23.0.3 2026-10-25
  • A demonstração da experiência VR foi refeita com o carro aberto e os cartões da estação sempre à vista.
v2.23.0.2 2026-10-25
  • A demonstração da experiência VR foi refeita com os cenários vivos: animais, veículos, água, texturas e nuvens.
v2.23.0.1 2026-10-24
  • A demonstração da experiência VR foi refeita com as velocidades novas, o rato preso à vista e a boca do túnel.
v2.23.0.0 2026-10-23
  • **Cada turma tem agora um ano letivo, e não podes ter duas turmas com o mesmo nome no mesmo ano.** Nas listas aparece «8ºA · 2026/27», por isso sabes sempre que turma estás a escolher ao iniciar ou agendar uma aula. «8ºA», «8.º A» e «8A» contam como o mesmo nome. Escolhe o ano ao criar a turma; para o mudar depois, usa «Disciplina e ano letivo…» no cartão da turma.
  • **As turmas que já existiam ficaram com o ano letivo em que foram criadas.** Se tinhas duas turmas com o mesmo nome no mesmo ano, a mais recente passou a chamar-se «8ºA (2)». Os alunos, as palavras-passe e os resultados de cada uma ficam como estavam; muda-lhe o nome se quiseres.
v2.22.1.5 2026-10-24
  • A demonstração em `/demo/experienciavr.html` foi regenerada: com o som ligado, chegar à estação já não dá um erro escondido no áudio.
v2.22.1.4 2026-10-24
  • A demonstração em `/demo/experienciavr.html` foi regenerada com o som gravado da montanha-russa.
v2.22.1.3 2026-10-24
  • A demonstração em `/demo/experienciavr.html` foi regenerada e ganhou uma quarta viagem, **«Os glaciares»**, no nível 3 com a velocidade «Rápida» e o túnel na montanha.
v2.22.1.2 2026-10-24
  • **A demonstração em `/demo/experienciavr.html` foi regenerada** com as correcções da experiência VR: ao voltar a uma viagem deixada a meio, se os óculos ou o browser recusarem montar o 3D, aparece o cartão de partida em vez de um slide vazio.
v2.22.1.1 2026-10-23
  • **A demonstração em `/demo/experienciavr.html` tem uma terceira viagem, no nível 3**: subidas e descidas, uma hélice inclinada e curvas em S rápidas, depois de um slide que avisa quem enjoa nos óculos. As duas viagens de antes continuam iguais.
v2.22.1.0 2026-10-22
  • **A demonstração em `/demo/experienciavr.html` mostra a nova montanha-russa**: pista de madeira, árvores, rochas e flores na floresta, rochas no deserto, desenhada com menos passos por imagem, para correr com mais folga nos óculos VR. As aulas que já estão no servidor continuam com a pista antiga até serem reexportadas.
v2.22.0.2 2026-10-22
  • **No monitor, o cartão do Classificar tem o título do jogo.** Antes aparecia com o texto da primeira ficha que um aluno classificou, e era difícil de encontrar. O mesmo vale para o Jogo de ordenação, o Jogo de correspondência e o Legendar imagem. Funciona também com as aulas que já estão no servidor, sem reexportar.
v2.22.0.1 2026-10-22
  • **A página de demonstração passou para `/demo/experienciavr.html`.**
v2.22.0.0 2026-10-22
  • **Página pública de demonstração da montanha-russa.** Em `/demo/montanharussa.html`, no endereço do servidor, abre-se um deck com duas viagens (a fotossíntese na floresta e a erosão no deserto), sem entrar na conta e sem criar sessão. Serve para experimentar o bloco nos óculos Meta Quest ou para o mostrar a outros professores. Acrescenta `?debug=1` ao endereço para ver nos óculos um painel com a fluidez e os erros. Depois de uma actualização do servidor, os óculos abrem logo a versão nova da demonstração.
v2.21.0.0 2026-10-21
  • **Em «Seguir-me» podes esconder a barra Anterior/Seguinte aos alunos.** Em Restrições aparece a linha «Barra de navegação» enquanto estás em Seguir-me. Escondida, a turma vê só o slide. Quando passas para Livre a barra volta sozinha, e quem entra a meio já a encontra escondida.
v2.20.1.2 2026-10-21
  • Manutenção interna: o servidor acompanha a versão nova das etiquetas das fichas em Word. Os relatórios ficam iguais.
v2.20.1.1 2026-10-21
  • **As aulas novas começam com os alunos a seguir o teu slide.** A navegação abre em «Seguir»; passa para «Livre» ou «Bloqueado» no monitor quando quiseres. As aulas que já existiam ficam como estavam.
v2.20.1.0 2026-10-20
  • **O cabeçalho do monitor arrumou-se.** Os botões têm todos a mesma altura e nenhum rótulo parte em duas linhas. Ficam em três grupos: o estado da ligação, os controlos da aula (Editar, QR, Pausar, Terminar) e, à direita, o teu nome. Carrega no nome para mudar a língua ou o tema, ir para As minhas lições ou Sair.
v2.20.0.3 2026-10-20
  • **As janelas fecham-se bem no telemóvel.** O botão Cancelar/Fechar das janelas das tuas lições fica sempre visível no fundo, mesmo numa janela comprida, e as janelas do monitor já não passam do tamanho do ecrã (o × ficava fora de vista). O × é maior, à medida do dedo.
  • **Na app Android, os botões do telemóvel deixam de tapar as abas do monitor.** A barra de abas no fundo do monitor fica agora acima da barra de navegação do Android.
v2.20.0.2 2026-10-20
  • **Retomar uma aula leva-te directo ao monitor.** Tanto o «Continuar» de uma aula em pausa como o «Retomar» de uma aula terminada (no Histórico, no cartão da turma ou na página da turma) abrem o monitor dessa sessão, em vez de te deixarem nas tuas lições à procura do link. Se a apresentação mudou desde a aula, o aviso aparece no monitor.
v2.20.0.1 2026-10-19
  • **Abrir a aba «Alunos» do monitor já não manda a turma para o primeiro slide.** O professor que reentrava na sessão com essa aba aberta (ou a abria a meio da aula) voltava ao slide 1, e os alunos com ele; agora a aba abre no slide em que a aula está.
  • **Se o servidor reiniciar a meio da aula, o monitor volta a ligar-se sozinho**, sem pedir outra vez a palavra-passe. Antes, um reinício expulsava todos os professores para o ecrã de entrada ao mesmo tempo.
  • **O servidor deixa de adormecer entre aulas no alojamento Plesk.** O alojamento desligava-o ao fim de 5 minutos sem pedidos, e a aula seguinte começava num servidor acabado de arrancar; agora ele próprio dá sinal de vida de 4 em 4 minutos.
  • **Um aluno sem turma cuja rede caiu volta a entrar com o mesmo email em segundos.** Antes ficava até um minuto e pouco a ver «Este email já está ligado a esta sessão noutro dispositivo».
  • **As mensagens do formulário de entrada do aluno estão em português** («Falta o nome.», «O email não é válido (falta o @).», «A aula está cheia…») e dizem o que fazer quando a aula tem palavra-passe ou é só para a turma.
  • **Os arranques do servidor ficam no registo de auditoria** («Servidor arrancou»), e cada ligação que fecha deixa uma linha no registo do servidor, para se perceber porque é que uma ligação caiu.
  • **Arrumação interna.** O servidor foi reconstruído com a versão mais recente da biblioteca partilhada, que ganhou as chaves de armazenamento do novo Editor simples da app; o servidor não as usa.
v2.20.0.0 2026-10-17
  • **Ver a resposta correta formatada enquanto corriges perguntas abertas**: o botão «Ver resposta», junto da resposta correta e na janela «Corrigir todos com IA», abre-a numa janela só de leitura, com negrito, fórmulas e quebras de linha como deve ser — sem teres de esticar a caixa de texto.
v2.19.1.7 2026-10-17
  • **As respostas às perguntas de um vídeo ou áudio passam a ser guardadas** quando a aula tem outros jogos — antes perdiam-se sem aviso e não chegavam ao monitor nem aos relatórios.
  • **Uma resolução «por validar» já não conta como errada** nos relatórios: fica de fora das contas até a decidires.
v2.19.1.6 2026-10-17
  • **Relatórios acompanham o bloco de vídeo e áudio novo da app** (perguntas e comentários com posição); nada muda no aspeto dos relatórios.
v2.19.1.5 2026-10-16
  • **Relatórios: o bloco novo `` é reconhecido** quando aparece no conteúdo de uma sessão.
v2.19.1.4 2026-10-16
  • **Os cartões do bloco Momentos nos relatórios têm o acabamento novo** (ícone com halo, verso tingido da cor do bloco).
v2.19.1.3 2026-10-16
  • **Fluxo Animado: quem entra a meio de uma sessão ao vivo vê o fluxo no passo em que o professor está**, tal como já acontecia com o quadro.
v2.19.1.2 2026-10-15
  • **O separador do servidor já não se confunde com o da app.** As páginas do servidor (painel, a minha página, percursos) mostram agora o chapéu de formatura branco num quadrado cor de laranja; a app continua com o chapéu azul.
v2.19.1.1 2026-10-14
  • **Exemplos de código nos relatórios ficam como código.** Um bloco escrito dentro de um bloco de código aberto com `~~~` e a linguagem colada (`~~~markdown`) aparece no relatório como texto, como na app, em vez de ser desenhado. O resto dos relatórios fica igual.
  • **Um bloco de código vazio já não estraga o resto do relatório.** Os blocos escritos depois dele voltam a aparecer desenhados, em vez de texto cru.
v2.19.1.0 2026-10-13
  • **Botão «Descarregar registo de erros» nas Definições.** Por baixo de «Guardar», descarrega o registo de erros das sessões num ficheiro `.jsonl` — já não é preciso o comando `curl`.
v2.19.0.0 2026-10-13
  • **Registo de erros das sessões.** Quando alguma coisa falha no servidor durante uma aula ao vivo, fica uma linha em `data/errors.jsonl`: quando, em que sessão, em que mensagem, se era professor ou aluno, e o erro completo — nunca o nome, o email ou as respostas do aluno. Descarrega-se em `/api/admin/errors` (com a palavra-passe de administrador) e liga-se/desliga-se nas Definições, em «Registo de erros das sessões» (ligado por defeito). Ocupa no máximo cerca de 10 MB.
  • **Uma falha na partilha de ecrã já não derruba o servidor.** Antes, um erro inesperado ao partilhar o ecrã fechava o servidor e terminava todas as aulas ao vivo; agora custa só esse pedido.
v2.18.0.0 2026-10-13
  • **Resoluções por validar.** Quando um aluno resolve um problema de «Resolução por passos» de uma forma que não previu, ela aparece no painel do bloco em «Resoluções por validar» — com os passos, os nomes, a marca «✓ passos verdadeiros na solução» e, se tiver IA configurada, o parecer da IA. **Aceitar** dá-a como certa a esses alunos (o deck deles festeja) e oferece «Copiar como ``» para a juntar à aula; **Rejeitar** dá-a como errada e o aluno tenta outra vez. No mapa de calor fica «?» até decidir; o relatório conta «Outra forma (aceite)» e «Por validar».
v2.17.0.1 2026-10-13
  • **Resultados do bloco «Resolução por passos».** O mapa de calor mostra-o como uma pergunta, o painel de respostas erradas agrupa os alunos pelo passo em que se enganaram, e o relatório diz por que caminho a turma resolveu («A 12 · B 5»).
v2.17.0.0 2026-10-11
  • **Os alunos podem rever as aulas terminadas.** Na página da turma há um interruptor novo, «Alunos podem rever as aulas terminadas» (desligado por defeito). Ligado, o aluno abre o mesmo link da aula, entra com o nome e a palavra-passe da turma e vê a apresentação em modo de consulta, com um botão «As minhas respostas»: o que respondeu, se estava certo, e o comentário que lhe enviou nas perguntas abertas. Só vê as suas respostas — nunca as dos colegas, nem as cotações, nem a avaliação descritiva — e nada do que faz fica gravado. Desligar o interruptor ou tirar o aluno da lista fecha-lhe o acesso no momento.
v2.16.0.0 2026-10-11
  • **Mapa de calor da turma no monitor.** O separador Resumo dos Resultados passou a ser uma grelha aluno × pergunta que se preenche ao vivo: ✓ certa, ↻✓ certa à segunda tentativa, ✗ com a letra escolhida, · sem resposta, e a percentagem de cada pergunta no fundo. Quem entrou e ainda não respondeu aparece também — uma linha de pontos é informação.
  • **Que resposta errada deram?** Clique numa coluna (ou num ✗) e vê as respostas erradas dessa pergunta, com o texto da opção («C — núcleo»), quantos a escolheram e quem — o erro de conceito, não só o erro. Se a pergunta permitia nova tentativa, mostra também quanto a turma subiu da primeira para a final.
  • **Rever amanhã.** Por cima da grelha, as três perguntas que mais custaram à turma, com a resposta errada mais dada e os alunos a acompanhar.
  • **Modo projetor.** Um botão troca os nomes por «Aluno 1, 2, 3…» para mostrar a grelha à turma sem expor ninguém.
  • **«Precisa de ajuda».** Um aluno com três ou mais respostas erradas, e mais erradas do que certas, fica assinalado na grelha.
  • **Balanço da aula ao terminar.** Ao terminar a sessão no monitor, aparece o balanço: alunos que responderam, perguntas, percentagem de certas, quantas foram corrigidas à segunda, «Rever amanhã» e um gráfico por pergunta com um quadrado por aluno. O botão Imprimir dá uma folha A4 clara, mesmo com o tema escuro.
  • **Relatório (results.md) mais útil.** O «Resumo por pergunta» ganha as colunas «% 1.ª tentativa», «% final» e «Δ» quando houve novas tentativas, e há uma tabela nova com as respostas erradas mais comuns.
v2.15.0.0 2026-10-11
  • **A página da turma diz o que a turma continua a falhar.** Por baixo do gráfico, as perguntas com menos de metade de respostas certas em todas as aulas dadas a esta turma, a pior primeiro, com a aula, o diapositivo e quantos acertaram. É o que trazer de volta na aula seguinte.
  • **Porque é que um aluno está em risco.** Ao lado do nome, a razão: «média 42» ou «faltou 3/5».
  • **O tempo de cada aluno na classificação dos jogos.** Uma coluna nova mostra quanto levou a terminar — é o que desempata.
  • **Menos pedidos ao servidor.** A página «As minhas aulas» e a consola de administração deixam de atualizar de 5 em 5 segundos quando o separador está escondido.
  • **Mais seguro.** Corrigidos vários pontos que um aluno ou um pedido forjado podia explorar: identificadores de blocos que estragavam o estado do servidor, fotografias e desenhos enviados sem passar pela palavra-passe ou pela turma, um professor que entrava noutra sala como aluno, códigos de sessão com caminhos de ficheiros, ZIP que se descompactavam sem limite e o travão da palavra-passe de administrador, que agora trava mesmo.
  • **As respostas abertas nunca chegam ao aluno depois de substituir o deck.** Antes, um deck substituído podia ser servido com a resposta de referência dentro.
  • **Nada se perde ao desligar o servidor.** As respostas que chegavam nos últimos segundos antes de parar ficam guardadas.
  • **Folhas de cálculo mais limpas.** Uma resposta como `-3` sai como número, não como texto, e uma resposta que começa por `=` nunca corre como fórmula ao abrir a tabela do relatório.
  • **Números certos.** A confiança média da leitura de fotografias já não conta como zero as que ainda estão a ser lidas, e a percentagem de certas da sugestão de empenho conta as respostas erradas.
  • **A consola de administração volta ao início de sessão** se a palavra-passe mudar, em vez de mostrar um erro a cada 5 segundos; e um erro de ligação aparece uma vez só.
  • **Inglês completo no monitor.** O histórico de partilhas, os codecs e os erros da partilha de ecrã seguem o idioma escolhido.
v2.14.0.6 2026-10-09
  • **«Entregas» diz a que blocos se aplica.** No painel de restrições, o campo chama-se agora **Entregas (pergunta aberta e tabela)**; ao passar o rato sobre ele, lê que muda ao vivo e que as tentativas dos jogos com «Verificar» vêm do deck.
  • **Mudar as entregas a meio da aula abre ou fecha os blocos dos alunos na hora.** Com o deck reexportado, aumentar o número volta a abrir a pergunta aberta e o exercício-tabela de quem já tinha entregue; baixá-lo fecha-os para quem já o gastou. Quem recarrega a página vê as entregas que lhe restam contadas certas.
v2.14.0.5 2026-10-06
  • **Tentativas do `` guardadas na sessão.** Numa cópia de texto com número de tentativas, o servidor guarda quantas o aluno já gastou e devolve-lhas se ele recarregar ou voltar a entrar; «Limpar respostas» devolve-as à turma. Nos Resultados, a linha do aluno passa a dizer quantas tentativas usou.
v2.14.0.4 2026-10-06
  • **Diagramas sem letras cortadas nos relatórios.** Os rótulos dos diagramas usam sempre o tamanho do próprio diagrama, em qualquer largura de ecrã. No monitor, o diagrama da apresentação só fica corrigido depois de reexportar a apresentação na app.
v2.14.0.3 2026-10-06
  • **Manutenção interna.** O desenho dos relatórios foi reconstruído com as etiquetas de IA das exportações. Nada muda no que o professor vê.
v2.14.0.2 2026-10-06
  • **Manutenção interna.** O desenho dos blocos nos relatórios foi reconstruído com a leitura de blocos actualizada. Nada muda no que o professor vê.
v2.14.0.1 2026-10-04
  • **Manutenção interna.** Os relatórios do servidor reconhecem o bloco novo `` (mundo voxel). Nada muda no que o professor vê.
v2.14.0.0 2026-10-04
  • **Quadro de giz em sessão ao vivo.** O passo em que o professor está num bloco `` fica guardado na sessão: um aluno que entra atrasado, ou que recarrega a página, aparece logo nesse passo em vez de ver o quadro vazio.
v2.13.0.26 2026-10-03
  • **Manutenção interna.** O servidor passa a registar a assinatura dos seus módulos partilhados com a aplicação, para se confirmar que estão sempre a par. Nada muda no que o professor vê.
v2.13.0.25 2026-10-03
  • **Uma pergunta que o exercício não tem já não entra na Pauta.** Um aluno que mandasse respostas «certas» a perguntas que o quiz não tem (a 2.ª, a 3.ª… de um quiz de uma pergunta) aumentava o número de perguntas da turma inteira e baixava a nota de todos os outros; agora essas respostas são recusadas. Nos percursos, uma cópia de texto a meio aparece no monitor como «em curso» e só passa a «concluída» quando o aluno a termina. E o guia de uma paragem enviado em ZIP conta para o limite de espaço pelo que ocupa depois de aberto, como as aulas.
v2.13.0.24 2026-10-03
  • **O relatório da turma acompanha a versão mais recente da aplicação.** O servidor passa a usar o mesmo código da aplicação para desenhar os blocos no relatório. Nada muda no que o professor vê.
v2.13.0.23 2026-10-03
  • **O painel já não se enche de avisos «ficou offline» depois de o servidor reiniciar.** Quando o servidor reinicia a meio de uma sessão, o painel volta a ligar-se e os alunos vão regressando um a um; antes aparecia um aviso por cada aluno da turma como se todos tivessem saído, agora o painel recomeça a contar a partir desse momento e só avisa quando alguém sai a sério.
v2.13.0.22 2026-10-03
  • **Em servidores com base de dados, uma aula que muda de pasta não desaparece da lista.** Se o servidor fosse abaixo a meio da arrumação das aulas por professor, uma aula já mudada podia sumir da lista no arranque seguinte; agora fica registada no sítio novo no mesmo instante em que é mudada. A página Aula guardada durante uma falha da base de dados também acompanha a aula se esta mudar de dono antes de ser gravada, e o servidor tenta gravar uma última vez o que estiver pendente antes de desligar.
v2.13.0.21 2026-10-03
  • **Em servidores com base de dados, nada se perde em silêncio quando a base de dados falha.** Uma turma, horário ou aula guardados num momento em que a base de dados não respondeu voltam a ser gravados sozinhos assim que ela regressa, em vez de desaparecerem no reinício seguinte. Apagar uma sessão do histórico faz-se por inteiro ou mostra um erro, e uma aula que muda de dono continua a abrir as sessões antigas no sítio novo.
v2.13.0.20 2026-10-03
  • **O limite de espaço conta o ZIP pelo que ocupa depois de aberto.** Um ZIP pequeno que por dentro tinha vários MB passava o limite e só era contado à porta seguinte; agora é recusado logo, tanto ao enviar uma aula nova como ao substituir o deck de uma existente.
v2.13.0.19 2026-10-03
  • **Substituir o deck de uma aula faz-se por inteiro ou não se faz.** Se um ficheiro estivesse preso (OneDrive, antivírus) a meio da troca, a aula podia ficar com metade do deck novo; agora volta tal como estava e aparece um erro. Um ZIP também já não consegue substituir o texto da página Aula, juntar materiais nem mexer no histórico de sessões, e a troca deixa de poder coincidir com o arranque de uma sessão dessa aula.
v2.13.0.18 2026-10-03
  • **Um código de sessão novo já não repete o de uma aula antiga.** Ao abrir uma sessão, o servidor só verificava se o código existia nesta aula; se o mesmo código estivesse arquivado noutra aula, o histórico podia abrir a aula errada. Passa a verificar todas as aulas.
v2.13.0.17 2026-10-03
  • **Reiniciar o servidor já não termina aulas que o prazo configurado mantém abertas.** Ao arrancar, o servidor usava o prazo de sessão do ficheiro de ambiente em vez do que foi definido na consola de administração, e dava por terminada, de forma definitiva, uma aula parada há mais tempo que o primeiro mas dentro do segundo. Passa a usar o prazo da consola, tal como o resto do tempo.
v2.13.0.16 2026-10-03
  • **A troca de nomes na nota livre deixou de inventar alunos.** Na avaliação por IA, «Silva e Costa» já não vira um só «Aluno N» quando são dois alunos diferentes: cada nome é trocado à sua parte. E um aluno que entre com um nome como «Não», «Na» ou «Não Sei» já não faz a nota livre dizer «Aluno 2 trouxe material» onde o professor escreveu «Não trouxe material». Quem faltou, ou um nome que não chega para saber quem é, aparece como «[nome]» — a página de privacidade diz agora também isto.
v2.13.0.15 2026-10-03
  • **O ganho de confiança da leitura das fotografias já não sai invertido.** No relatório de resultados, o ganho entre a 1.ª e a 2.ª fotografia compara agora cada leitura com a fotografia a que pertence, e não com a ordem em que as leituras terminaram.
v2.13.0.14 2026-10-03
  • **Nos percursos, a mesma pergunta respondida em duas paragens guarda as duas respostas.** Antes, a resposta dada na segunda paragem apagava a da primeira; agora cada paragem fica com a sua, e o monitor mostra-as lado a lado. As cópias de texto (typeme) feitas dentro de um percurso também deixam de se perder e aparecem como «concluída».
v2.13.0.13 2026-10-03
  • **Uma leitura tardia da fotografia já não se cola à fotografia nova.** Se o aluno entrega outra fotografia enquanto a leitura da anterior ainda está a correr, essa leitura deixa de substituir a transcrição da fotografia nova; fica apenas guardada no historial, com a tentativa a que pertence.
v2.13.0.12 2026-10-03
  • **A nota livre que vai à IA esconde melhor os nomes da turma.** Na avaliação por IA, os nomes dos alunos escritos na nota livre de um registo passam a ser escondidos também quando o aluno faltou, quando entrou com um nome diferente do da lista da turma, ou quando o nome é curto («Zé», «Lu»). E palavras como «dos» ou «das» já não são trocadas só porque fazem parte do nome de alguém («Maria dos Anjos»). A página de privacidade diz agora exactamente o que é trocado.
v2.13.0.11 2026-10-03
  • **O tempo desligado já não sobe a atenção.** Um aluno que saía da aula e depois perdia a ligação via a atenção subir enquanto estava fora — 0% quando caiu, 90% minuto e meio depois — no relatório e na avaliação. Agora o tempo em que está desligado não conta nem como atenção nem como distração, também depois de uma Retomar ou de o servidor reiniciar; e, depois de um reinício, o monitor mostra os alunos desligados até voltarem a entrar, em vez de os dar como ligados.
v2.13.0.10 2026-10-03
  • **O relatório explica a nota média como ela é calculada.** A nota média da pauta é sobre as perguntas que pelo menos um aluno respondeu — uma pergunta que ninguém fez não conta, e uma que um aluno saltou vale 0 para ele; o relatório dizia «todas as perguntas que a aula mostrou». A «Média de acerto» passa também a dizer que as cotações dadas a rascunhos entram na conta.
v2.13.0.9 2026-10-03
  • **A avaliação descritiva já não confunde «por corrigir» com «dificuldades».** Um aluno cuja nota ainda depende de respostas abertas por corrigir passa a ler «tem N resposta(s) por corrigir (nota provisória)», e essa nota fica fora da média da turma. Na avaliação por IA, os nomes dos alunos da turma escritos nas notas livres dos registos são escondidos antes de saírem; um nome de alguém de fora da turma continua a ir tal como o escreveu, e o aviso antes de enviar diz isso.
v2.13.0.8 2026-10-03
  • **Um aluno chamado «constructor» já não estraga a pauta.** Se um aluno entrasse com um nome como «constructor» ou «__proto__», a pauta, o resumo da turma e as exportações davam erro; agora ficam como qualquer outro aluno.
v2.13.0.7 2026-10-03
  • **A nota que dás a um rascunho aparece no resumo do relatório.** Se cotares a resposta que
v2.13.0.6 2026-10-03
  • **Uma resposta aberta nova volta a ficar por avaliar.** Se um aluno entregar outra resposta
v2.13.0.5 2026-10-03
  • **Só entram na Pauta respostas a exercícios da tua aula.** Uma resposta que nomeie um
v2.13.0.4 2026-10-03
  • **A chave de IA guardada não segue para outro destino.** Se mudares o fornecedor ou o endereço
v2.13.0.3 2026-10-03
  • **Quem tiras da sessão sai mesmo.** Um co-professor que retiravas da sala continuava a ver
v2.13.0.2 2026-10-03
  • **Os dados da sessão deixam de estar ao alcance dos alunos.** Quem tinha o código da sessão
v2.13.0.1 2026-10-02
  • **O servidor já não vai abaixo por uma coisa pequena.** Uma mensagem estranha vinda de um
  • **Sessão terminada com o OneDrive a segurar o ficheiro.** O servidor volta a tentar gravá-la
  • **Um aluno ligado não perde o lugar para quem escreve o email dele.** Numa sessão sem turma,
  • **Terminar a sessão de professor fecha também o monitor.** Depois de sair (ou de a palavra-passe
  • **Fotografia que não chegou a gravar não gasta a entrega.** Se a gravação falhar, o aluno pode
  • **Apagar uma sessão do Histórico diz a verdade.** Se o ficheiro estiver em uso, aparece um
v2.13.0.0 2026-10-02
  • **«Sessão não encontrada» logo a seguir a terminar uma aula.** Em Windows, se o OneDrive ou o
  • **Ver o relatório sem o transferir.** No Histórico, na página da turma e no monitor há
  • **O relatório diz de que aula é.** Logo por baixo do título aparece a aula, a turma, o código e
  • **Relatório da turma.** Na página da turma, «Relatório (.md)» e «Ver o relatório» juntam todas as
  • **Notas da turma mais justas.** Duas sessões da mesma aula passam a ser avaliadas sobre as mesmas
  • Na página da turma, cada aula aparece com o nome da apresentação, e nunca com o nome da turma
v2.12.0.3 2026-10-01
  • Ao terminar uma sessão, ela passa logo para o Histórico e para a lista da turma. Antes podia desaparecer de todo e só voltar depois de sair e entrar na página algumas vezes.
  • Se a gravação no Histórico falhar ao terminar uma sessão, aparece um aviso a dizê-lo, e o servidor volta a tentar sozinho até ela ficar gravada. Antes a sessão terminava sem aviso e podia nunca chegar ao Histórico.
v2.12.0.2 2026-09-29
  • Na página do professor, o modo de cada sessão aparece em português (**Livre** ou **Seguir-me**, como no monitor) em vez de `free`/`locked`.
v2.12.0.1 2026-09-27
  • Os Resultados reconhecem o novo jogo **Plataformas**: uma linha por nível entregue, com o número de entregas, e o separador próprio com o nome certo.
v2.12.0.0 2026-09-27
  • **Pré-visualizar uma lição sem iniciar a sessão.** Em «As minhas lições» (menu ⋮ → «Pré-visualizar»),
v2.11.0.3 2026-09-26
  • Os relatórios de turma continuam a contar o Quebra-Palavras, o Estoura Bolhas e o Tiro Espacial, tanto nos decks exportados antes desta versão como nos novos. Nada muda no que o professor vê.
v2.11.0.2 2026-09-26
  • **Nos percursos, a folha de uma paragem já não fecha com um toque ao lado.** O aluno fecha-a
v2.11.0.1 2026-09-26
  • **As janelas do monitor também já não fecham com um clique fora.** Partilhar, «Corrigir todos
v2.11.0.0 2026-09-26
  • **Turmas com disciplina, filtros, e agendar a partir da turma.** Cada turma pode ter uma
  • **As janelas da Minha página já não fecham com um clique fora.** Fecham em Cancelar, Fechar ou
v2.10.0.0 2026-09-26
  • **Estatísticas de visitas nas páginas de professor e de administração, com barra de cookies.**
v2.9.0.0 2026-09-26
  • **Sessões em separadores: A decorrer, Próximas e Terminadas.** Deixa de ser preciso
  • **As aulas a decorrer têm os mesmos filtros das terminadas.** Pode procurar pelo código, pela
  • **Vê-se logo que aulas estão em pausa.** Cada sessão mostra «a decorrer» ou «em pausa»,
  • **Pausar e continuar sem abrir o monitor.** ⏸ pausa a aula e «Continuar» retoma-a, logo
  • **A predefinição de IA fica escolhida.** A predefinição que aplicou aparece seleccionada,
v2.8.0.0 2026-09-26
  • **Turmas em cartões, e cada turma tem a sua página.** Cada cartão mostra a média, a
  • com uma aula a decorrer, **Abrir monitor**;
  • sem ela, **Continuar** a última aula.
  • o gráfico da turma, com datas e presenças (passe o rato num ponto para ver o detalhe);
  • a grelha **aluno × aula**, com a nota de cada um em cada sessão, as faltas e a tendência;
  • a indicação das respostas abertas que ainda faltam corrigir;
  • todas as sessões da turma, com Retomar e os ficheiros de resultados.
  • **Iniciar uma sessão a partir da turma.** «Iniciar sessão» no cartão pede só a lição
  • **Retomar mostra o código logo ali.** Depois de retomar aparece o mesmo quadro de quando
  • **Resultados em mais sítios.** O botão ↓ dá o relatório (.md) **e** as respostas (.csv).
  • **Ligar a uma turma uma sessão que ficou sem turma.** No menu ⋮ do Histórico. A sessão
  • **Sessões num só separador.** «A decorrer», «Próximas» e «Terminadas» ficam no separador
  • **Os acentos do nome do ficheiro já não se estragam no envio.** Uma lição enviada como
  • **As sessões agendadas guardam a duração.** Uma aula agendada para ficar aberta 7 dias
v2.7.0.7 2026-09-25
  • **Os gráficos do relatório da aula mostram resultados.** No `results.md`, o botão
  • a tabela de cada aluno ganha uma coluna **%** por pergunta (✓ = 100, ✗ = 0, a pergunta
  • **Cobertura dos blocos** ganha **% fizeram**;
  • em **Respostas abertas**, a cotação média fica só com o número e as respostas por
  • as outras tabelas (resumo por pergunta, jogos, robô, cópia de texto, classificações,
v2.7.0.6 2026-09-25
  • **O gato chega a quem entra tarde.** Quando ligas o 🐱 para a turma, ou para um aluno, o
v2.7.0.5 2026-09-24
  • **O monitor aguenta melhor uma internet fraca.** Durante a aula, o servidor deixa de te
  • **As respostas da turma ficam guardadas mesmo com toda a gente a trabalhar.** O servidor
  • **Depois de uma falha de rede, o monitor volta a ligar sem ir ao mesmo tempo que todos os
v2.7.0.4 2026-09-24
  • **Na pergunta aberta, os alunos já não saltam de lugar enquanto escrevem.** A lista aparece
v2.7.0.3 2026-09-24
  • **A sessão já não fecha a meio da aula.** Chegado o fim do prazo (48 h, 3 dias…), a sessão
  • **Retomar dá à sessão um prazo novo.** Uma sessão antiga que retomes já não fecha sozinha
  • **O slide da aula mantém-se.** Se fechares o browser, o portátil adormecer, fizeres F5 ou
  • **O monitor volta sempre a ligar.** Depois de uma falha de internet, o monitor tenta até
v2.7.0.2 2026-09-22
  • **Apresentar num quadro interativo com browser antigo.** Num browser que não se actualiza há
v2.7.0.1 2026-09-19
  • **O servidor volta a dizer ao aluno quantas tentativas já gastou.** Ao entrar ou
  • **«Limpar respostas» devolve as tentativas à turma**, porque a contagem sai das próprias
  • A apresentação tem de ser **exportada outra vez** (na app ou no CLI) para saber ouvir isto.
v2.7.0.0 2026-09-19
  • **O servidor deixa de limitar as tentativas dos jogos.** O limite de «Verificar» dos jogos
v2.6.0.0 2026-09-18
  • **O limite de tentativas dos jogos passa a valer no servidor.** O `max-tries` dos
  • «Limpar respostas» devolve as tentativas a toda a turma; o «Recomeçar» do professor no
v2.5.0.1 2026-09-18
  • **A palavra-passe da sessão passou a fechar a porta toda.** Até aqui protegia a
  • **A primeira tentativa deixa de poder ser reescrita.** A linha que diz «acertou logo
  • **Os desenhos e as fotografias de respostas deixam de estar ao alcance dos colegas.**
v2.5.0.0 2026-09-18
  • **As Sessões e o Histórico passam a cartões, agrupados por turma.** É a forma como se
  • **O relatório de uma aula já dada transfere-se do Histórico.** Novo botão na linha (e
v2.4.0 2026-09-18
  • **Saídas da aula visíveis na lista de alunos.** Ao lado de cada nome fica agora quantas
  • **Sensibilidade das saídas**, em Restrições: Alta (3 s), Média (12 s) ou Baixa (30 s).
  • **Tentativas nos resultados.** A grelha de respostas e o quadro de honra passam a
v2.3.1 2026-09-18
  • No modo de cartões das Minhas lições, o menu **⋮** de cada lição já aparece: antes
v2.3.0 2026-09-18
  • As lições abrem agora em **pastas por disciplina**: a primeira vista é um cartão por
  • Os cartões passaram a ser a vista por omissão. A tabela continua disponível em
  • A página aproveita melhor os ecrãs largos: os nove separadores cabem sem barra de
v2.2.0 2026-09-17
  • As lições podem ver-se em cartões, agrupados por disciplina (menu «Mais filtros» → Vista).
  • Novo separador **Biblioteca**: uma lição publicada pelo menu ⋮ passa a poder ser copiada
  • «Substituir deck…» no menu ⋮ troca os slides de uma lição sem perder o histórico, as
  • Uma cópia avisa quando o original tem uma versão nova e deixa o professor decidir quando
v2.1.2 2026-09-17
  • O servidor não mudou: esta versão é a prova de que aguenta o que prometeu — três turmas
v2.1.1 2026-09-17
  • Numa sessão com turma, só entra quem passou pela lista — sem excepções. Quem já estava
  • Recarregar a página ou perder a rede já não é uma porta lateral: a ligação de um aluno
  • Retirar um aluno da lista da turma fecha-lhe a sessão de imediato, mesmo com a sessão a
  • A entrada pela lista deixou de recusar alunos só porque a turma inteira entrou ao mesmo
  • Só é possível ligar a uma sessão uma turma sua.
v2.1.0 2026-09-17
  • Pausar, Retomar e Terminar a sessão passaram a estar juntos no cabeçalho do monitor,
  • Uma sessão terminada pode ser retomada a partir do próprio monitor — a mesma sessão, com
  • Os alunos que ainda tiverem a apresentação aberta voltam a entrar sozinhos quando retoma
  • Em Seguir-me e Bloqueados, o que abre no seu ecrã abre no dos alunos: avisos
v2.0.1 2026-09-17
  • Uma sessão ligada a uma turma passa a aceitar só os alunos dessa lista, cada um com o
v2.0.0 2026-09-17
  • A versão do servidor passou a aparecer no rodapé das páginas.
  • A sua página pessoal ganhou um painel de Novidades — é este.
  • O registo começa aqui — o que veio antes da 2.0.0 não ficou escrito.