Skip to content

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 seperti WEB-HP-00020.
SinyalRepo
Backenddef-exsport-backend
Storefrontdef-exsport-frontend-storefront
Admindef-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:

bash
git ls-remote --heads origin
RepoBranch permanenArtinya
backend, storefront, adminmain, staging, developmentbranch work-item dipotong dari origin/main, satu PR per target
webhookmain onlycommit langsung di main, tanpa PR
simulator, data-migration, stresstest, pulumimain onlysama, 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. developmentdeploy/dev.sh, stagingdeploy/staging.sh, maindeploy/prod.sh. Webhook itu single-branch dan selalu menjalankan deploy/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-item sebelum 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).