×

Why Kenya must develop effective policies and laws on reparations

Joseph Abanja and Lancer Achieng, parents of the late baby Samantha Pendo at Kisumu Law Courts on February 14, 2018. They are seeking justice for their baby who was killed during the 2017 post-election violence. [File, Standard]

The 2007-2008 post-election violence (PEV) was a dark moment in our history, resulting in deaths of over 1,200 Kenyans and displacement of more than 650,000 people. The quest for justice has been bumpy, leaving many victims feeling devastated. In 2014, Keriako Tobiko, the then Director of Public Prosecutions, dropped over 4,000 criminal cases including alleged acts of rape, murder, and arson. He argued that the cases did not meet the necessary prosecutorial threshold.

At the International Criminal Court, the Kenyan cases ultimately collapsed due to witnesses recanting their statements and Kenya’s failure to cooperate with the court. As a result, the only remaining avenue for justice appeared to be through the Kenyan courts. On November 24, 2011, the Kenya Human Rights Commission and 28 petitioners filed a suit against the government seeking to enforce the fundamental rights of internally displaced persons violated during the post-election violence of 2007 and 2008. This petition was based on four key issues; injury to person, loss and damage to property, loss of life, and gender and sexual-based violence (SGBV). Thirteen years later, this case remains unresolved, leaving victims wondering whether justice will ultimately serve as their shield and defender.

A significant judgment was issued by the High Court on December 10, 2020 in Constitutional Petition No. 122 of 2013. The court found the government responsible for failing to conduct independent and effective investigations and prosecutions of SGBV-related crimes during the 2007/2008 PEV. However, this decision was marred by the fact that the court recognised the harms endured by only four out of the eight survivor-petitioners.

The issuance of a public apology for all State injustices committed since independence along with the announcement of a Sh10 billion Restorative Justice Fund for victims of past violations by President Uhuru Kenyatta was intended to signify the beginning of a new era for reparations. However, 10 years later, this fund is yet to be operationalised. Although there were efforts in 2017 to develop regulations and a draft policy by the Office of the Attorney General, the Kenya National Commission on Human Rights, and Kenyans for Truth, Justice, and Reconciliation, aimed at operationalising the fund, progress has been hindered by a lack of political goodwill.

Since 2007, Kenya has held four elections, with three of them - 2007, 2017, and 2022 - marked by serious violations. These events have left many victims and survivors seeking justice, accountability, and reparations. Subsequent governments, including the current one, have pledged to enact policies and legislation aimed at providing reparations. However, more than two years into President William Ruto’s term, this promise remains unfulfilled.

The normalisation of violations by State agencies, particularly the police, has been a defining feature of Kenya’s governance since independence. The unlawful arrests of over 1,400 protestors, the disappearance of 89 human rights defenders, and the killing of over 65 protestors during the Gen Z protests serve as stark reminders of Kenya’s troubled past.

Many victims of serious human rights violations have yet to receive any form of reparations and assistance from the State. The National Assembly and Senate should urgently enact legislation that will robustly provide for reparations for these violations.

Senior Programme advisor, Transitional Justice, Kenya Human Rights Commission 

Request history8.1.26PHP Version1.44sRequest Duration24MBMemory UsageGET {category}/article/{id}/{slug}Route
  • warninglog[05:50:07] LOG.warning: Optional parameter $count declared before required parameter $tags is implic...
  • warninglog[05:50:07] LOG.warning: Optional parameter $count declared before required parameter $tags is implic...
  • Booting (83.47ms)time
  • Application (1.35s)time
  • 1 x Application (94.19%)
    1.35s
    1 x Booting (5.81%)
    83.47ms
    11 templates were rendered
    • 1x mainsite.articlearticle.blade.php#?blade
    • 1x mainsite.partials.topsectionsubscribetopsectionsubscribe.blade.php#?blade
    • 1x common.vocalizedvocalized.blade.php#?blade
    • 1x mainsite.partials.footerfooter.blade.php#?blade
    • 1x mainsite.layouts.appapp.blade.php#?blade
    • 1x mainsite.partials.metasmetas.blade.php#?blade
    • 1x mainsite.partials.topbartopbar.blade.php#?blade
    • 1x mainsite.partials.logo_sectionlogo_section.blade.php#?blade
    • 1x mainsite.partials.menumenu.blade.php#?blade
    • 1x mainsite.partials.streamingstreaming.blade.php#?blade
    • 1x mainsite.partials.stickybottomstickybottom.blade.php#?blade
    uri
    GET {category}/article/{id}/{slug}
    middleware
    web
    controller
    App\Http\Controllers\MainsiteController@article
    namespace
    prefix
    where
    file
    app/Http/Controllers/MainsiteController.php:610-1128
    35 statements were executed (12 duplicates)Show only duplicates537ms
    • Articles.php#513standard_digital_mainConnection Established
      Backtrace
      • app/Utils/Articles.php:513
      • app/Http/Controllers/MainsiteController.php:657
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:658
    • Articles.php#520standard_digital_main4.35msselect `id`, `site_id`, `article_category_id`, `title`, `long_title`, `thumbnail_url`, `story`, `published_at`, `premium`, `keywords`, `summary` from `articles` where `id` = '2001515178' and `published_at` <= '2025-04-04 05:50:07' and `deleted_at` is null
      Bindings
      • 0: 2001515178
      • 1: 2025-04-04 05:50:07
      Backtrace
      • app/Utils/Articles.php:520
      • app/Http/Controllers/MainsiteController.php:657
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:658
    • Articles.php#1435standard_digital_main900μsselect * from `days_quote` where `deleted_at` is null and `quote_day` = '2025-04-04'
      Bindings
      • 0: 2025-04-04
      Backtrace
      • app/Utils/Articles.php:1435
      • app/Http/Controllers/MainsiteController.php:660
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:661
    • Builder.php#20standard_digital_main960μsselect `authors`.*, `article_authors`.`article_id` as `pivot_article_id`, `article_authors`.`author_id` as `pivot_author_id` from `authors` inner join `article_authors` on `authors`.`id` = `article_authors`.`author_id` where `article_authors`.`article_id` = 2001515178 and `authors`.`deleted_at` is null
      Bindings
      • 0: 2001515178
      Backtrace
      • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:20
      • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:103
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:84
      • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:21
    • Articles.php#147standard_digital_main850μsselect `id` from `article_categories` where `site_id` = 1 and `id` = 7 or `parent_id` = 7 and `deleted_at` is null
      Bindings
      • 0: 1
      • 1: 7
      • 2: 7
      Backtrace
      • app/Utils/Articles.php:147
      • app/Http/Controllers/MainsiteController.php:727
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:728
    • Articles.php#164standard_digital_main8.31msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `article_category_id` in (7, 33, 35, 59, 487, 614) and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-04-04 05:50:07' order by `published_at` desc, `list_order` asc, `parent_category_list_order` asc limit 10 offset 0
      Bindings
      • 0: 7
      • 1: 33
      • 2: 35
      • 3: 59
      • 4: 487
      • 5: 614
      • 6: 1
      • 7: 2025-04-04 05:50:07
      Backtrace
      • app/Utils/Articles.php:164
      • app/Http/Controllers/MainsiteController.php:727
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:728
    • Articles.php#164standard_digital_main700μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (7)
      Backtrace
      • app/Utils/Articles.php:164
      • app/Http/Controllers/MainsiteController.php:727
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:728
    • Articles.php#53standard_digital_main710μsselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` = 7
      Bindings
      • 0: 7
      Backtrace
      • app/Utils/Articles.php:53
      • app/Utils/Articles.php:338
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#53standard_digital_main710μsselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
      Backtrace
      • app/Utils/Articles.php:53
      • app/Utils/Articles.php:343
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#55standard_digital_mainConnection Established
      Backtrace
      • app/Utils/Articles.php:55
      • app/Utils/Articles.php:343
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#55standard_digital_main3.43msselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
      Backtrace
      • app/Utils/Articles.php:55
      • app/Utils/Articles.php:343
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#57standard_digital_mainConnection Established
      Backtrace
      • app/Utils/Articles.php:57
      • app/Utils/Articles.php:343
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#57standard_digital_main3.47msselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
      Backtrace
      • app/Utils/Articles.php:57
      • app/Utils/Articles.php:343
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#60standard_digital_main1.17msselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `refer_id` is null
      Backtrace
      • app/Utils/Articles.php:60
      • app/Utils/Articles.php:343
      • app/Http/Controllers/MainsiteController.php:737
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
    • Articles.php#688standard_digital_main114msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where (`keywords` LIKE '%[\"Post-Election Violence\",\"Reparations\",\"Human Rights Violations\"]%') and `site_id` = 1 and `published_at` <= '2025-04-04 05:50:07' and `deleted_at` is null and `id` not in ('2001515178') order by `published_at` desc limit 4 offset 0
      Bindings
      • 0: %["Post-Election Violence","Reparations","Human Rights Violations"]%
      • 1: 1
      • 2: 2025-04-04 05:50:07
      • 3: 2001515178
      Backtrace
      • app/Utils/Articles.php:688
      • app/Http/Controllers/MainsiteController.php:821
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:822
    • Articles.php#424standard_digital_main104msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where (`site_id` = 1 or `site_id` = 16 or `site_id` = 20) and `deleted_at` is null and `published_at` <= '2025-04-04 05:50:07' and `published_at` >= '2025-04-04 04:50:07' order by RAND(), `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 4 offset 0
      Bindings
      • 0: 1
      • 1: 16
      • 2: 20
      • 3: 2025-04-04 05:50:07
      • 4: 2025-04-04 04:50:07
      Backtrace
      • app/Utils/Articles.php:424
      • app/Http/Controllers/MainsiteController.php:825
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:826
    • Articles.php#147standard_digital_main1.38msselect `id` from `article_categories` where `site_id` = 1 and `id` = 480 or `parent_id` = 480 and `deleted_at` is null
      Bindings
      • 0: 1
      • 1: 480
      • 2: 480
      Backtrace
      • app/Utils/Articles.php:147
      • app/Http/Controllers/MainsiteController.php:829
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:830
    • Articles.php#164standard_digital_main2.04msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `article_category_id` in (480, 481, 482, 719) and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-04-04 05:50:08' order by `published_at` desc, `list_order` asc, `parent_category_list_order` asc limit 4 offset 0
      Bindings
      • 0: 480
      • 1: 481
      • 2: 482
      • 3: 719
      • 4: 1
      • 5: 2025-04-04 05:50:08
      Backtrace
      • app/Utils/Articles.php:164
      • app/Http/Controllers/MainsiteController.php:829
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:830
    • Articles.php#164standard_digital_main840μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (480, 482)
      Backtrace
      • app/Utils/Articles.php:164
      • app/Http/Controllers/MainsiteController.php:829
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:830
    • Articles.php#753standard_digital_main86.17msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where (`premium` = 1 or `article_category_id` = 486) and `site_id` = '1' and `deleted_at` is null and `published_at` <= '2025-04-04 05:50:08' and `homepage_list_order` is not null order by `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 4 offset 0
      Bindings
      • 0: 1
      • 1: 486
      • 2: 1
      • 3: 2025-04-04 05:50:08
      Backtrace
      • app/Utils/Articles.php:753
      • app/Http/Controllers/MainsiteController.php:837
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:838
    • Articles.php#753standard_digital_main870μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (588)
      Backtrace
      • app/Utils/Articles.php:753
      • app/Http/Controllers/MainsiteController.php:837
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:838
    • Articles.php#819standard_digital_main3.94msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` < '2001515178' and `site_id` = 1 and `published_at` <= '2025-04-04 05:50:08' and `deleted_at` is null order by `id` desc limit 1
      Bindings
      • 0: 2001515178
      • 1: 1
      • 2: 2025-04-04 05:50:08
      Backtrace
      • app/Utils/Articles.php:819
      • app/Http/Controllers/MainsiteController.php:841
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:842
    • Articles.php#819standard_digital_main700μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (588)
      Backtrace
      • app/Utils/Articles.php:819
      • app/Http/Controllers/MainsiteController.php:841
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:842
    • Articles.php#865standard_digital_main1.05msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` > '2001515178' and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-04-04 05:50:08' limit 1
      Bindings
      • 0: 2001515178
      • 1: 1
      • 2: 2025-04-04 05:50:08
      Backtrace
      • app/Utils/Articles.php:865
      • app/Http/Controllers/MainsiteController.php:841
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:842
    • Articles.php#865standard_digital_main4.63msselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (7)
      Backtrace
      • app/Utils/Articles.php:865
      • app/Http/Controllers/MainsiteController.php:841
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:842
    • Articles.php#1288standard_digital_main9.11msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `published_at` <= '2025-04-04 05:50:08' and `article_category_id` = 7 and `site_id` = 1 and `id` not in ('2001515178') order by `homepage_list_order` asc, `published_at` desc limit 6 offset 0
      Bindings
      • 0: 2025-04-04 05:50:08
      • 1: 7
      • 2: 1
      • 3: 2001515178
      Backtrace
      • app/Utils/Articles.php:1288
      • app/Http/Controllers/MainsiteController.php:845
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:846
    • Articles.php#1288standard_digital_main1.24msselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (7)
      Backtrace
      • app/Utils/Articles.php:1288
      • app/Http/Controllers/MainsiteController.php:845
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:846
    • Builder.php#20standard_digital_main31.6msselect `videos`.`id`, `videos`.`video_category_id`, `videos`.`title`, `videos`.`video_url`, `videos`.`description`, `videos`.`published_at`, `videos`.`thumbnail_url` from `videos` inner join `video_categories` on `video_categories`.`id` = `videos`.`video_category_id` where (`keywords` LIKE '%[\"Post-Election Violence\",\"Reparations\",\"Human Rights Violations\"]%') and `videos`.`deleted_at` is null and `video_categories`.`video_type_id` = 1 order by `published_at` desc limit 3 offset 0
      Bindings
      • 0: %["Post-Election Violence","Reparations","Human Rights Violations"]%
      • 1: 1
      Backtrace
      • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:20
      • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:103
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:84
      • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:21
    • Articles.php#3841standard_digital_main870μsselect count(std_trend_article_id) as count, std_trend_article_id from `std_article_trends` group by `std_trend_article_id` order by `count` desc limit 20
      Backtrace
      • app/Utils/Articles.php:3841
      • app/Http/Controllers/MainsiteController.php:853
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:854
    • Articles.php#3867standard_digital_main890μsselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `id` in (2001249065, 2001515452, 2001515539, 2001515468, 2001515341, 2001514050, 2001422508, 2001515545, 2001515444, 2001515456, 2001515419, 2001515546, 2001515446, 2001515333, 2001515532, 2001515237, 2001425423, 2001296124, 2001515547, 2001231936) and `deleted_at` is null and `published_at` <= '2025-04-04 05:50:08' and `homepage_list_order` is not null order by `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 5
      Bindings
      • 0: 2001249065
      • 1: 2001515452
      • 2: 2001515539
      • 3: 2001515468
      • 4: 2001515341
      • 5: 2001514050
      • 6: 2001422508
      • 7: 2001515545
      • 8: 2001515444
      • 9: 2001515456
      • 10: 2001515419
      • 11: 2001515546
      • 12: 2001515446
      • 13: 2001515333
      • 14: 2001515532
      • 15: 2001515237
      • 16: 2001425423
      • 17: 2001296124
      • 18: 2001515547
      • 19: 2001231936
      • 20: 2025-04-04 05:50:08
      Backtrace
      • app/Utils/Articles.php:3867
      • app/Http/Controllers/MainsiteController.php:853
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:854
    • Articles.php#3867standard_digital_main690μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (3, 268, 588)
      Backtrace
      • app/Utils/Articles.php:3867
      • app/Http/Controllers/MainsiteController.php:853
      • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
      • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • app/Http/Controllers/MainsiteController.php:854
    • CookieTool.php#185standard_digital_main810μsselect * from `settings` where `meta_name` = 'article_age' limit 1
      Bindings
      • 0: article_age
      Backtrace
      • app/Utils/CookieTool.php:185
      • app/Http/Controllers/MainsiteController.php:870
      • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
      • vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
    • helper.php#424standard_digital_main1.28msselect * from article_categories where id = '7'
      Backtrace
      • app/Library/helper.php:424
      • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
      • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
      • vendor/laravel/framework/src/Illuminate/View/View.php:195
    • helper.php#424standard_digital_main840μsselect * from article_categories where id = '7'
      Backtrace
      • app/Library/helper.php:424
      • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
      • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
      • vendor/laravel/framework/src/Illuminate/View/View.php:195
    • helper.php#424standard_digital_main1.01msselect * from article_categories where id = '7'
      Backtrace
      • app/Library/helper.php:424
      • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
      • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
      • vendor/laravel/framework/src/Illuminate/View/View.php:195
    • helper.php#424standard_digital_main820μsselect * from article_categories where id = '7'
      Backtrace
      • app/Library/helper.php:424
      • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
      • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
      • vendor/laravel/framework/src/Illuminate/View/View.php:195
    • Articles.php#1350standard_digital_main141msselect * from `articles` where `deleted_at` is null and `published_at` <= '2025-04-04 05:50:08' and (`keywords` like '%Post-Election Violence%' or `keywords` like '%Reparations%' or `keywords` like '%Human Rights Violations%') and (`site_id` = 1 or `site_id` = 16 or `site_id` = 20) and `id` <> '2001515178' order by `published_at` desc limit 3
      Bindings
      • 0: 2025-04-04 05:50:08
      • 1: %Post-Election Violence%
      • 2: %Reparations%
      • 3: %Human Rights Violations%
      • 4: 1
      • 5: 16
      • 6: 20
      • 7: 2001515178
      Backtrace
      • app/Utils/Articles.php:1350
      • app/Utils/Articles.php:1674
      • view::mainsite.article:568
      • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
      • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
    • app.blade.php#825standard_digital_main1.15msselect * from `favourite_topics` where `status` = 1
      Bindings
      • 0: 1
      Backtrace
      • view::mainsite.layouts.app:825
      • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
      • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
      • vendor/laravel/framework/src/Illuminate/View/View.php:195
    App\Models\Category
    381Category.php#?
    App\Models\Article
    35Article.php#?
    App\Models\Trending
    20Trending.php#?
    App\Topic
    16Topic.php#?
    App\Models\Author
    14Author.php#?
        _token
        HsHab5CsHCXQCjVZl1YmzzW0XBJ8DeQaFhuiNi4l
        _previous
        array:1 [ "url" => "http://www.standardmedia.co.ke/main-staging/opinion/article/2001515178/why-ken...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        offset
        0
        path_info
        /opinion/article/2001515178/why-kenya-must-develop-effective-policies-and-laws-on-reparations
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ray" => array:1 [ 0 => "92ad7f161d9110c3-EWR" ] "x-forwarded-for" => array:1 [ 0 => "3.138.183.117" ] "host" => array:1 [ 0 => "www.standardmedia.co.ke" ] "cf-connecting-ip" => array:1 [ 0 => "3.138.183.117" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cookie" => array:1 [ 0 => "story_no=eyJpdiI6IitwYzh5dk5PWUVsTnJsd05BRUFHZ2c9PSIsInZhbHVlIjoiMmg3ODBZM3NuTUlMdUN0aVl0SWtmZmZqTkNuWXFsRWVmR3BRMFVIOCtpeFkxNVFxandDL3ZpdExwSXA2dDVQWSIsIm1hYyI6ImU0MWY4ZDZhNzcxZjQ3OTQ1NzU4MTc2OGJlN2FiYmNmOTAzNGMyMGYyMGY2YzQxNGE4NzJkNDJjYzcwNTg2ZjgiLCJ0YWciOiIifQ%3D%3D; story_no_insider=eyJpdiI6IlFmNGVsbDlaWTEzNFpJT3lsOGZlR2c9PSIsInZhbHVlIjoiNDdhSnd0RnE3QkdNeG5RSVovRlptMlFqc2xmS3RBNFpvSmFBcGJMS01iZ0VQQ2RpRkhSQ1VxbTdGVW5kRHdyZiIsIm1hYyI6IjMxMTUyNmRjN2QxM2MxMjk3NDlkY2Q1NjVkNGE5YTQwMzY5MDkwNzRmM2U2OGNmYWIxODk3NjNmMGQ3NjdkYzgiLCJ0YWciOiIifQ%3D%3D; _gid=GA1.3.145664385.1743735005; _gat_UA-9511843-1=1; _ga=GA1.1.1194820948.1743735005; _ga_L7FB4EWJ0B=GS1.1.1743735005.1.0.1743735005.60.0.0; ___nrbic=%7B%22isNewUser%22%3Atrue%2C%22previousVisit%22%3A1743735005%2C%22lastBeat%22%3A1743735005%2C%22currentVisitStarted%22%3A1743735005%2C%22sessionId%22%3A%2287a2ac26-4785-4f94-89e6-98a8daa59642%22%2C%22sessionVars%22%3A%5B%5D%2C%22visitedInThisSession%22%3Atrue%2C%22pagesViewed%22%3A1%2C%22landingPage%22%3A%22https%3A//www.standardmedia.co.ke/%22%2C%22referrer%22%3A%22%22%2C%22lpti%22%3Anull%7D; ___nrbi=%7B%22firstVisit%22%3A1743735005%2C%22userId%22%3A%22828a8859-20b3-4076-afc2-4f4487a15fe5%22%2C%22userVars%22%3A%5B%5D%2C%22futurePreviousVisit%22%3A1743735005%2C%22timesVisited%22%3A1%7D; compass_uid=828a8859-20b3-4076-afc2-4f4487a15fe5; XSRF-TOKEN=eyJpdiI6IlhVenh5NTY4Y0d2bHphWEFTUUFCcWc9PSIsInZhbHVlIjoidmtQK1Q5VmJISjhQcGhWditUQ21KU29GUWRhbGltL2prODNEcGZvalQwQTl6dGxRSHY4aGE0anc4ZmU5aUxDbUhTa1AzKzlaOTNaSExrczFPNVdCVnBWMUtGcnUyRUF0b0JJaEhPRytFbkZtMWIzeU5DMVBwVnJ2blBZby81bEEiLCJtYWMiOiI2MzIwOTZjMmQ1NDUzNjcxZGVjMDdiYjE2MTBjMzIzZGY0NDUwNzZiNDdkMWY0MDQ2YjdhMmNhOWU4NjhlMDFkIiwidGFnIjoiIn0%3D; thestandardmediagroup_session=eyJpdiI6IlM4N1dWL1hnNlV2eEg4U1ZHQ09za0E9PSIsInZhbHVlIjoiTEl3Ny9MSDQxTDZaU1JTOXJiTkNaQVdaL0NwaUtKL0tqaEZoOUl2OFZpT0pIUmE2eFF4djdZeWZZblBCTERkb1pVMm5vcFRDaEZBRkU4YnZqa0wxeWR2d21xUlJtSUp5c3dDKzB4MEZnUmRpemNKTm0wN3IyOGtKaHpieFpYeTgiLCJtYWMiOiI5MTMxMmY4MDhlYTYzMjJjYmViYTExYzFjNzU3MWZkYmUwNjU1OWM3NjcyZDNiOTMyYzZlYWQ2NGI3Yjg1ZjIyIiwidGFnIjoiIn0%3Dstory_no=eyJpdiI6IitwYzh5dk5PWUVsTnJsd05BRUFHZ2c9PSIsInZhbHVlIjoiMmg3ODBZM3NuTUlMdUN0aVl0SWtmZmZqTkNuWXFsRWVmR3BRMFVIOCtpeFkxNVFxandDL3ZpdExwSXA2dDVQWSIsIm1hYyI" ] "priority" => array:1 [ 0 => "u=0, i" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "connection" => array:1 [ 0 => "Keep-Alive" ] "pragma" => array:1 [ 0 => "no-cache" ] "cache-control" => array:1 [ 0 => "no-cache" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] ]
        request_cookies
        0 of 0
        array:11 [ "story_no" => "2" "story_no_insider" => "2" "_gid" => null "_gat_UA-9511843-1" => null "_ga" => null "_ga_L7FB4EWJ0B" => null "___nrbic" => null "___nrbi" => null "compass_uid" => null "XSRF-TOKEN" => "HsHab5CsHCXQCjVZl1YmzzW0XBJ8DeQaFhuiNi4l" "thestandardmediagroup_session" => "4mQtbzHTRtzqKb9vnq40vuN7tF3lenECJWvfF0tX" ]
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Fri, 04 Apr 2025 02:50:08 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Im9wbWd2NWNuY2VQaC96K29GZlYyVHc9PSIsInZhbHVlIjoiaGR2MDNRUzJUcTkwSG9RQkFrek12OVJXRklxLzB2RTZVTWkrM20wdUxQNXBTMVdqWlNGUUhTZm1oaXJZSEJoUVJpZC9oNUM0V2hSdHRzS2NlWThzdit0cURIOVBES1pQV0dmZ1hyVWI3Qnh2Y2JGRG5Wa1dwbnVIZkZnZStyelIiLCJtYWMiOiIxMTQwMjFiY2I1ODAyNThiZjgxNTNjZmJkYjI3ZDgwMWZkNDhkMmI2MmE0MTY5ZDc2NGU4NWFkZjJmMWQ4ZjYxIiwidGFnIjoiIn0%3D; expires=Sun, 04 May 2025 13:19:09 GMT; Max-Age=2629740; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6Im9wbWd2NWNuY2VQaC96K29GZlYyVHc9PSIsInZhbHVlIjoiaGR2MDNRUzJUcTkwSG9RQkFrek12OVJXRklxLzB2RTZVTWkrM20wdUxQNXBTMVdqWlNGUUhTZm1oaXJZSEJoUVJpZC9oN" 1 => "thestandardmediagroup_session=eyJpdiI6InljNklpOG5LUFlWVHFWeklGYkRpUHc9PSIsInZhbHVlIjoiY1RYYnRqUjh3aGk3dGdKckorTUozNXhDU3dsTUtCWmhWcktYUXJjcldybzBEUHRNdUl0b1lQMFJkcHhWbHF0K0RUd3FRUVdINWxVU0tsMXd6Q1g4bzJjSzRYNUJxS09CTkdFTkN0ZnkwQlI3Ymh4OG0ybHp0VmdCQmdtMko5UTUiLCJtYWMiOiI2ZTU0YjRjZjdmZjE1YzQ4YjNiZWRhMTMzMzBkZTJiMTJkNGFjNGM5NDRhOGNmMjE4NGUzODI1ZTcxNGQxNTZiIiwidGFnIjoiIn0%3D; expires=Sun, 04 May 2025 13:19:09 GMT; Max-Age=2629740; path=/; httponly; samesite=laxthestandardmediagroup_session=eyJpdiI6InljNklpOG5LUFlWVHFWeklGYkRpUHc9PSIsInZhbHVlIjoiY1RYYnRqUjh3aGk3dGdKckorTUozNXhDU3dsTUtCWmhWcktYUXJjcldybzBEUHRNdUl0b1lQMF" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Im9wbWd2NWNuY2VQaC96K29GZlYyVHc9PSIsInZhbHVlIjoiaGR2MDNRUzJUcTkwSG9RQkFrek12OVJXRklxLzB2RTZVTWkrM20wdUxQNXBTMVdqWlNGUUhTZm1oaXJZSEJoUVJpZC9oNUM0V2hSdHRzS2NlWThzdit0cURIOVBES1pQV0dmZ1hyVWI3Qnh2Y2JGRG5Wa1dwbnVIZkZnZStyelIiLCJtYWMiOiIxMTQwMjFiY2I1ODAyNThiZjgxNTNjZmJkYjI3ZDgwMWZkNDhkMmI2MmE0MTY5ZDc2NGU4NWFkZjJmMWQ4ZjYxIiwidGFnIjoiIn0%3D; expires=Sun, 04-May-2025 13:19:09 GMT; path=/XSRF-TOKEN=eyJpdiI6Im9wbWd2NWNuY2VQaC96K29GZlYyVHc9PSIsInZhbHVlIjoiaGR2MDNRUzJUcTkwSG9RQkFrek12OVJXRklxLzB2RTZVTWkrM20wdUxQNXBTMVdqWlNGUUhTZm1oaXJZSEJoUVJpZC9oN" 1 => "thestandardmediagroup_session=eyJpdiI6InljNklpOG5LUFlWVHFWeklGYkRpUHc9PSIsInZhbHVlIjoiY1RYYnRqUjh3aGk3dGdKckorTUozNXhDU3dsTUtCWmhWcktYUXJjcldybzBEUHRNdUl0b1lQMFJkcHhWbHF0K0RUd3FRUVdINWxVU0tsMXd6Q1g4bzJjSzRYNUJxS09CTkdFTkN0ZnkwQlI3Ymh4OG0ybHp0VmdCQmdtMko5UTUiLCJtYWMiOiI2ZTU0YjRjZjdmZjE1YzQ4YjNiZWRhMTMzMzBkZTJiMTJkNGFjNGM5NDRhOGNmMjE4NGUzODI1ZTcxNGQxNTZiIiwidGFnIjoiIn0%3D; expires=Sun, 04-May-2025 13:19:09 GMT; path=/; httponlythestandardmediagroup_session=eyJpdiI6InljNklpOG5LUFlWVHFWeklGYkRpUHc9PSIsInZhbHVlIjoiY1RYYnRqUjh3aGk3dGdKckorTUozNXhDU3dsTUtCWmhWcktYUXJjcldybzBEUHRNdUl0b1lQMF" ] ]
        session_attributes
        0 of 0
        array:4 [ "_token" => "HsHab5CsHCXQCjVZl1YmzzW0XBJ8DeQaFhuiNi4l" "_previous" => array:1 [ "url" => "http://www.standardmedia.co.ke/main-staging/opinion/article/2001515178/why-kenya-must-develop-effective-policies-and-laws-on-reparations" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "offset" => 0 ]
        ClearShow all
        Date ↕MethodURLData
        #12025-04-04 05:50:09GET/main-staging/opinion/article/2001515178/why-kenya-must-develop-effective-policies-and-laws-on-reparations21135466