O que a comunidade reportou
Entre 2021 e 2026, o processo Report a Bug recebeu 55 relatos publicados (componente “I found a Bug!”, id 210 do processo bug-report). Destes, 33 nunca receberam resposta oficial — a última resposta registrada é de 04/05/2022. O fluxo do MetaDecidim esvaziou a partir de 2023; quem reporta bug hoje vai direto ao GitHub.
Ritmo e resposta
Áreas mais citadas nos relatos
menção por mineração de texto multilingue (en/ca/es) em título+corpo. Idiomas dos títulos: en 32 · ca 14 · es 9.
versões citadas — instalações costumam reportar de versões antigas (0.23–0.26).
Relatos abertos que pedem triagem
Seleção de 12 dos 39 em aberto — lista íntegra em out/bugs_2021plus.csv. Cada id abre o relato original no MetaDecidim.
O que o upstream está corrigindo
Em 02/09/2026 havia 51 PRs abertos — 43 de código (os demais são bots: dependabot, traduções Crowdin e backport) e 30 com rótulo type: fix. A fila é jovem: mediana de ~32 dias; 38 já têm aprovação em review. Só um PR passa de um ano de espera.
| métrica | valor |
|---|---|
| PRs abertos / de código | 51 · 43 de código · 8 bots |
| drafts / mudanças pedidas | 3 drafts · 3 com changes requested |
| última revisão | 38 aprovados · 10 comentados · 3 com pedidos |
| base | develop 47 · release/0.32-stable 3 · 0.31-stable 1 |
| linhas na fila | +17.095 / −8.027 |
| módulos mais tocados | core 23 · proposals 11 · admin 11 · forms 9 · surveys 6 |
Exportar respostas grandes segue sem solução
Issue decidim/decidim#15443 (10/2025): survey com ~250 mil respostas faz o export “dizer que deu certo” e o ZIP nunca chegar — os exporters do decidim-core materializam tudo em memória (OOM). A correção pedida é streaming/lotes (find_each) + tratamento de erro. É o mesmo problema que a spec do fork registra como follow-up fora de escopo.
· #17321 + #17194 — display conditions (4 issues: #13787, #15712, #16513, #17193)
· #17495 — exclusão de respostas (issue #12386, 02/2024)
· #17568 — perguntas perdidas no import de espaço (#17567)
· #17421 — locale da tradução automática do questionário
· #17216 — export com votos ocultos · #17331 — CSV de open data
O que o fork já corrige no núcleo
Base Decidim 0.32.1, branch internalize/qa-fixes-v0.32.1 (github.com/lpirola/decidim). A spec docs/internas/specs/spec-forms-surveys-correcoes-core.md (status ready-for-agent, 01/09/2026) documenta 7 defeitos levantados pelo QA nos fluxos de formulários e surveys — e estabelece um único contrato de comportamento para o ciclo de vida do questionário.
Implementado (com testes revisados): fonte única de verdade para “aberto” (Permite respostas + janela), guarda de submissão no controlador, condicionantes com dono correto, remoção da edição de respostas, exportação limpa só com perguntas respondíveis, max_choices como limite de arquivos e política de upload da organização.
Pendente: anexos clicáveis no detalhe/confirmação da resposta · texto de apoio com extensões/tamanhos aceitos · numeração automática das questões.
Fora de escopo (follow-up registrado): performance de exportação em larga escala (streaming, exportação em segundo plano) — espelha a issue #15443 do upstream. Sincronização com o Decidim oficial não está planejada nesta etapa: fork deliberado.
O mesmo problema em três planos
Nem todo defeito do fork chegou à comunidade — e nem todo PR do upstream cobre o que o QA do fork encontrou. O quadro abaixo cruza o que é verificável em cada camada no recorte.
| problema (defeito QA) | comunidade · MetaDecidim 2021+ | upstream · GitHub | fork · spec |
|---|---|---|---|
| Estado “aberto” incorreto / submissões fora da janela | não relatado no recorte | sem issue/PR específico identificado na fila | implementado fonte única “Permite respostas” + janela; guarda de POST |
| Condicionantes corrompidas / não executam | não relatado no recorte | 4 issues abertas → PRs #17321, #17194 (backport) | implementado dono correto + migração anti auto-referência |
| Edição de resposta enviada | bug 16980 “não consigo publicar a resposta” (2022, sem resposta) | issue #12386 → PR #17495 (exclusão de respostas) | removido por decisão de produto (resposta única) |
| Exportação suja / perde dados | bug 17364 “export sem nome do submissor” (2023, sem resposta) | #15443 OOM em export grande (sem PR) · #16030 merged (survey errada) | implementado export limpo · follow-up larga escala |
| Perguntas de arquivo: limites e anexos | não relatado no recorte | sem correlato claro na fila aberta | parcial limite + política org feitos; anexos no detalhe pendente |
| Numeração das questões | não relatado no recorte | sem correlato claro na fila aberta | pendente contrato definido na spec |
“não relatado no recorte” ≠ inexistente: indica apenas que não há relato público no componente 210 publicado a partir de 2021.
Recomendações
Triar os 33 relatos sem resposta da comunidade
Migrar/espelhar para issues no GitHub com rótulo status: triage e resposta automática no componente 210 apontando o canal ativo — os relatos mais antigos têm mais de 5 anos.
Fechar a família display conditions no upstream
Mergir #17321/#17194 (com backport 0.31/0.32) — são 4 issues abertas desde 2024 com corrupção de dados; e destravar #17495 (#12386, 2,5 anos aberta).
Atacar o export de respostas grandes (#15443)
PR dedicado em decidim-core/lib/decidim/exporters: streaming/lotes (find_each), job assíncrono com notificação e teste de volume ≥100 mil respostas — o fork já listou isso como follow-up da própria spec.
Concluir as pendências da spec do fork
Anexos clicáveis no detalhe/confirmação da resposta, texto de apoio com extensões/limites e numeração automática — com specs em vermelho primeiro, conforme o contrato já definido.
Documentar a semântica de “Permite respostas”
Explicitar no manual administrativo que o interruptor é o controle de abertura independente das datas — a fonte de confusão original do defeito 01.