[{"data":1,"prerenderedAt":184},["ShallowReactive",2],{"\u002Fid\u002Fdocs\u002Fintegrations\u002Fjira":3},{"id":4,"title":5,"body":6,"description":176,"extension":177,"meta":178,"navigation":179,"path":180,"seo":181,"stem":182,"__hash__":183},"docs\u002Fid\u002Fdocs\u002Fintegrations\u002Fjira.md","Jira",{"type":7,"value":8,"toc":168},"minimark",[9,19,24,49,53,56,86,96,100,103,155,158,162],[10,11,12,13,18],"p",{},"Sama seperti Linear, CAF Orchestrator memantau perubahan status ticket di Jira lewat\nwebhook. Halaman ini melengkapi setup dasar di ",[14,15,17],"a",{"href":16},"\u002Fid\u002Fdocs\u002Fcaf-orchestrator","CAF Orchestrator","\ndengan langkah spesifik untuk Jira.",[20,21,23],"h2",{"id":22},"_1-buat-api-token","1. Buat API token",[10,25,26,27,31,32,36,37,40,41,44,45,48],{},"Di Jira, buka ",[28,29,30],"strong",{},"Account Settings → Security → API tokens",", buat token baru. Isi ke\n",[33,34,35],"code",{},".env"," orchestrator sebagai ",[33,38,39],{},"JIRA_API_TOKEN",", bersama ",[33,42,43],{},"JIRA_EMAIL"," dan ",[33,46,47],{},"JIRA_BASE_URL","\nakun yang dipakai.",[20,50,52],{"id":51},"_2-daftarkan-webhook","2. Daftarkan webhook",[10,54,55],{},"Webhook Jira dikonfigurasi di level project atau instance, tergantung paket Jira kamu:",[57,58,59,73],"ul",{},[60,61,62,65,66,69,70],"li",{},[28,63,64],{},"Jira Cloud",": gunakan fitur Automation (",[28,67,68],{},"Project settings → Automation","), buat\nrule dengan trigger \"Issue transitioned\" yang mengirim web request ke\n",[33,71,72],{},"https:\u002F\u002F\u003Chost-vps-kamu>\u002Fwebhooks\u002Fjira",[60,74,75,78,79,82,83],{},[28,76,77],{},"Jira Data Center\u002FServer",": daftarkan lewat ",[28,80,81],{},"System → WebHooks"," dengan event\n",[33,84,85],{},"Issue: updated",[10,87,88,89,92,93,95],{},"Sertakan header dengan secret yang sama dengan ",[33,90,91],{},"WEBHOOK_SECRET"," di ",[33,94,35],{}," orchestrator\nsupaya payload bisa diverifikasi.",[20,97,99],{"id":98},"_3-sepakati-mapping-status","3. Sepakati mapping status",[10,101,102],{},"Sama seperti Linear, orchestrator trigger fase berdasarkan status ticket:",[104,105,106,119],"table",{},[107,108,109],"thead",{},[110,111,112,116],"tr",{},[113,114,115],"th",{},"Status Jira",[113,117,118],{},"Fase yang di-trigger",[120,121,122,131,139,147],"tbody",{},[110,123,124,128],{},[125,126,127],"td",{},"Ready for Plan",[125,129,130],{},"Plan",[110,132,133,136],{},[125,134,135],{},"Ready for Implement",[125,137,138],{},"Implement",[110,140,141,144],{},[125,142,143],{},"Ready for Verify",[125,145,146],{},"Verify",[110,148,149,152],{},[125,150,151],{},"In Review",[125,153,154],{},"Menunggu human review (tidak ada trigger otomatis)",[10,156,157],{},"Sesuaikan nama status dengan workflow Jira kamu — ini konvensi, bukan nilai yang\ndi-hardcode di orchestrator.",[20,159,161],{"id":160},"yang-terjadi-setelah-webhook-diterima","Yang terjadi setelah webhook diterima",[10,163,164,165,167],{},"Alurnya identik dengan Linear: payload diverifikasi, job masuk antrian BullMQ, lalu\nagent Claude Code headless untuk fase itu dijalankan. Lihat\n",[14,166,17],{"href":16}," untuk detail lengkapnya.",{"title":169,"searchDepth":170,"depth":170,"links":171},"",2,[172,173,174,175],{"id":22,"depth":170,"text":23},{"id":51,"depth":170,"text":52},{"id":98,"depth":170,"text":99},{"id":160,"depth":170,"text":161},"Hubungkan CAF Orchestrator ke Jira supaya pipeline trigger otomatis dari status ticket.","md",{},true,"\u002Fid\u002Fdocs\u002Fintegrations\u002Fjira",{"title":5,"description":176},"id\u002Fdocs\u002Fintegrations\u002Fjira","FFwtoZjsAX6C9K34l6rFuHe2FZe96uxvhVSvL-VeO_s",1787621084174]