Funcionalidade ownership - BrunodosSantosVaz/big-bang GitHub Wiki

Posse concorrente de issues

Funcionalidade BB-F-016 · requisito RF-BB-016 · versão documentada 2.0.1 · código 9c73feb3e357a1216011eaf64bf4b5d944827087.

Finalidade

Evitar que duas IAs implementem a mesma tarefa usando sessões rastreáveis e timestamps do servidor.

Atores

Pessoa responsável pelo projeto, IA com posse confirmada e automações explicitamente autorizadas.

Pré-condições

Repositório e raiz corretos, versão instalada e configuração compatível. Para operações de escrita, exige-se autorização vigente, branch adequada e acesso ao recurso envolvido; consultas não conferem permissão adicional.

Fluxo principal

Ler claims ativos e bloqueadores, registrar aquisição, esperar confirmação, tocar atividade após push e liberar ou recuperar posse expirada conforme regras.

Validações

Labels são visualização; os comentários de sessão escolhem o vencedor. Data do commit não altera a validade da posse.

Alternativas e erros

Issue bloqueada, capacidade ocupada ou concorrente vencedor impede execução; recuperação não inventa inatividade.

Permissões

Leitura usa permissões mínimas do repositório. Operações locais respeitam a posse e worktree; escrita no GitHub exige acesso explícito. Esta funcionalidade não concede novas permissões a visitantes nem substitui decisões exigidas pelo fluxo.

Resultados

Resultado esperado: Evitar que duas IAs implementem a mesma tarefa usando sessões rastreáveis e timestamps do servidor. O retorno e os arquivos afetados são conferidos pelos cenários rastreados abaixo; falha impede considerar a operação concluída.

Referência da implementação

Os símbolos abaixo compõem o inventário real do módulo, incluindo auxiliares internos; não representam APIs públicas independentes.

ownership.py

Implementação revisada.

Símbolo Linha
api 17
listing 24
labels 30
active_claims 34
issue_data 51
_add_label 55
_remove_label 59
_close_claim 67
blocked 72
_capacity 91
_preflight 104
claim 123
release 156
timestamp 173
last_activity 177
touch 184
stale 195
recover 201

Cenários e rastreabilidade

Requisitos · Matriz de rastreabilidade · Referência CLI

Fontes rastreadas