Command room ya migration ilikuwa tulivu kwa namna ya kutisha. Hakukuwa na investor livestream wala crowd ya soko. Kulikuwa na dashboards, rollback clocks na watu waliokuwa wanajua mistake moja inaweza kuwafanya wateja waamke bila balances sahihi.
Kamau aligawa migration kwa cohorts.
“Clean identities first. Then normal active wallets. High-risk 43 remain excluded.”
Aisha aliomba independent checksum baada ya kila cohort, si mwisho.
“Tutachelewa,” engineer mmoja alisema.
“Rollback window ni yetu. Tuitumie.”
Saa 23:10 cohort ya kwanza ilipita. Account IDs, phone contacts na balances zilitenganishwa bila mismatch.
Saa 00:05 cohort ya pili ilifunga.
Saa 00:47 reconciliation checker ilitoa difference ndogo kwenye dormant-wallet group.
“Tolerance?” Kamau akauliza.
“Above.”
Engineer akasema inaweza kuwa rounding from old fees.
Aisha akasema, “Pause cohort.”
“Ni accounts elfu kumi na mbili kwa difference ndogo.”
“Ndiyo. Pause, si rollback entire migration.”
Walifuatilia difference hadi legacy fee bucket ambayo ilikuwa na two-decimal conversion tofauti. Ilikuwa bug ya kawaida, isiyohusiana na scheme.
Mtu kwenye room alicheka kwa uchovu. “Tumepata boring bug.”
“Boring bugs deserve fixes too,” Aisha alisema.
Walifanya patch, rerun checksum, ikapita.
Saa 01:52, settlement ya kwanza chini ya architecture mpya ilianza. Wekesa alikuwa operator. Auto-reserve normal liquidity journals ziliingia, lakini reporting layer haikuziita customer repayments.
“Repayment KPI?” Njeri akauliza.
“Lower kuliko old dashboard,” Wekesa alisema.
“Expected.”
Customer repayments halisi ziliingia na source action. Recycled-number test case ili-trigger human-review hold badala ya ku-link old identity.
Saa 02:13, Aisha alitazama clock bila kutaka. Hiyo ndiyo saa ambayo Mama Atieno alikuwa “amelipa” kwenye system ya zamani.
Hakuna ghost entry ilitokea.
Kisha alert nyingine ikaingia: one of the 43 historical accounts had duplicate estate claim and new subscriber wallet.
“Hold remains,” Wekesa alisema.
“Good.”
Kamau alitaka kuendelea final cohort ili wafunge before 04:00.
Aisha akauliza status ya 43.
“Manual team wameclear 41. Mbili pending.”
“Final batch?”
“Clean cohort, technically independent.”
“Checksum dependencies?”
Kamau akakaa kimya. “Summary reconciliation includes all identity exceptions.”
“Basi tunasubiri.”
Njeri akasema, “Board wants success notice at 04:00.”
“Wataipata baada success.”
Pressure ilikuwa tofauti na ile ya acquisition snapshot, lakini temptation ilikuwa ile ile: tangaza green, repair later.
Manual reviewers wakafanya calls zilizo authorized, wakaangalia estate docs na subscriber activation histories. Case ya 42 ika-clear. Ya 43 ilikuwa Mama Atieno refund path, ambayo ilikuwa tayari resolved kupitia estate destination but old link ilibaki.
Ruth ali-confirm estate ID kupitia prearranged channel; hakuna mtu aliomba PIN.
Saa 04:26, case ya 43 ikafungwa.
Final cohort ika-run.
Checksum: match.
Agent float totals: match.
Reserve disclosure: match.
Repayment reporting: source-classified.
No recycled number inherited historical debt.
Wekesa alisoma results kwa sauti. Hakuna applause mara moja. Watu walikuwa wamechoka sana.
Aisha akaomba rollback snapshot ihifadhiwe mpaka monitoring window iishe. Kamau akakubali.
Saa 05:10, first full settlement close ilitokea.
Njeri akaangalia chart. “Repayment rate ni lower.”
“Na honest,” Wekesa alisema.
Aisha hakumrekebisha.
Walituma notice kwa agents kueleza fields mpya, kwa support kueleza identity-review holds, na kwa board kutoa actual cutover time badala ya planned time.
Mariam alituma message: **Till yangu inaonyesha usable float separately. Finally.**
Aisha akaiweka simu chini.
Usiku ule hawakushinda kwa kufika deadline.
Walishinda kwa kusimamisha batch wakati namba haikulingana, na kuendelea tu baada ya kuijua.
Monitoring window ilipoanza, support desk ilipokea calls za customers waliokuwa wanaona customer ID mpya kwenye receipts. Badala ya kuwaita errors, team ilitumia script fupi: phone number ni contact; customer ID ndiyo account identity. Complaints ziliwekwa kama usability feedback. Kamau akasema architecture inaweza kuwa technically right na bado customer asielewe. Wakaongeza help text kwenye app bila kubadilisha control.
Kwa agents, new reserve fields zilianza kuonyesha differences ambazo zamani zilifichwa ndani ya total balance. Kiosk moja ilipiga simu kwa sababu reserved amount ilikuwa kubwa. Njeri alithibitisha legitimate facility recovery na release schedule. Hiyo ilikuwa good test: transparency haikufanya reserve zote kuwa wrong; ilifanya explanation iwe visible.
Wakati batch ya 43 ikisubiri cases mbili za mwisho, board liaison alipiga simu mara tatu. Aisha hakupokea call ya tatu; alimwomba atume instruction kwenye change ticket. Liaison akaandika kwamba success notice inaweza kuchelewa mpaka checks zipite. Paper trail hiyo ilibadilisha pressure kuwa accountability. Hakuna mtu alihitaji kuwa martyr wa deadline baada ya decision kuwekwa wazi.
Saa 03:15, monitoring ilipata reserve journal ambayo ilikuwa correctly classified kama treasury movement lakini agent portal haikuonyesha expected release time. Hiyo haikuwa blocker ya identity migration, lakini team ilifungua defect ticket badala ya kuipuuza kwa sababu “not part of main case”. Aisha aliweka severity medium na kuendelea. Safe cutover haimaanishi kila warning inasimamisha world; inamaanisha criteria za kusimama ziko wazi kabla warning kutokea.
Kwa cases 43, reviewers walitumia checklist ile ile: closure reason, current subscriber status, debt/refund state, supporting identity record. Wawili tofauti walikagua high-risk deceased cases. Hakuna bulk edit ya customer names. Hilo lilifanya process ichukue muda, lakini liliweka kila correction kwenye record.
Kamau alipoomba final go/no-go, Aisha hakutoa speech. Aliuliza fields tano: checksum, unresolved high-risk, rollback ready, agent float match, reporting source classification. Zote zilikuwa green baada cases mbili za mwisho kufungwa. Ndipo akasema go. Decision ilikuwa repeatable; mtu mwingine angeweza kutumia checklist ile ile bila personality yake.
Monitoring owner alikabidhiwa dashboard baada cutover kwa shift nyingine kabla Aisha hajaondoka. She wanted continuity without her presence. New operator alisoma thresholds na rollback criteria kwa sauti, akathibitisha anaelewa. Mfumo ambao unafanya kazi tu Aisha akiwa room haukuwa reform.
Settlement ya kwanza safi ilifungwa bila repayment hata moja kutoka kwa mtu ambaye hakufanya malipo.