T1-B Core Capability Parity
Prinsip
- Bounded Core only — optional mismatch = residual, bukan hard fail.
- FE UX, BE otoritatif.
- Fail closed untuk alias, entitlement OFF, DECISION_REQUIRED, placeholder.
- W01/W02/W05 tidak disertifikasi.
Ringkasan perbaikan Core (T1-B)
| Area |
Sebelum (T1-A) |
Sesudah |
/api/dashboard/stats |
users.profile.view |
dashboard.operations.view |
| Teacher dashboard API |
MISSING_BE_CONTRACT (catch-all profile) |
/api/v1/teacher/dashboard → academics.dashboard.view |
| Student dashboard API |
MISSING_BE_CONTRACT |
/api/v1/student/dashboard → students.dashboard.view |
| Parent dashboard API |
portal/home mix |
/api/v1/parent/dashboard → parents.dashboard.view; shell tetap parents.portal.view |
| Attendance app capability |
settings.attendance.view |
students.attendance.view (= hub leaf) |
| Attendance role bleed |
pickup/lab/VP/dll di allowlist |
Core allowlist: admin, school_admin, principal, head_admin, admin_staff, teacher, homeroom |
| Action attendance |
.edit |
.update (DEC-003) |
| Teacher/student/parent home |
menu/ROLE_HOME alias |
kanonis /faculty|student|parent/dashboard |
Tabel denominator (status)
| surface_id |
menu = router = BE |
DEC-003 |
Classification |
| core.admin.dashboard |
Ya |
view |
PARITY |
| core.teacher.dashboard |
Ya |
view |
PARITY |
| core.student.dashboard |
Ya |
view |
PARITY |
| core.parent.dashboard |
Ya (page); shell portal terpisah |
view |
PARITY |
| core.students.list |
Ya |
view |
PARITY (W02 uncertified) |
| core.academic_year |
Ya |
view |
PARITY (W01 uncertified) |
| core.schedule |
Ya |
view |
PARITY (W01 uncertified) |
| core.attendance.home |
Ya (+ app cap) |
view |
PARITY (W05 uncertified) |
| core.attendance.daily |
Ya |
update |
PARITY vocab only (W05 uncertified) |
| core.news |
Ya |
view |
PARITY |
| core.calendar |
Ya |
view |
PARITY |
| core.settings.company |
Ya |
view |
PARITY |
| core.admin.users |
Ya |
manage |
PARITY |
Hard findings
check:core-parity → 0 hard findings (lihat evidence JSON).
Explicit non-claims
- Optional package capability exact parity tidak di-close.
- W01/W02/W05 business workflows NOT CERTIFIED.