Mengerjakan tiket
Jalur dari work item DEF07 sampai perubahan yang di-merge, khusus Exsport. Aturan seluruh perusahaan — commit, branch, pull request — ada di Standar. Halaman ini menambahkan apa yang khusus untuk produk multi-repo di bawah satu project Jira.
Cara halaman ini diverifikasi
Fakta repository dan branch dibaca dari remote pada 2026-09-15. Pemetaan Jira berasal dari skill exsport-repos dan component project-nya.
1. Temukan repo dari tiket
Setiap tiket DEF07 ada di satu project tetapi menyasar satu atau lebih repo. Dua sinyal memberi tahu yang mana:
- Component:
Backend,Storefront,Admin. - Awalan summary:
[BE],[Storefront],[Admin]di bug;(BE)/(FE)di requirement story, yang juga membawa kode requirement sepertiWEB-HP-00020.
| Sinyal | Repo |
|---|---|
| Backend | def-exsport-backend |
| Storefront | def-exsport-frontend-storefront |
| Admin | def-exsport-frontend-admin |
Satu tiket bisa membentang di banyak repo. Bug [BE][Storefront] membawa kedua component; perbaikannya pakai nama branch yang sama di tiap repo terdampak, dan tiap repo dapat set PR-nya sendiri. Jangan clone tiket per repo.
2. Periksa model branch
Baca dari remote, jangan dari ingatan:
git ls-remote --heads origin| Repo | Branch permanen | Artinya |
|---|---|---|
| backend, storefront, admin | main, staging, development | branch work-item dipotong dari origin/main, satu PR per target |
| webhook | main only | commit langsung di main, tanpa PR |
| simulator, data-migration, stresstest, pulumi | main only | sama, single-branch |
Tiga repo env-branch juga membawa feature branch lama yang panjang umur (vouchers, members, flash-sales, homepage, …) dan branch legacy ber-suffix -staging / -main. Jangan pernah membangun kerja di atasnya dan jangan pernah men-merge-nya. Aturan branch dan PR selebihnya ada di standar Git Workflow.
3. Reproduksi pada data nyata
.env backend menunjuk ke snapshot Postgres lokal; snapshot prod menyimpan data nyata. Lihat Setup lokal. Kalau pihak ketiga terlibat, ingat dev menunjuk ke simulator: "payment gagal di dev" mungkin cuma berarti simulasi error sedang menyala. Cek dashboard simulator sebelum men-debug backend.
4. Buat perubahannya
- Backend. Satu engine Postgres, plain SQL dan TypeORM aman. Tidak ada migrations: schema adalah file entity dengan
synchronize: true, jadi perubahan schema adalah perubahan pada*.model.ts. Read dan write tanpa file adalah GraphQL resolver; create/update dengan file upload adalah REST controller. Lihat API dan auth. - Frontend. Keduanya Next.js 15 App Router dengan Apollo Client dan NextAuth. Admin juga pakai axios untuk multipart upload. Ikuti layout per-domain di bawah
src/lib/<domain>/.
5. Commit, PR, deploy
Standar perusahaan berlaku: id tiket di subjek, awalan [target] di judul PR, merge biasa, branch work-item hidup sampai produksi. Hal khusus Exsport:
- Push ke sebuah branch otomatis men-deploy env itu lewat GitHub Actions di runner self-hosted
rumah.development→deploy/dev.sh,staging→deploy/staging.sh,main→deploy/prod.sh. Webhook itu single-branch dan selalu menjalankandeploy/prod.sh. Pantau run-nya di tab Actions repo; catatan Slack menyala di akhir. - Buktikan sudah live dengan mengecek bundle atau API yang tersaji saat itu penting — sebuah deploy bisa gagal bahkan setelah merge yang bersih.
- Gaya body PR di sini adalah Problem / Root cause / Fix / Testing. Tanpa footer atribusi.
- Jangan pernah menaruh key tiket lain di body PR atau commit, bahkan key sibling DEF07 — aplikasi GitHub for Jira akan menautkan PR ke tiket yang salah.
6. Sprint dan bahasa
- Selalu tambahkan item DEF07 baru ke sprint aktif — aturan tetap. Temukan dengan
project = DEF07 AND sprint in openSprints(). - Work item DEF07 ditulis dalam Bahasa Indonesia (istilah teknis Inggris tetap apa adanya), dengan heading bug Indonesia. Muat skill
jira-write-work-itemsebelum create atau edit apa pun. - Jangan pernah men-transition status work item. Eris yang memindahkan item sendiri.
7. Tuliskan
Kalau tiket mengubah sesuatu yang dijelaskan sebuah halaman hub, halaman itu bagian dari tiket — perbarui kedua locale dan naikkan last_verified. Panduan kontribusi punya template-nya. Untuk menemukan halaman yang tertinggal dari kode setelah perubahan, jalankan tool staleness (lihat skill update-docs).