Bump node from 22-alpine to 26-alpine in /apps/frontend - #1
Closed
dependabot[bot] wants to merge 9 commits into
Closed
dependabot[bot] wants to merge 9 commits into
dependabot[bot] wants to merge 9 commits into
Conversation
Monorepo em tres camadas, com a direcao das dependencias verificada por portao automatico (frontend -> backend -> core): - packages/core regra de dominio pura, sem framework e sem SQL - apps/backend casos de uso, repositorios e integracoes - apps/frontend Next.js 15 e React 19: telas e rotas HTTP - infra compose, migracoes do Postgres, proxy e ferramentas Design system proprio em tokens: paleta violeta, tipografia e espacamento num lugar so', com tema claro e escuro que passam em contraste WCAG AA. Nenhum .env e' versionado. O .gitignore recusa qualquer um que nao seja .example, e a documentacao manda gerar segredo proprio por instalacao. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Aluno assiste, faz prova e recebe certificado. A conclusao exige 90% de cobertura do video COM tempo de sessao compativel: arrastar a barra nao conta. O avanco para trecho nao assistido e' bloqueado por curso. Prova com banco de questoes, correcao por rubrica e reteste PEDIDO ao instrutor, que libera ou recusa com comentario obrigatorio. Certificado em PDF com assinatura do instrutor e codigo conferivel, que reavalia matricula, conclusao e nota em vez de confiar no codigo sozinho. Tambem entram: biblioteca de conteudos, plano de formacao por cargo, trilha por funcao e local, avaliacao de eficacia do treinamento, corte automatico de video, LDAP como fonte de identidade, exclusao de conta (LGPD), cifra de segredos em repouso, H5P e rigor de leitura. Multi-tenant desde o schema: toda consulta filtra por tenant_id, e ha teste automatizado cobrindo o isolamento entre clientes. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- CI com typecheck, lint, testes, build, imagem Docker e compose validado - Deploy por tag: publica no GHCR e atualiza o servidor por SSH, migrando antes de trocar o container e esperando o healthcheck. Sem os secrets de SSH a Action publica a imagem e pula o deploy, sem falhar - CodeQL, npm audit e Gitleaks em cada PR e semanalmente - Dependabot agrupado, templates de issue e de PR brand.config.ts reune nome, cor e caminhos das imagens num arquivo so': trocar a marca do produto e' editar dois valores e substituir quatro imagens. O nome que aparece na aba, no certificado e nas telas publicas sai do tenant que atende a requisicao, com o nome do produto como reserva. Nenhum nome fica fixo em codigo. README, CONTRIBUTING, SECURITY e DEPLOY escritos para quem chega de fora. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- o prototipo gerado deixa de ser versionado: os .template.html sao a fonte, e a CI roda npm run preview antes dos portoes - documenta HTTP_PORT, HTTPS_PORT, STORAGE_PUBLIC_ENDPOINT e TZ, que o compose ja lia sem estarem declaradas em lugar nenhum - remove assets que nenhum codigo referenciava Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Manrope, sob SIL Open Font License: pode ser redistribuida, inclusive num fork comercial. Por ser variavel, um arquivo de 24 kB cobre os pesos 200-800 onde uma familia estatica levaria oito arquivos e 215 kB. Auditoria visual das telas nos dois temas ajustou: - o gradiente de marca e a arte da landing no tema escuro - tres cores da sidebar no tema claro, com os contrastes que os comentarios documentam - o hover do botao primario no escuro, que dava 3.96:1 com texto branco Corrige tambem width/height de imagem que nao batiam com os arquivos e causavam layout shift, e o alvo de toque do .link (WCAG 2.5.8). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
`.sr-only` usava margem negativa e `position: absolute` sem ancestral posicionado, entao um rotulo dentro de `<th>` se ancorava na pagina e reaparecia como 8px de rolagem horizontal a 1024px. Agora recorta por `clip-path` e quem o envolve vira o bloco de contencao. Tres campos do prototipo nao tinham nome acessivel: o `<label class="sr-only">` ao lado deles nao tinha `for` nem envolvia o campo, o que faz dele texto solto. Como os formularios sao clonados por modulo, `id` colidiria; ficou `aria-label`. As quatro capas de curso eram degrades do mesmo violeta variando so' o angulo, e numa grade liam como um retangulo so'. Cada uma passa a puxar para um acento da marca, que a personalizacao por cliente ja deriva. Alinha as acoes de linha da tabela com o botao que o app React usa. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
O prototipo usava `.studio` e `.studio__head` como container de pagina, e nenhuma folha define as duas. O app React usa `.page` e `.page-head` nos mesmos lugares. Oito paginas renderizavam sem o container que o codigo pedia. O defeito estava escondido porque o portao que compara classes usadas com classes definidas varria o `<style>` inteiro, comentarios inclusive — e um comentario que menciona `.studio` contava como definicao. Tirar os comentarios do CSS gerado revelou o buraco e, de quebra, cortou 39 kB de cada uma das 21 paginas. Com elas mais leves, o orcamento por pagina cai para 200 kB. Na tabela em tela estreita, um e-mail longo nao quebrava e encostava na borda do cartao. A barra de QA do prototipo media 426px numa tela de 390px e tapava o conteudo que se estava conferindo. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
A moeda da gamificacao e' do cliente que instala, nao do produto: um nome fixo apareceria na tela de quem usa outra marca. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Bumps node from 22-alpine to 26-alpine. --- updated-dependencies: - dependency-name: node dependency-version: 26-alpine dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Author
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |
dependabot
Bot
deleted the
dependabot/docker/apps/frontend/node-26-alpine
branch
September 7, 2026 22:39
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Warning
Cooldown could not be applied because no publication date was available from the registry.
Bumps node from 22-alpine to 26-alpine.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)