2026-03-24 Developers Deep Dive Call - DB Analysis
Overview
Date: 2026-03-24 - 10:00 am (UTC)
Room:
Objective: Project
Participants: (kindly only add your own names, not those of other participants)
@Uwe Wahser
@Zikani Nyirenda
m4h , Y-Note , Tinker Technologies
@Sunil Parajuli @maxime ngoe
@Wei Lu @shahzaib ahmad
Agenda:
When (UTC) | Duration | Who | Topic |
|---|---|---|---|
14:00 (UTC) | 5 min | Updates & administrative things | |
14:05 (UTC) | 45 min | @Loïc Bistuer | DB Analysis |
DB Analysis - Part I
Project: 2025 Database Schema Evaluation and Optimization
Questions
Seems like most models should be tracked using HistoryModel instead of HistoryBusinessModel as HistoryModel already handles history using SimpleHistory. Unless date_valid_to/from is explicitly needed HistoryBusinessModel shouldn’t be necessary. Correct?
If validity to is set to null and never updated HistoryBusinessModel behaves like HistoryModel and double versioning is never triggered?
Agree that Insuree should be migrated to Individuals – but let’s be very careful to not bring in the Insurance track dependencies in the process, so cash transfer track can stay slim without unnecessary dependencies.
Are there relevant recommendations on immediate actions to be taken to be better aligned with GDPR requirements regarding retention ?
Presentations / Attachments
Additional Resources
Recording here: https://youtu.be/IAWVTbhLxUc
Table names are not exactly that straight forward; some new table have pascal case name ... (developer took the initiative to keep the old naming)
tblCielingInterpretation should be used by the capitation calc rule
the reason we create individual is that the insuree was too rigid, ideally we need to merge the insuree inside the individual (with a define schema); I added recently 2 main model (a thrid shoud be created) to migration the versionedModel to django-history ,
json_ext is also used for the calcrule params
Mutation tables are used by the celery task, not exactly for auditing
user_created, user_updated, date_created, date_update was remove on the new model openIMISModel
Documentation of the reasoning behind the history model creation:https://openimis.atlassian.net/wiki/spaces/OP/pages/1233616897 ; “Business” in HistoryBusinessModel means date_valid_to/from, it is not about history (SCD type 2) but a definition element that have a business validity period