# JIRA AI Fixer v2.0 - Credenciais e Acesso ## 🌐 URLs - **Frontend:** https://jira-fixer.startdata.com.br - **API:** https://jira-fixer.startdata.com.br/api - **Repositório:** https://gitea.startdata.com.br/startdata/jira-ai-fixer ## 🔐 Credenciais Padrão ### Primeira vez (criar conta): ```bash POST https://jira-fixer.startdata.com.br/api/auth/register { "email": "admin@startdata.com.br", "password": "JiraFixer2026!", "name": "Admin User" } ``` ### Login: ```bash POST https://jira-fixer.startdata.com.br/api/auth/login { "email": "admin@startdata.com.br", "password": "JiraFixer2026!" } ``` **Retorno:** `{ "access_token": "..." }` ### Usar token: ```bash curl -H "Authorization: Bearer YOUR_TOKEN" https://jira-fixer.startdata.com.br/api/issues ``` ## 📊 Banco de Dados - **Type:** PostgreSQL 15 - **Host:** postgres_database (internal Docker network) - **Port:** 5432 - **Database:** jira_fixer_v2 - **User:** postgres - **Password:** postgres **Connection string:** ``` postgresql+asyncpg://postgres:postgres@postgres_database:5432/jira_fixer_v2 ``` ## 🧪 Teste End-to-End ### Cenário: Bug no COBOL → Análise AI → Fix automático 1. **Repo de teste:** https://gitea.startdata.com.br/startdata/cobol-sample-app 2. **Bug introduzido:** `src/cobol/VALIDATE.CBL` - aceita cartões com 10+ dígitos ao invés de exatamente 16 3. **Ticket criado:** TicketHub SUPP-6 ### Fluxo esperado: ```bash # 1. Criar issue no JIRA Fixer curl -X POST https://jira-fixer.startdata.com.br/api/issues \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "Card validation accepts invalid card numbers", "description": "VALIDATE.CBL accepts cards with >= 10 digits instead of exactly 16", "source": "tickethub", "external_key": "SUPP-6", "external_url": "https://tickethub.startdata.com.br/tickets/6", "priority": "high" }' # 2. AI analisa automaticamente (background task) # - Identifica arquivo: src/cobol/VALIDATE.CBL # - Root cause: >= 10 ao invés de = 16 # - Confiança: ~95% # 3. Se confiança >= 70%, cria PR automaticamente # - Fork/branch: fix/SUPP-6-auto-fix # - Commit: correção da validação # - PR no Gitea # 4. Atualiza ticket TicketHub PATCH https://tickethub.startdata.com.br/api/tickets/6 \ -d '{ "status": "in_progress", "description": "AI analysis complete. PR created: [link]" }' ``` ## ⚙️ Integrações ### TicketHub - **URL:** https://tickethub.startdata.com.br - **Webhook:** `https://jira-fixer.startdata.com.br/api/webhooks/tickethub` - **Project:** SUPP (ID: 1) ### Gitea - **URL:** https://gitea.startdata.com.br - **Token:** (configurar em Settings → API Keys) - **Repo de teste:** startdata/cobol-sample-app ### AI Model - **Provider:** OpenRouter - **Model:** claude-3.5-sonnet / llama-3.3-70b-instruct - **API Key:** (variável de ambiente OPENROUTER_API_KEY) ## 🚨 Status Atual (2026-02-18) **Frontend:** ✅ Deployado e funcional **Backend API:** ⚠️ Stack precisa ser atualizado para incluir serviço API Python ### Próximo passo para completar deploy: 1. Atualizar stack 308 para incluir serviço `api` (Python FastAPI) 2. Configurar DB connection string 3. Configurar OPENROUTER_API_KEY 4. Testar registro/login 5. Executar teste end-to-end ## 📝 Notas - Frontend é SPA React, serve via nginx - Backend é FastAPI async com PostgreSQL - Análise AI roda em background tasks - PR creation usa Gitea API - Webhooks bidirecional com TicketHub