1. Headline for everyone
369
Tables (structure)
351
Views
51
Stored procedures
6
Functions
5
portal_*_lesotho tables
~83%
Table-name overlap vs Botswana
2. What we analysed
| Layer | Evidence | Status |
|---|---|---|
| Older Lesotho CMS (SoR extract) | Vara Drive pack 5 Oct — tables / views / procs structure only | Inventoried |
| Newer Lesotho CMS (feature bar) | Screenshots only (staging has live student data) | UX benchmark |
| Raisd Schema v3 + Portal API | Demo records; CMS stub | Demo |
| Frontend (SDD-11) | Student deepest Demo; applicant + staff Not started; Live = 0 | FE gap |
Dump SQL / PHP / credentials stay under local _local/ — never committed. Published artefacts are names, field maps, and gap matrices only.
3. Key technical results
CAP-53 (CMS ↔ Portal API)
- Hooks exist (Botswana-class, not Sierra Leone greenfield): 5 ×
portal_student_*_lesotho+ 6 ×api_student_*/api_faculty_*SPs. - Campus key fits
LESOTHO(Campus varchar(7)). - Phase R1 read mapping documented → student
get*methods. - Writes still open: WG must decide adapter-to-old-CMS vs Schema cutover.
- Blocked for code — need private MySQL / integration replica for
portal-apilesothoRead.
NMDS (government sponsorship) ≠ Botswana DTEF
- Old CMS uses assist provider
nmds/NMDS+ borrower-likeAssistStdAcc. - Term billing via
b_assistbilling*(bill nos likeLSO/{YYMM}/…) — internal, not a TEF.gov POST. - Do not reuse Botswana DTEF /
tef.gov.bwclient. - National NMDS HTTP API still unproven (may live only in newer CMS).
- Config debt: assist
BillCurrencystill RM/USD — Raisd must use LSL / M.
Admissions / flows (schema × FE)
- 3-step review has physical columns:
Faculty*→AQA*→Registry*onapp_applicationform. - Rank / overall score seen in newer UI — not in old application table columns (confirm with campus).
- LGCSE: flat education subjects + document tables; need campus extract model (Sesotho).
- Online enrolment path:
online_enrollment+ payment verification SPs.
4. Gap rollup vs Raisd today
| Flow | Old schema | Raisd FE | Severity |
|---|---|---|---|
| Admissions apply + 3-step | app_* + Faculty/AQA/Registry | Not started | Blocker |
| Term registration | online_enrollment + confirm SPs | Student Demo | Blocker |
| NMDS awards | nmds + billing | Student Demo | Blocker |
| CAP-53 writes / SoR path | SoR desks vs Schema TBD | Partial FE | Blocker |
| LGCSE / LSL finance / clearance / SoR print | Present, campus-shaped | Mostly Demo / Not started | High |
| EMGS / thick accommodation / FiveDays LMS | Present or external | — | Out of M4 |
5. Suggested next cut (M4)
- Grant Portal API read access to Lesotho integration MySQL → implement
lesothoRead. - Applicant CAP-02/03 + LSL fee verification + LGCSE extract model.
- Staff admissions Faculty → AQA → Registry.
- CAP-10 registration writes + CMS side-effect tests.
- CAP-48 NMDS scheme seed · CAP-15 clearance · CAP-45–47 finance.
- Staff portal shell + positions RBAC.
Asks for the Working Group:
(1) Private read access to
campus2_lesotho for Portal API integration ·
(2) Confirm Live SoR path (old CMS adapter vs Schema v3) ·
(3) Confirm whether newer CMS / government exposes an NMDS HTTP API ·
(4) Confirm rank/score persistence for admissions parity.
6. Where to read more
| Artefact | Link |
|---|---|
| Diagram hub (Pages) | raisd-campus.github.io/…/old-cms-lesotho/ |
| Schema × FE × flows + field passes | lesotho-db-gap.md |
| CAP-53 Phase R1 read adapter | lesotho-cap53-read-adapter.md |
| UI inventory + CAP seed | old-cms-lesotho.md |
| Pilot framing | lesotho-pilot.md |
| Object catalogs (names only) | CATALOG.md |
| Botswana DTEF (contrast only) | botswana-dtef-scholarship-sync.md |