docs: auditoria de coerência — branch antes da spec, portão exigido no merge, entregas do Moodle - #10
Merged
Merged
Conversation
…o merge, bug sem spec Corrige as contradições entre README, CONTRIBUTING, guia, tutorial, workflows e esqueletos, encontradas em auditoria de leitura completa: - Portão de Entendimento: CONTRIBUTING dizia 200 caracteres, só em PR de apps/ e reprovação sem tocar docs/; template, YAML e guia dizem 400, em todo PR. CONTRIBUTING alinhado ao mecanismo real. - A proteção da main não exigia o check do Portão (required_status_checks null): PR reprovado mesclava. Setup passa a exigir o job "explicacao". - A branch da Issue nascia só depois do plano, mas o commit de aprovação da spec era do usuário — caía na main bloqueada. Branch agora nasce no início do /utf-issue; spec (rascunho), aprovação e plano são os primeiros commits. Guia, tutorial e diagrama atualizados. - Guia §12 dizia que bug de comportamento exige spec; constituição §3 e guia §4 dizem que não. FAQ alinhado à constituição. - Versões no architecture.md: guia proibia, esqueleto e workflow pediam. Regra única: linha principal (major) no documento, pin no package.json. - Esqueleto da spec (seções) passa a constar no workflow da Issue, não só na prosa do guia — auditor e revisor cobram essas seções. - Referências a "Passo 3/5/6" com numeração do guia dentro dos workflows e agentes trocadas por nome. - Glossário do PRD no guia trazia entidade em inglês (duplicava o glossário técnico); coluna Blocked no Kanban; mapa de domínios sem tabela de rotas à mão; .github vem do template (não do setup); contagem de portões; "quatro comandos" com cinco linhas; OpenCode fecha por allowlist; nota de comandos do Antigravity no README e no tutorial. CONTRIBUTING.md estava com CRLF; normalizado para LF conforme .gitattributes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
E1 é "Planejamento e Setup": Fase 0 + PR do setup, sem spec. E3 é "Frontend, Pagamento e Deploy". Atividades semanais valem 10 pontos e entrega sem vídeo não pontua. A primeira spec passa a contar na E2. Sem datas: os prazos ficam no Moodle, e a ficha vale para qualquer semestre. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…tomada da Issue, estouro, Portão sem comentários Seis brechas encontradas por auditoria independente, todas confirmadas: - B1 Os revisores recebiam `git diff <SHA>..HEAD`, que é vazio: o implementador não commita, então HEAD == SHA. Agora o orquestrador faz `git add -A` (sem commit) e o diff é `git diff <SHA>` contra o working tree. - B2 `/utf-tutor <n>` era oferecido antes do commit que ele procura. A aula vem depois do commit; antes dele, o aluno confere o diff com o roteiro do tutor "antes". O tutor aceita working tree (`git add -A && git diff HEAD`). - B3 Não havia comando para fechar a Issue (auditor, docs, PR). `/utf-issue` ganhou retomada: detecta o estado da pasta specs/ e entra no passo certo. Ordem do fechamento: docs → commit → auditor → prova → PR. - B4 Após estourar as 2 rodadas, os pareceres ficavam untracked (perdidos no `git clean`) e bloqueavam a reexecução da tarefa. Agora: commit dos pareceres antes da limpeza; ao recomeçar, vão para reviews/arquivo/<data>/. - B5 `/utf-tutor antes 3` perdia o número no Claude Code ($1 → $ARGUMENTS). - B6 O comentário HTML do template de PR contava 252 caracteres para o Portão. O CI passa a descartar comentários HTML. Menores: aprovação do plano incluída no portão da spec; tutor na lista do Passo 5; tamanho de tarefa por critério (não minutos); formato do plan.md definido; NN nos nomes de parecer e "tarefa n:" no commit; pasta specs/NNN-slug e branch n-slug; estados do índice de specs; grep do tutor ancorado; escopos do gh unificados; "Depende de" na Issue e na spec; Live no PRD; setup como exceção explícita da constituição; /utf-task em tarefa já feita para; OpenCode "estreita", não "fecha"; tutor não roda testes; auditor do OpenCode pode ler Issues; nota sobre SDD no ID1; main protegida exige repo público; /utf-architecture depois do /utf-flows em todas as cascas; `git clean` no descarte; exemplo do §9 não afirma 400 caracteres. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Contributor
Author
|
Terceiro commit: segunda auditoria, feita por um agente de leitura independente e confirmada ponto a ponto. Seis brechas que os dois primeiros commits não cobriam, quatro delas no ciclo por tarefa:
Mais 20 ajustes menores, listados na mensagem do commit. |
… ferramentas No Antigravity o comando é o nome do arquivo em .agents/workflows/, então /utf-task não existia lá — só /ciclo-tarefa. Agora os oito workflows se chamam utf-prd, utf-backlog, utf-flows, utf-architecture, utf-setup, utf-issue, utf-task e utf-tutor, e as cascas de Claude Code, Cursor e OpenCode apontam para os novos nomes. As notas de "no Antigravity leia o equivalente" saem do README e do tutorial. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s quatro ferramentas" Revert 0439b48. Renomear os arquivos de workflow é mudança de estrutura do template e afeta repositórios já criados a partir dele — decisão do autor da disciplina, não deste ajuste de coerência. Os nomes voltam ao original e as notas de equivalência do Antigravity voltam ao README e ao tutorial. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…ência de CI Fecha as lacunas que sobraram da auditoria, depois de um teste do ciclo num repositório de brinquedo (nove verificações mecânicas, todas passando). - specs/_modelo/spec.md e plan.md: os dois artefatos do ciclo não tinham esqueleto — só a Fase 0 tinha. Os modelos são comentados e o workflow da Issue passa a apontar para eles em vez de repetir as seções, para o texto não divergir em dois lugares. O modelo fica fora do índice e da auditoria. - Bug e tarefa técnica ganham caminho: modelos de Issue em .github/ISSUE_TEMPLATE/ e uma seção no tutorial com o passo a passo. No bug, o primeiro commit é o teste que reproduz a falha. - Apêndice C do guia: esteira de CI de referência, com service container do Postgres e health check, para a Issue do ID18. O template continua sem gerar CI além do Portão. - Quem assina o quê: PR é sempre do aluno; no commit a decisão é dele e a execução varia (Fase 0 e aprovação da spec, ele; dentro do ciclo, o agente após o "pode commitar"). Estava implícito em dois padrões. - Nits: emoji do status das stories no esqueleto do PRD; "Type" de Issue virou "modelos de Issue"; setup confere ISSUE_TEMPLATE. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
Author
|
Sexto commit, fechando as lacunas que sobraram — precedido de um teste do ciclo num repositório de brinquedo. O teste. Simulei a Issue #27 do começo ao fim num repositório descartável e verifiquei nove afirmações que os workflows fazem. Todas passam depois das correções:
O que entrou.
|
specs/_modelo/ tinha dois problemas: o underscore não existe em nenhum outro nome do repositório (só nos dois que o GitHub exige) e a pasta poluía specs/, que deve conter apenas specs reais. Em docs/, ao lado dos outros esqueletos do template, as quatro regras de "ignore essa pasta" que os workflows precisavam deixam de existir. Os modelos entram nas tabelas de artefatos do guia e do CONTRIBUTING para serem achados. Co-Authored-By: Claude Opus 5 (1M context) <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ê
Auditoria de leitura completa do template (README, CONTRIBUTING, guia, tutorial, checklist, os oito workflows, os cinco agentes e as cascas das quatro ferramentas) atrás de contradições entre os documentos. O método pede que nada seja duplicado, mas README, CONTRIBUTING, tutorial e guia repetiam as mesmas regras com versões diferentes, e o CONTRIBUTING tinha ficado para trás.
Cinco contradições mudavam o que o aluno faz e foram corrigidas:
apps/, reprovação se não tocardocs/, e liberava PR de manutenção "direto". O template de PR, o YAML e o guia §9 dizem 400, em todo PR. CONTRIBUTING alinhado ao mecanismo real.mainaplicada pelo setup usavarequired_status_checks: null, então o check ficava vermelho e o merge seguia. O setup passa a exigir o jobexplicacao, e o guia deixa de prometer o que a proteção não fazia.status: aprovadano Passo 1, mas a branch só era criada no Passo 3 — o commit caía namainbloqueada. A branch agora nasce no início do/utf-issue; rascunho da spec, aprovação e plano são os três primeiros commits, antes de qualquer código. Workflow, guia (Passos 2 a 4, §10, diagrama §5) e tutorial atualizados.architecture.md. O guia listava como anti-padrão; o esqueleto e o workflow pediam. Regra única: a linha principal (major) fica no documento, porque o setup escolhe o gerador por ela; o pin exato vive nopackage.json.Desalinhamentos menores também corrigidos: esqueleto da spec (as sete seções) passa a constar no workflow da Issue, já que auditor e revisor cobram essas seções; referências a "Passo 3/5/6" com numeração do guia dentro de workflows e agentes viraram nome; glossário do PRD no guia trazia entidade em inglês (duplicava o glossário técnico); coluna
Blockedno Kanban, que o guia já mandava usar; mapa de domínios sem tabela de rotas à mão;.github/vem do template e não do setup; contagem de portões (quatro por história e um quinto no PR) igual nos quatro documentos; "quatro comandos" em tabela de cinco; OpenCode fecha por allowlist, não por prompt; nota no README e no tutorial de que no Antigravity o comando é o nome do arquivo em.agents/workflows/.O segundo commit alinha a ficha e o guia às entregas do Moodle: E1 é "Planejamento e Setup" (Fase 0 + PR do setup, sem spec), E3 é "Frontend, Pagamento e Deploy", atividades semanais valem 10 pontos e entrega sem vídeo não pontua. Sem datas — a ficha vale para qualquer semestre.
CONTRIBUTING.mdestava com CRLF e foi normalizado para LF conforme o.gitattributes, por isso o diff dele parece maior do que é (git diff -wmostra as 14 linhas reais).Apontamentos da revisão
Não se aplica.
🤖 Generated with Claude Code