Lewati ke isi

Runbook Operasional & Rollback Checklist

Scope: Akademik > Master Data + Akademik > Jadwal & Kelas (admin sidebar)
Tanggal: 2026-02-26

1) Release Gate

Jalankan command berikut sebelum deploy:

npm run release-gate:academic-admin

Command ini menjalankan:

  1. npm run lint:phase4:academic-admin
  2. npm run test:phase4:academic-admin

Exit code harus 0.

2) Observability Baseline

Service: src/services/observability/academicObservability.service.js

Event utama:

  1. capability_denied: deny action write berbasis capability *.manage.
  2. write_ops: write success/failure/conflict untuk method create, web_save, write, unlink.
  3. rpc_ops: latency/error untuk seluruh call RPC akademik.

Feature flag:

  1. academic_phase4_observability (src/config/featureFlags.js)

3) KPI Operasional

Sumber: metrics dari snapshot observability akademik.

  1. write_error_rate (%): write_ops.failed / write_ops.total
  2. write_conflict_rate (%): write_ops.conflict / write_ops.total
  3. denied_capability_events: capability_denied.total
  4. rpc_avg_latency_ms: rpc_ops.total_duration_ms / rpc_ops.total
  5. rpc_p95_latency_ms: p95 dari rpc_ops.recent[].duration_ms

Threshold awal (dapat disesuaikan setelah baseline data):

  1. write_error_rate > 3% (warning), > 7% (critical)
  2. write_conflict_rate > 5% (warning), > 10% (critical)
  3. rpc_avg_latency_ms > 1200 (warning), > 2500 (critical)
  4. rpc_p95_latency_ms > 2500 (warning), > 4000 (critical)

4) Prosedur Monitoring Harian

  1. Buka dashboard reliability akademik:
  2. admin: /admin/analytics/academic-reliability
  3. principal: /principal/analytics/academic-reliability
  4. Jalankan Refresh Backend, lalu validasi fallback dengan Local Snapshot bila endpoint summary belum tersedia.
  5. Gunakan Sync Now dan Flush Queue jika ada antrean payload sinkronisasi.
  6. Validasi tren 24 jam terakhir untuk KPI di atas.
  7. Jika anomali, cek recent events pada write_ops dan capability_denied untuk model/metode yang dominan.

5) Prosedur Incident

  1. Identifikasi model/metode terdampak dari write_ops.recent.
  2. Jika dominan conflict (bentrok/overlap), verifikasi integritas jadwal (op.session, scola.lesson.hours).
  3. Jika dominan deny, verifikasi role/capability assignment (*.view vs *.manage).
  4. Jika dominan latency/error RPC, verifikasi endpoint backend observability dan performa /web/dataset/call_kw.

6) Rollback Checklist

  1. Nonaktifkan observability akademik sementara jika berdampak:
  2. set academic_phase4_observability = false via feature flag backend.
  3. Pastikan modul tetap operasional dengan fitur bisnis inti (CRUD) tetap berjalan.
  4. Revert commit terakhir terkait rollout jika dibutuhkan (non-destructive, via revert commit).
  5. Jalankan ulang gate:
npm run release-gate:academic-admin
  1. Validasi smoke flow minimal:
  2. create/update/delete pada minimal 1 entitas master data,
  3. create/update/delete sesi jadwal,
  4. create/update/delete jam pelajaran.

7) Artefak Referensi

  1. Implementation plan: docs/implementation/Academic/ADMIN_AKADEMIK_MASTER_DATA_DAN_JADWAL_KELAS_REGULASI_BEST_PRACTICE_IMPLEMENTATION_PLAN_2026-02-26.md
  2. Phase 4 release readiness tests:
  3. tests/menu/adminAcademicMasterDataSchedulePhase4ReleaseReadiness.spec.js
  4. tests/unit/services/academicObservability.spec.js