- buildClaimQueue exclui Issues ready sem frontmatter id (não viram worktree por construção) e withoutIdReadyIssues() expõe as puladas - agent:claim / worktree next / pnpm issue next avisam com os números em vez de morrer — uma Issue quebrada não trava mais a fila - pin novo em agentPoolEligibility.unit.spec.ts Closes #864
1.4 KiB
OPS94 — Fila de claim: Issue ready sem frontmatter id sai da fila com aviso (2026-08-24)
OPS94 (Issue #864) — worktree next morria com "Issue sem frontmatter id" e a Issue travava a fila inteira (2026-08-24): a limpeza manual do tracker deu ready a débitos antigos e a #659 (B195/D11, wizard "Registrar pedido") — única ready sem bloco frontmatter — envenenava a fila: todo pick sem --issue caía nela e morria antes do flip de labels (o design já morre antes do claim — "fail loudly, never invent" — mas trava a fila atrás dela indefinidamente). Correção em duas camadas. Dados: #659 ganhou frontmatter (id: B195-F1, depends: [], priority: P2, kind: defect), título renomeado para B195-F1 — … e label prio:P2 — volta a claimar normalmente (ao vivo: agent:claim --dry-run lista #659 [prio:P2] B195-F1). Código: buildClaimQueue agora exclui Issues ready sem id (não viram worktree por construção — branchNameForIssue falha por contrato); novo withoutIdReadyIssues() expõe as puladas; agent:claim / worktree next / pnpm issue next avisam com os números em vez de morrer — uma Issue quebrada nunca mais trava a fila. Teste: pin novo em agentPoolEligibility.unit.spec.ts (exclusão da fila + lista de puladas). Verificação: tsc limpo, lint limpo, suíte unit completa 2458/2458 verde.