Lesotho CMS — pilot feature analysis
Pilot project campus for Raisd (Working Group, 3 Oct 2026). Reverse-engineered from Faid’s newer Admin / Student CMS screenshots (WhatsApp Working Group CMS 2026). No DB dump yet — this page is a capability / flow analysis, not a physical ERD. Old CMS family tree ≈ Botswana / Cyberjaya (Vara).
campus2_lesotho measured (369 / 351 / 51 / 6). CAP-53 R1 read mapping ready;
Portal API code needs private MySQL. NMDS ≠ DTEF. Share pack:
Lesotho CMS analysis briefing
(HTML/PDF + WhatsApp paste) · detail
§12 Schema × FE × flows ·
lesotho-db-gap.md.
1. Why Lesotho is the pilot
Source: Read.ai summary of the Working Group weekly meeting (email, Sat 3 Oct 2026) + WhatsApp follow-up the same day.
flowchart TB SP[Sponsor directive
Lesotho-first + weekly %] RV[Revenue / adoption
priority campus] GOV[Government requirements
NMDS · LGCSE · fees] BEN[Newer CMS = feature
benchmark / parity bar] MIG[Migration SoT =
Raisd schema + Lesotho materials] PILOT[M4 Lesotho pilot
acceptance] SP --> PILOT RV --> PILOT GOV --> PILOT BEN --> PILOT MIG --> PILOT PILOT --> M5[M5 expansion
Cyberjaya · Eswatini · BW · SL]
| Driver | Implication for Raisd |
|---|---|
| Sponsor Lesotho-first | Acceptance gate moves from Cyberjaya to Lesotho (M4) |
| Revenue / adoption | Demonstrate government-ready journeys before multi-campus push |
| Parity with newer CMS | Screenshot checklist seeds staff + applicant + student scope |
| No shareable new schema | Reverse-engineer UX/capabilities; wait for old dump + sanitised blueprint |
| Parallel campuses | Do not freeze Cyberjaya / BW / SL inventory work — they stay M5 |
2. Two Lesotho systems
Campus already runs a newer Admin + Student CMS while extracting data from the older LUCT-family CMS.
flowchart LR OLD[Older LUCT CMS
campus2_lesotho
369 tables · ≈ BW] NEW[Newer Lesotho CMS
Admin + Student
screenshots only] RAISD[Raisd portals
via Portal API] SCHEMA[Raisd Schema v3
+ Lesotho materials] OLD -->|data extract| NEW NEW -->|feature benchmark| RAISD OLD -.->|adapter when dump lands| RAISD SCHEMA --> RAISD
3. Feature map (newer CMS)
Surfaces observed in the 3 Oct screenshot pack — not a claim of Raisd Live.
mindmap
root((Lesotho newer CMS))
Registry
Students ~22k
Registration
Graduations
Clearance queue
Remark requests
Referrals
Curriculum schools
Admissions
Review 3-step
Applicants
Document review
Payments Loti
Intake settings
Pricing
Faculty
Modules
Attendance
Assessment types
Timetable / venues
FiveDays LMS link
Admin
Users
Positions RBAC
Calendars
Notifications
Activity tracker
Student portal
Registration
Curriculum
Finance
Assessments
Timetable
Results
4. Admissions flow
January 2026 intake sample: rank + score, LGCSE document extract (incl. Sesotho), Academic → QA → Registrar recommendations, payment verified in M (Loti).
flowchart TB APP[Applicant record
program · score · rank] DOC[Document Review
LGCSE scan + extract] REV[Admissions Review] AC[Academic recommend] QA[QA recommend] REG[Registrar recommend] PAY[Admissions payment
VERIFIED · Loti] ACC[Accepted / enrolled] APP --> DOC APP --> REV DOC --> REV REV --> AC --> QA --> REG PAY --> ACC REG --> ACC
- Review analytics: Pending / Recommended / Not Recommended; applications by school (FBMG, FICT, FABE, FCM, FFLD).
- Document Review queue was large in the sample (~3945) — evidence-heavy admissions.
- Applicant detail tabs: Overview · Academic Records · Documents · Notes & Comments · History.
5. Registry, academics, card, NMDS
flowchart LR LIST[Student master list] PROF[Profile · Student tab] ACAD[Academics
GPA / CGPA / modules] PRINT[Statement of Results
signature · stamp · QR] CARD[Student Card
photo · LUCT LESOTHO] NMDS[Sponsors · NMDS
borrower · terms] LIST --> PROF LIST --> ACAD ACAD --> PRINT LIST --> CARD LIST --> NMDS
- Academics: term blocks with Cr / Mk / Gd; Drop vs Compulsory; outstanding modules on Programme Summary.
- Card: upload / camera; print history; campus return text for Lesotho Campus.
- NMDS: government sponsorship — old CMS uses assist provider
nmds+AssistStdAcc(borrower-like), not Botswana TEF POST.
6. Graduation clearance
Large clearance queue; multi-department gates before ceremony.
flowchart TB
Q[Graduation Clearance queue]
W[Wizard step e.g. Ceremony]
A[Academic clearance]
F[Finance clearance]
DEC{Staff Approve / Reject}
MSG[Message e.g. gown / fee]
Q --> W
W --> A
W --> F
A --> DEC
F --> DEC
DEC --> MSG
7. Student portal
Dark card-grid home; registration history by term (Aug 2023 → Feb 2026 sample).
flowchart TB HOME[Home
program · year · CGPA · modules] HOME --> REG[Registration] HOME --> CUR[Curriculum] HOME --> FIN[Finance] HOME --> ASM[Assessments] HOME --> TT[Timetable] HOME --> RES[Results]
8. Positions / RBAC
~23 positions (Library HOD, Registrar, Registry HOD, Faculty Manager, Program Leader, Marketing Staff, …). Permissions are module-scoped with Read / Create / Update / Delete (e.g. Registry Students Read-only vs Student Notes full CRUD).
9. CAP seed for pilot parity
Full table in old-cms-lesotho.md. Highlight for M2–M4:
| Lesotho newer CMS | Raisd CAP focus | Pilot bar |
|---|---|---|
| Admissions + LGCSE + Loti pay | CAP-02–05 · CAP-45/46 | Applicant/staff Not started |
| Term registration | CAP-10 | Student Demo → Live |
| Timetable / attendance / results / SoR | CAP-11–15 | Student Demo; staff Not started |
| Graduation clearance | CAP-15 | Multi-dept + fee gate |
| Fees / proof / online pay | CAP-45–47 | Demo / Placeholder |
| NMDS sponsors | CAP-48 | assist nmds + AssistStdAcc |
| Remark / referrals | CAP-51 | Student Demo; staff Not started |
| CMS adapter / SoR path | CAP-53 | portal_* + api_*; writes TBC |
10. Campus comparison (role)
flowchart LR LS["Lesotho
M4 pilot · screenshot SoT
NMDS · LGCSE"] CY["Cyberjaya
richest dump · M5
cmscbj"] BW["Botswana
M5 · DTEF/TEF
≈ old Lesotho family"] SL["Sierra Leone
M5 · EMS pattern"] LS -->|acceptance first| RAISD[Raisd Portals] CY -.-> RAISD BW -.->|family tree hint| LS SL -.-> RAISD
- Cyberjaya E2E hub — technical SoR inventory for LUCT PHPMaker.
- Botswana E2E hub — closest old-CMS cousin + DTEF gov sync pattern.
- Sierra Leone E2E hub — EMS sibling for M5.
- Migration M4 — Lesotho pilot.
- Database gap analysis — measured old dump + CAP-53 / NMDS field pass.
11. Database difference / gap
Old CMS structure dump received (Vara, 5 Oct 2026): schema
campus2_lesotho — 369 tables · 351 views ·
51 procs · 6 functions (dump stays local, never in git).
Newer CMS schema still unavailable (live student data). Compare to Botswana
(713) / Cyberjaya (~1,942) / Raisd Schema v3 (~95 collections).
Full write-up:
lesotho-db-gap.md
· CAP-53 R1 reads:
lesotho-cap53-read-adapter.md
(mapping ready; portal-api code blocked on private MySQL access).
campus2_lesotho structure measured (369 tables). Logical ERD names
below are newer-CMS UI concepts — physical CAP-53 / NMDS names are in
lesotho-db-gap.md.
flowchart LR A["A Newer Lesotho CMS
screenshot SoT · no DB"] B["B Older Lesotho CMS
campus2_lesotho · 369"] C["C Raisd Schema v3
Postgres Demo · 95 cols"] A -->|UX / CAP seed| GAP[Gap matrix] B -->|CAP-53 portal_* · nmds assist| GAP C -->|pilot write path| GAP BW["cmsbotswana
713 · DTEF"] -.->|~83% name overlap| B CY["cmscbj
~1942"] -.->|richest LUCT| B GAP --> BLOCK["Blockers
SoR path · NMDS API?"]
Probed logical shape (newer CMS)
erDiagram
STUDENT_PROFILE ||--o{ PROGRAMME_ENROLMENT : has
PROGRAMME_ENROLMENT ||--o{ STUDY_PERIOD : spans
STUDY_PERIOD ||--o{ MODULE_REGISTRATION : contains
PROGRAMME_ENROLMENT ||--o{ FUNDING_AWARD : sponsored
FUNDING_AWARD ||--o{ FUNDING_TERM : covers
PROGRAMME_ENROLMENT ||--o{ GRADUATION_REQUEST : may
GRADUATION_REQUEST ||--o{ CLEARANCE_GATE : needs
APPLICANT ||--o{ APPLICATION : submits
APPLICATION ||--o{ QUALIFICATION : shows
QUALIFICATION ||--o{ SUBJECT_GRADE : lists
APPLICATION ||--o{ REVIEW_DECISION : advances
APPLICATION ||--o{ APPLICATION_PAYMENT : pays
STAFF_USER ||--o{ POSITION : holds
POSITION ||--o{ POSITION_PERMISSION : grants
| Signal | Cyberjaya | Botswana | Lesotho (probed) |
|---|---|---|---|
| Tables | ~1,942 | 713 | 369 (campus2_lesotho) |
| Gov sponsorship | Assist only | DTEF → tef.gov.bw | NMDS = assist nmds + AssistStdAcc (no TEF POST) |
| School leaving | CDU / EMGS path | Local docs | LGCSE + Sesotho + certificate # |
| Currency | MYR | BWP | LSL / M (provider BillCurrency still RM/USD leftover) |
| Admissions workflow | app_* desks | app_* (21) | app_* (13) + newer UI rank/score · Academic→QA→Registrar |
| Portal hooks | portal_*_cyberjaya | portal_*_botswana (6) | portal_student_*_lesotho (5) + api_student_* SPs |
| Immigration / EMGS | Heavy w_* | Welfare / visa | Not in pack — out of M4 default |
Gaps vs Raisd Schema v3 Demo (today)
- NMDS ≠ DTEF — map
nmds/AssistStdAcc/ term bills; no TEF client. - LGCSE extract — subject/grade rows + Sesotho + Examinations Council metadata.
- 3-step admissions + rank/score — richer than thin applicant Demo.
- Graduation clearance — multi-dept gates + gown/grad fee precondition.
- LSL finance + SoR print/QR — campus currency + staff deliverable.
- CAP-53 write path — reads mapped; Live SoR (old CMS vs Schema) still WG.
12. Schema × frontend × flows (M4)
Cross-cut of newer CMS UX, old campus2_lesotho schema, Raisd Schema v3,
and SDD-11 FE status. Full matrices:
lesotho-db-gap.md § M4 gap analysis.
Live = 0 everywhere.
flowchart TB
subgraph B["B Old schema"]
APP["app_* · Faculty/AQA/Registry"]
REG["r_std* · online_enrollment"]
NMDS["nmds assist · AssistStdAcc"]
PORT["portal_*_lesotho · api_*"]
end
subgraph C["C Raisd"]
SCH["Schema v3"]
API["Portal API Demo · CMS stub"]
FE["Student Demo · App/Staff NS"]
end
APP -->|CAP-02–05| FE
REG -->|CAP-10| FE
NMDS -->|CAP-48| FE
PORT -->|CAP-53 reads| API
API --> SCH
FE -.->|Live gap| BLOCK["Blockers: SoR path · staff/applicant FE · NMDS API?"]
| Flow | Old schema | Raisd FE | Severity |
|---|---|---|---|
| Admissions apply + 3-step | app_* + Faculty/AQA/Registry statuses | Not started | B |
| Rank / score | Not in old app cols (newer UI) | Not started | H |
| LGCSE extract | Flat education subjects + docfile | Not started | H |
| Term registration | online_enrollment + confirm SP | Student Demo | B |
| NMDS | nmds + billing (no TEF) | Student Demo | B |
| Finance LSL | b_payment* · RM leftover on assist | Demo / Placeholder | H |
| Graduation wizard | gown/clearance cols; UI richer | Student Demo | H |
| CAP-53 writes | SoR desks / Schema TBD | Partial FE | B |
Suggested M4 cut order
- CAP-53 reads (portal + api_*) · campus
LESOTHO— mapping ready; catalogs in CATALOG.md - Applicant CAP-02/03 + LSL fee + LGCSE model
- Staff admissions Faculty → AQA → Registry
- CAP-10 registration writes + side effects
- CAP-48 NMDS seed · CAP-15 clearance · CAP-45–47 finance
- Staff portal shell + positions RBAC