π§ Phase 2 β Core Recognition & Attendance
Membuat netra benar-benar menjalankan fungsi intinya: absensi berbasis face recognition (di atas fondasi Phase 1, #1).
β
Sudah selesai (MVP core loop β diverifikasi, 21 test hijau)
βοΈ Sisa Phase 2 (belum)
Catatan teknis
Loop inti diuji penuh dengan FakeFaceEngine (tanpa model berat). Engine produksi tinggal FACE_ENGINE=insightface + uv sync --extra recognition. Semua perubahan ada di commit lokal 7ac6caa (branch feat/phase-1-foundation, belum di-push).
π§ Phase 2 β Core Recognition & Attendance
Membuat netra benar-benar menjalankan fungsi intinya: absensi berbasis face recognition (di atas fondasi Phase 1, #1).
β Sudah selesai (MVP core loop β diverifikasi, 21 test hijau)
app/services/face/) βFakeFaceEnginedeterministik (dev/test, tanpa ML) + adapter InsightFacebuffalo_s/ ONNX Runtime di balik interface yang sama (extra opsionalrecognition). Dipilih viaFACE_ENGINE.POST /enrollmentβ consent-gated (UU PDP), hitung & simpan embedding ArcFace 512-d, setuser.enrolled.POST /attendance/checkin|checkout(kiosk viaX-Device-Token) β recognize β catat dengan statuson_time/late/early_leavedari jadwal default tenant (jam kerja + grace);liveness_scoreditangkap.POST|GET /schedulesβ aturan absensi per-tenant (data-driven).GET /attendance+ audit trail penuh.βοΈ Sisa Phase 2 (belum)
Catatan teknis
Loop inti diuji penuh dengan
FakeFaceEngine(tanpa model berat). Engine produksi tinggalFACE_ENGINE=insightface+uv sync --extra recognition. Semua perubahan ada di commit lokal7ac6caa(branchfeat/phase-1-foundation, belum di-push).