Sobre o projeto

## Visão geral O jira-integration é um plugin para Claude Code que processa uma issue do Jira desde a criação do branch → projeto de abordagem → implementação → testes → revisão → merge local, registrando o resultado de cada etapa como comentários, anexos e transições de status no Jira. Após colocar várias issues em uma fila e consumi-las sequencialmente, ele resume os resultados de aprovação/isolamento em um único relatório de exceções, permitindo que uma pessoa avalie apenas os casos isolados. ## Estrutura de operação É composto por dois loops. - Loop de etapas (`auto`): executa uma tarefa na ordem start → approach → impl+test → review. Cada etapa é executada por um sub-agente isolado, com um modelo diferente atribuído por etapa. O portão de revisão avalia a taxa de correspondência design-implementação e o número de itens críticos como valores estruturados; se não for aprovado, um agente de correção converge por meio de um loop de sensores (máximo 5 vezes) que executa apenas lint, typecheck e testes relacionados, seguido de uma execução da suíte completa de testes e uma re-revisão delta. O limite do loop externo é 2. - Loop de tarefas (`loop`): consome a fila configurada pelo `init` em ordem, realizando para cada tarefa auto → merge local `--no-ff` → rebase dos worktrees restantes. Se o portão de revisão falhar, uma etapa falhar ou houver conflito de merge/rebase, apenas essa tarefa é isolada e o processo continua para a próxima. A interrupção total ocorre somente em sinais de infraestrutura, como autenticação (401/403), conexão MCP ou base corrompida, ou quando há falhas consecutivas de tarefas diferentes. A documentação afirma que o fluxo de controle não é interpretado por prompts, mas sim executado deterministicamente pelo script de Workflow (`scripts/auto.workflow.js`). ## Integração com o Jira Cada chave de issue corresponde a um branch (`feature/<KEY>`), um worktree e um arquivo de contexto. O `.jira-context.json` do repositório principal é um agregado contendo a fila inteira; o de cada worktree contém o estado da respectiva tarefa. Para cada comando, ocorrem transições de status (a fazer → em andamento → em revisão → concluído), comentários e anexos (documentos de approach/review, relatórios de teste). O isolamento não altera o Jira; é registrado apenas no estado local. As chamadas ao Jira são feitas pelo `scripts/jira-cli.py` (REST), que usa apenas a biblioteca padrão. As credenciais são armazenadas no bloco `jira` do `.jira-context.json` por workspace e são migradas automaticamente de variáveis de ambiente e configurações MCP legadas. O registro do servidor MCP é opcional. ## Principais comandos - Criação de issues: `epic set/show/clear`, `discover`, `create` - Fila/automação: `init`, `loop`, `auto` - Etapas individuais: `start`, `approach`, `impl`, `test`, `review`, `merge`, `pr`, `done` - Consulta/limpeza: `status`, `report`, `clean` - Outros: `/jira setup`, `/jira dashboard` ## Regras operacionais O porte da tarefa é classificado como L1/L2/L3 para ajustar o volume dos artefatos e a profundidade da revisão. Tarefas que tocam modelo de dados, limites de transação, contratos de API externa, concorrência ou limites de segurança são promovidas para L2 mesmo que originalmente sejam L1. O `start` pode recomendar pular apenas as etapas de approach e test; impl, review e merge nunca são pulados. Todas as etapas são registradas em `completedSteps`, de modo que, em uma nova execução, as etapas concluídas são ignoradas. ## Artefatos e dashboard Em `docs/`, são acumulados documentos de requirements, approach, test e review, além de review-log e run-log (jsonl). O run-log e o review-log servem como dados de observação da própria esteira, incluindo taxa de falso positivo da revisão, duração das etapas, frequência de correções e motivos de isolamento. O dashboard exibe em tempo real, via SSE, em `http://127.0.0.1:8765`, cards por worktree (etapa atual, chamadas de ferramentas, status no Jira, gráfico de blocos). Ele é restrito a localhost e não possui autenticação. ## Licença MIT