metodo: portao e template de PR no repo, protecao da main e os dois contadores - #5
Merged
Merged
Conversation
…ontadores Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
O que este PR faz e por quê
Três ajustes que compartilham a mesma ideia: o que precisa ser garantido não pode depender de o agente lembrar de gerar na hora certa.
O
.github/passa a vir pronto no template. Osetup.mdmandava o agente copiar o template de PR e oportao-de-entendimento.yml"do Apêndice B do guia" — e o guia tem 67 KB. Isso obrigava o agente a abrir um arquivo enorme no meio da geração de arquivos, exatamente no momento em que a janela de contexto está mais disputada, para copiar YAML lido de dentro de prosa. É assim que um Portão nasce parafraseado e sem efeito. Os dois arquivos são idênticos para toda a turma, então nascem versionados aqui e o setup só confere que existem. De brinde, some o caso especial que o própriosetup.mdprecisava explicar: como o template de PR agora está namaindesde o primeiro commit, ele já carrega no primeiro Pull Request do aluno, e ninguém precisa colar o modelo à mão.Entra também um
.gitattributescom* text=auto eol=lf, que osetup.mdmanda o aluno criar mas que faltava no próprio repositório do template — o resultado era o diff de qualquer PR virar ruído ao trocar de máquina entre Windows e Linux.A
mainganha mecanismo. Das regras da constituição, "amainé sagrada" era a única que existia apenas como frase: revisor sem escrita, spec comstatuscommitado pelo aluno e rodada contada por arquivo já tinham trava, ela não. O Passo 4 do setup agora propõe ligar branch protection via API, comrequired_approving_review_count: 0(exige PR sem exigir aprovação de terceiro, o que serve igual para quem faz sozinho e para dupla) eenforce_admins: true, porque sem isso o dono do repositório é justamente quem fura a regra sem perceber. Proteção de branch não é herdada de repositório template, então cada aluno precisa ligar a dele — daí o passo existir.As duas rodadas passam a ter nome. A constituição contava tentativas de fazer o teste passar; o
ciclo-tarefacontava passadas de revisão. Dois contadores aninhados, ambos chamados "2 rodadas", o que fazia a regra parecer um limite total de duas tentativas. Agora são rodada de TDD (dentro do implementador) e rodada de revisão (no fluxo), nomeadas em todos os arquivos, e a mensagem de escalonamento diz qual dos dois estourou.Apontamentos da revisão
Não se aplica: PR de método, sem spec e sem ciclo de tarefa.