Inventaris Paket Professional — Production Readiness
SSOT mapping domain, modul backend, route frontend, API, dan role untuk paket Professional (SC-CORE + SC-LEARN + SC-ASSESS + SC-LIB).
Last verified: 2026-06-11
Mode kerja: Server
Workspace: /home/scola/odoo
1. Bundle & Entitlement
| SKU |
Bundle Odoo |
Feature flags utama |
| SC-CORE |
scola_bundle_core |
scola_spmb |
| SC-LEARN |
scola_bundle_learning |
scola_lms |
| SC-ASSESS |
scola_bundle_assessment |
scola_cbt |
| SC-LIB |
scola_bundle_library |
scola_library |
Backend modules (Professional):
scola_core, scola_parent, scola_portal, scola_news, scola_lesson_hours, scola_timetable, scola_fees, scola_assessment_bridge, scola_report_card, scola_admission, scola_attendance, scola_lms, scola_cbt, scola_library, scola_admission_assessment (jika SPMB+CBT admission aktif)
Di luar scope Professional: scola_account, scola_inventory, scola_hr, scola_payroll, scola_smart_attendance, scola_dapodik_*, scola_counseling, scola_foundation_analytics
2. Mapping Domain → Modul → Portal
| Domain |
Backend modules |
Portal FE |
Role utama |
| User & Data Siswa-Ortu |
scola_core, scola_parent, scola_identity_admin |
Admin, Staff TU |
admin, head_admin, admin_staff |
| Akademik & Rapor |
scola_core, scola_timetable, scola_lesson_hours, scola_report_card, scola_assessment_bridge |
Admin, Teacher, Principal, Student, Parent |
Semua role akademik |
| Absensi (manual) |
scola_attendance |
Admin, Teacher, Parent, Student |
admin_staff, teacher, homeroom, parent, student |
| SPMB |
scola_admission, scola_admission_assessment |
/spmb/*, Admin SPMB |
Publik, pendaftar, admin, admin_staff |
| Keuangan dasar (SPP) |
scola_fees |
Admin payment, Parent, Student |
treasurer, admin_staff, parent, student |
| LMS |
scola_lms |
/faculty/lms/*, /student/lms/*, /parent/lms/* |
teacher, student, parent, admin |
| CBT |
scola_cbt |
/admin/cbt/*, /faculty/cbt/*, /student/cbt/*, /spmb/cbt/* |
teacher, student, admin |
| Perpustakaan |
scola_library |
/librarian/*, /library/* |
librarian, student, parent |
| Komunikasi |
scola_portal, scola_news |
/news, /announcement, /messaging, /notifications |
Semua role |
3. Route Kunci per Domain
User & Data Siswa-Ortu
| Path |
View |
Role |
/admin/users |
AdminViews/User/UserList.vue |
admin |
/admin/users/audit-log |
AdminViews/User/UserAuditLog.vue |
admin |
/students, /students/create, /students/:id |
AdminViews/StudentDatabase/* |
admin, admin_staff |
/admin-staff/students/list |
AdminViews/StudentDatabase/DaftarSiswa.vue |
admin_staff |
/admin-staff/parents/list |
AdminViews/ParentDatabase/ListOrtu.vue |
admin_staff |
/teachers, /teachers/create |
AdminViews/TeacherDatabase/* |
admin, admin_staff |
Akademik & Rapor
| Path |
View |
Role |
/academic-year, /schedule, /subjects |
AdminViews/AcademicConfig/* |
admin, admin_staff |
/admin/report-card, /admin/p5, /admin/promotion |
ReportCardManagement/Admin/* |
admin |
/faculty/report-card/* |
ReportCardManagement/Faculty/* |
teacher, homeroom |
/student/report-card/* |
ReportCardManagement/Student/* |
student |
/parent/report-cards |
ReportCardManagement/Parent/raportList.vue |
parent |
Absensi
| Path |
View |
Role |
/attendance/daily, /attendance/sheets |
AttendanceManagement/Admin/* |
admin_staff |
/faculty/attendance |
AttendanceManagement/Faculty/Attendance.vue |
teacher |
/parent/attendance |
AttendanceManagement/Parent/Attendance.vue |
parent |
/student/attendance |
AttendanceManagement/Student/Attendance.vue |
student |
SPMB
| Path |
View |
Role |
/spmb, /spmb/register |
AdmissionManagement/Public/* |
publik |
/spmb/admission/:id |
SPMBAdmissionDetail.vue |
pendaftar |
/admin/spmb/dashboard |
AdmissionManagement/* |
admin, admin_staff |
Keuangan (SPP)
| Path |
View |
Role |
/payment/templates, /payment/enrollment |
AdminViews/PaymentConfig/*, AcademicConfig/Fees/* |
admin, treasurer |
/parent/finance, /parent/payment/:id |
ParentViews/SPP/* |
parent |
/student/billing |
StudentViews/Finance/StudentBilling.vue |
student |
LMS
| Path |
View |
Role |
/admin/lms/settings, /admin/lms/overview |
LearningManagement/Admin/* |
admin |
/faculty/lms/* |
LearningManagement/Faculty/* |
teacher |
/student/lms/* |
LearningManagement/Student/* |
student |
CBT
| Path |
View |
Role |
/admin/cbt/settings |
AdminViews/CBT/* |
admin |
/faculty/cbt/exams/* |
ExamManagement/Faculty/* |
teacher |
/student/cbt/runner/:exam_id |
StudentViews/CBT/* |
student |
/cbt/public |
ExamManagement/Public/CBTPublicStart.vue |
publik |
Perpustakaan
| Path |
View |
Role |
/librarian/dashboard |
LibraryManagement/* |
librarian |
/library/catalog, /library/loans |
Library/* |
student, parent |
Komunikasi
| Path |
View |
Role |
/news, /news/detail/:newsId |
NewsList.vue, NewsDetail.vue |
semua |
/announcement, /messaging |
AnnouncementList.vue, Messaging.vue |
semua |
/admin/news/* |
AdminViews/News/* |
admin |
4. API Surface per Domain
Referensi lengkap: custom_addons_scola/gcgscola/API_ENDPOINTS_COMPLETE.md (di repo backend, tidak di-build ke portal)
| Domain |
Prefix API utama |
Controller module |
| Auth & User |
/api/auth/*, /api/v1/users/* |
scola_core, scola_identity_admin |
| Akademik |
/api/v1/academic/*, /api/v1/timetable/* |
scola_core, scola_timetable |
| Rapor |
/api/v1/report-card/* |
scola_report_card |
| Absensi |
/api/v1/attendance/* |
scola_attendance |
| SPMB |
/api/SPMB/* |
scola_admission |
| Keuangan |
/api/v1/fees/*, /api/v1/parent/billing/* |
scola_fees |
| LMS |
/api/v1/lms/* |
scola_lms |
| CBT |
/api/v1/cbt/* |
scola_cbt |
| Perpustakaan |
/api/v1/library/* |
scola_library |
| Portal |
/api/v1/portal/*, /api/v1/news/* |
scola_portal, scola_news |
5. Status Dokumentasi (Baseline 2026-06-11)
| Artefak |
Status |
| Domain README L2 (9 domain P0) |
Ada, perlu §7–§8 |
| User guide per-role (13 file) |
Dibuat di Fase 2 |
| Audit production-readiness |
Dibuat di Fase 3 |
| Backend module README Professional |
Dibuat di gcgscola/docs/modules/ |
| Konfigurasi implementor L3 |
docs/operations/configuration-guides/ |
6. Verifikasi Modul Ter-install
Jalankan di server Odoo untuk environment klien:
# Daftar modul Scola ter-install
psql -d <DB_KLIEN> -c "
SELECT name, state FROM ir_module_module
WHERE name LIKE 'scola_%' AND state = 'installed'
ORDER BY name;
"
# Verifikasi bundle Professional minimum
python3 custom_addons_scola/gcgscola/scripts/modular/package_support.py transition \
--tier professional \
--addons SC-CORE,SC-LEARN,SC-ASSESS,SC-LIB