Pular para conteúdo

Sprint 003 — Registro de aceitação

Feature: 003-editar-remover-ferramentas Avaliado em: 2026-08-10 Papel: Product Owner — Paulo Sergio Santos Junior Tipo: sro.product_owner_client — quem demanda é quem decide, e a decisão é final

Cada critério foi percorrido contra evidência. A classificação é derivada disso, nunca atribuída — sro.rule03.

Resumo

Quantidade
Entregáveis avaliados 3
Aceitos — a confirmar pelo papel
Não aceitos —
Tarefas executadas com sucesso —
Critérios avaliados 21
Critérios sem evidência 0

O que a avaliação encontrou antes de classificar

Percorrer os critérios um a um, em vez de conferir se o sprint "parecia pronto", achou três coisas que faltavam — e as três foram feitas antes deste registro, não anotadas como pendência:

Achado O que faltava Onde estava a ilusão
US2, AC4 histórico não aparecia em tela nenhuma observation_history/2 existia e passava nos testes, sem nenhum consumidor
SC-007 nenhum teste de que a coleta desmarca havia teste de que a retomada não desmarca. Metade da promessa verificada, e a outra metade parecendo verificada
SC-010 encerrar e retomar não tinham teste de isolamento pessoas e equipes tinham; o ciclo de observação, não

E antes deles, o achado que originou o trabalho: retomar não tinha botão. Estava especificado, implementado e testado, e não havia como uma pessoa executá-lo.


D01 — A marca de ausência escopada por organização (L19)

Produzido por: F0 do sprint · correção de defeito da feature 001 Materializa: nenhuma user story — é correção de defeito (osdef.defect), avaliada contra o comportamento que a feature 002 já exigia.

Critério Tipo Conforme Evidência
Coletar uma organização marca só os vínculos dela funcional sim sources_observation_test.exs e commands_test.exs; removendo o escopo, 4 testes reprovam
Nenhum vínculo de outra organização é tocado funcional sim o teste diz o motivo por extenso: coletar alfa marcou o vínculo de beta — é a L19 de volta
A forma do teste cobre o que a suíte não cobria não funcional sim duas organizações e duas coletas em sequência — forma ausente nos 151 testes anteriores

Fase derivada: sro.accepted_deliverable. Fase da tarefa: sro.successfully_performed_scrum_development_task.

Ressalva registrada, e não é falha de critério: o dado histórico marcado errado continua marcado. Não foi desmarcado por decisão — não se sabe o que a origem mostrava naquele instante, e desmarcar afirmaria observação que não ocorreu, que é o próprio erro da L19. O reparo acontece na próxima coleta real de cada organização.


D02 — Encerrar a observação (US1)

Produzido por: F3 · T009 a T018 Materializa: US1 — Encerrar a observação de uma organização (atômica, P1)

Critério Tipo Conforme Evidência
AC1 — impacto mostrado antes de confirmar funcional sim tela em localhost:4000/ferramentas: 1 equipe, 5 vínculos, 4 pessoas só daqui, 1 permanece, 0 payloads apagados
AC2 — a ferramenta deixa de ser sincronizada funcional sim origem encerrada não é coletada: {:error, :observation_ended}, com o Mox da borda HTTP sem expectativa nenhuma — qualquer chamada à origem derruba o teste
AC3 — registros seguem consultáveis, marcados, com data funcional sim a equipe da organização encerrada é marcada, não apagada
AC4 — a credencial não existe mais funcional sim nenhuma linha remanescente, e nenhum texto cifrado — consulta direta à tabela, não afirmação no código
AC5 — quem estava em duas mantém a outra funcional sim quem tem vínculo em outra organização NÃO é marcado; as organizações vigentes da pessoa passam de três para duas
AC6 — a equipe derivada é marcada, não apagada funcional sim mesmo teste de AC3, com equipe derivada no cenário
SC-001 — nada é apagado não funcional sim banco real: 72 pessoas · 12 equipes · 82 vínculos · 472 payloads, idênticos antes e depois
SC-002 — 100% do exclusivo marcado, com data não funcional sim pessoa com vínculo apenas na organização encerrada perde vigência
SC-003 — nada com proveniência vigente alhures é marcado não funcional sim é o teste que importa: Paulo não é marcado ao encerrar ifesserra-lab
SC-004 — nenhuma credencial, nem cifrada não funcional sim consulta direta; no banco real, credenciais restantes: 0
SC-005 — a coleta não consulta a origem encerrada não funcional sim ausência de expectativa no Mox é a prova
SC-008 — o vínculo encerrado permanece consultável não funcional sim o histórico mantém a organização encerrada
SC-009 — os números da tela conferem com o que é marcado não funcional sim o número mostrado é o número que o encerramento marca — o impacto é gravado no evento e lido de volta do banco
SC-010 — não atravessa tenant não funcional sim escrito nesta avaliação: três testes, com a contraprova de que o dono continua alcançando

Fase derivada: sro.accepted_deliverable. Fase da tarefa: sro.successfully_performed_scrum_development_task.


D03 — Retomar a observação (US2)

Produzido por: F4 · backend em T023 a T025; tela e histórico nesta avaliação Materializa: US2 — Retomar uma observação encerrada (atômica, P2)

Critério Tipo Conforme Evidência
AC1 — retoma a ferramenta existente, não cria segunda funcional sim reusa a ferramenta existente, não cria uma segunda
AC2 — a coleta seguinte devolve vigência ao que reapareceu funcional sim escrito nesta avaliação: reobserva um de dois vínculos e exige a distinção nos dois sentidos
AC3 — exige credencial nova funcional sim exige credencial nova, e ela passa a ser a ativa; credencial recusada não retoma
AC4 — o histórico mostra encerramento e retomada funcional sim feito nesta avaliação: histórico de observação (2) na tela, com as duas transições ao expandir
SC-006 — não duplica ferramenta, pessoa nem equipe não funcional sim mesmo teste de AC1
SC-007 — o que voltou fica vigente, o que não voltou segue marcado não funcional sim escrito nesta avaliação; sem o segundo assert, desmarcar tudo passaria
SC-011 — nenhum segredo utilizável em tela não funcional sim teste pela violação: procura ghp_segredo_novo_12345 no HTML e exige não encontrar

Fase derivada: sro.accepted_deliverable. Fase da tarefa: sro.successfully_performed_scrum_development_task.

Uma limitação declarada, e não é falha de critério: o caminho feliz da retomada não foi exercitado contra o GitHub real. Ele exige uma credencial válida, e a chave mestra que decifra as credenciais do banco de desenvolvimento é da pessoa mantenedora — não está no meu ambiente. O que foi verificado na aplicação no ar é o botão, o formulário e o histórico; a retomada bem-sucedida está provada em teste, com a borda HTTP simulada.


Critérios alterados durante o sprint

Nenhum. Os 27 FR e os 11 SC estão como foram especificados e aprovados antes da implementação.

Critérios sem evidência

Nenhum. Os três que estavam sem evidência quando esta avaliação começou — US2/AC4, SC-007 e SC-010 — foram cobertos antes deste registro, e a cobertura está commitada.


Fora do escopo avaliado

Não entram nesta avaliação porque não entraram no sprint, com destino declarado no backlog:

Item Destino
US3 — renomear e remover credencial, limpar atenção product backlog, sem iteration
Telas T019 a T022 product backlog; a tela de encerramento existe e cobre o caminho principal
Reparo do dado histórico da L19 acontece na próxima coleta real de cada organização
Janela da iteration do sprint 002 decisão pendente — corrigir exige mexer em iterations, causa da L11

Entregável do sprint

sro.sprint_deliverable_composed_of_accepted_deliverable admite apenas entregáveis aceitos. Com D01, D02 e D03 derivados como aceitos, o entregável do sprint 003 é composto pelos três — sujeito à confirmação de quem desempenha o papel, que é ato humano e não decorre desta avaliação.

Nota sobre a revisão independente

Continua bloqueada por ferramenta: com uma identidade no repositório, o autor não aprova o próprio PR. A pessoa mantenedora revisou e concordou com os PRs anteriores sem registrar comentário — o registro ausente não significa revisão ausente, e é a ferramenta que não sabe representar isso. Fecha com bot ou GitHub App.