Traffic police officers manning a roadblock at Mweiga, Nyeri, November 2021. [Kibata Kihu, Standard]
The High Court has stripped National Transport and Safety Authority (NTSA) officers powers of acting as traffic instructors and reverted the same to the police.
In the rules that had kicked out the police from conducting driving tests (Theoretical, a test of knowledge in the highway code and traffic signs, test of knowledge of road safety principles and procedures; and a practical driving test which was to be conducted over a minimum distance of two kilometres), section 31 gave NTSA powers to do so.
However, in the judgment that suspended implementation of the Traffic Rules 2020 (Driving schools, driving instructors and driving licenses), both Houses of Parliament are now expected to reconsider the rules that also revoked driving school licences and required them to reapply afresh after paying Sh30,000 to NTSA for new licenses.
Justice Anthony Mrima also ordered the CS Transport James Macharia to resubmit a copy of the Traffic Rules of 2020 and explanatory memorandum to Parliament in the next 14 days.
“The CS is also ordered to submit the copy of the court’s judgement and decree to Speakers of both Houses of Parliament,” ruled Mrima.
He directed the Speakers to take steps and ensure the rules are expeditiously dealt with by their respective Houses.
“In the event that any or both Houses are unable to finalize dealing with the rules within the remainder of their terms, the said rules shall be dealt with in the next term of parliament,” he ruled.
Mrima made the decision in a case that was filed by the Kenya Driving Schools Association (KDSA) against The NTSA, Ministry of Transport, the Attorney General (AG) and Inspector General of Police.
Subscribe to our newsletter and stay updated on the latest developments and special offers!
Pick your favourite topics below for a tailor made homepage just for you
1 x Application (99.08%) | 1.51s |
1 x Booting (0.92%) | 13.95ms |
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `long_title`, `thumbnail_url`, `story`, `published_at`, `premium`, `keywords`, `summary` from `articles` where `id` = '2001436095' and `published_at` <= '2025-03-31 20:50:22' and `deleted_at` is null
Bindings |
|
Backtrace |
|
select * from `days_quote` where `deleted_at` is null and `quote_day` = '2025-03-31'
Bindings |
|
Backtrace |
|
Backtrace |
|
select `id`, `categoryid`, `title`, `long_title`, `story`, `related_video`, `thumbURL`, `keywords`, `publishday`, `updateddate`, `publishdate`, `author`, `source`, `premium`, `summary` from `std_article` where `id` = '2001436095' and `publishdate` <= '2025-03-31 20:50:22' and `inactive` is null
Bindings |
|
Backtrace |
|
select `id` from `article_categories` where `site_id` = 1 and `id` = 588 or `parent_id` = 588 and `deleted_at` is null
Bindings |
|
Backtrace |
|
select `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `article_category_id` in (1, 588) and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-03-31 20:50:22' order by `published_at` desc, `list_order` asc, `parent_category_list_order` asc limit 10 offset 0
Bindings |
|
Backtrace |
|
select `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (1, 588)
Backtrace |
|
select `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` = 588
Bindings |
|
Backtrace |
|
select `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
Backtrace |
|
Backtrace |
|
select `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
Backtrace |
|
Backtrace |
|
select `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
Backtrace |
|
select `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `refer_id` is null
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where (`keywords` LIKE '%[\"Traffic rules\",\"Traffic police\",\"Transport\",\"James Macharia\",\"NTSA\"]%') and `site_id` = 1 and `published_at` <= '2025-03-31 20:50:22' and `deleted_at` is null and `id` not in ('2001436095') order by `published_at` desc limit 4 offset 0
Bindings |
|
Backtrace |
|
select `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-03-31 20:50:22' and `published_at` >= '2025-03-31 19:50:22' order by RAND(), `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 4 offset 0
Bindings |
|
Backtrace |
|
select `id` from `article_categories` where `site_id` = 1 and `id` = 480 or `parent_id` = 480 and `deleted_at` is null
Bindings |
|
Backtrace |
|
select `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-03-31 20:50:22' order by `published_at` desc, `list_order` asc, `parent_category_list_order` asc limit 4 offset 0
Bindings |
|
Backtrace |
|
select `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (480, 482)
Backtrace |
|
select `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-03-31 20:50:22' and `homepage_list_order` is not null order by `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 4 offset 0
Bindings |
|
Backtrace |
|
select `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (3, 588, 601)
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` < '2001436095' and `site_id` = 1 and `published_at` <= '2025-03-31 20:50:22' and `deleted_at` is null order by `id` desc limit 1
Bindings |
|
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` < '2001436095' and `site_id` = 1 and `published_at` <= '2025-03-31 20:50:22' and `deleted_at` is null order by `id` desc limit 1
Bindings |
|
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `deleted_at` is null and `published_at` <= '2025-03-31 20:50:22' and `site_id` = 1 and `id` < '2001436095' order by `id` desc limit 1
Bindings |
|
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` > '2001436095' and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-03-31 20:50:22' limit 1
Bindings |
|
Backtrace |
|
select `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (7)
Backtrace |
|
select `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `published_at` <= '2025-03-31 20:50:22' and `article_category_id` = 588 and `site_id` = 1 and `id` not in ('2001436095') order by `homepage_list_order` asc, `published_at` desc limit 6 offset 0
Bindings |
|
Backtrace |
|
select `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (588)
Backtrace |
|
select `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 '%[\"Traffic rules\",\"Traffic police\",\"Transport\",\"James Macharia\",\"NTSA\"]%') and `videos`.`deleted_at` is null and `video_categories`.`video_type_id` = 1 order by `published_at` desc limit 3 offset 0
Bindings |
|
Backtrace |
|
select 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 |
|
select `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `id` in (2001515181, 2001514989, 2001515146, 2001249065, 2001457889, 2001515080, 2001514712, 2001515124, 2001515084, 2001515190, 2001515155, 2000204686, 2001515083, 2001515107, 2001515158, 2001514402, 2001514355, 2001250756, 2001515166, 2001514991) and `deleted_at` is null and `published_at` <= '2025-03-31 20:50:22' and `homepage_list_order` is not null order by `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 5
Bindings |
|
Backtrace |
|
select `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (25, 264, 265, 282, 369)
Backtrace |
|
select `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` in (2001515080, 2001515083, 2001515084, 2001515124, 2001515155) and `authors`.`deleted_at` is null
Backtrace |
|
select * from `settings` where `meta_name` = 'article_age' limit 1
Bindings |
|
Backtrace |
|
select * from article_categories where id = '588'
Backtrace |
|
select * from article_categories where id = '588'
Backtrace |
|
select * from article_categories where id = '588'
Backtrace |
|
select * from article_categories where id = '588'
Backtrace |
|
select * from `articles` where `deleted_at` is null and `published_at` <= '2025-03-31 20:50:23' and (`keywords` like '%Traffic rules%' or `keywords` like '%Traffic police%' or `keywords` like '%Transport%' or `keywords` like '%James Macharia%' or `keywords` like '%NTSA%') and (`site_id` = 1 or `site_id` = 16 or `site_id` = 20) and `id` <> '2001436095' order by `published_at` desc limit 3
Bindings |
|
Backtrace |
|
select * from `favourite_topics` where `status` = 1
Bindings |
|
Backtrace |
|
200
[]
[]
0 of 0array:24 [▼ "cf-ray" => array:1 [▶ 0 => "9291b01308f621a3-EWR" ] "x-forwarded-for" => array:1 [▶ 0 => "3.18.103.165" ] "host" => array:1 [▶ 0 => "www.standardmedia.co.ke" ] "cf-connecting-ip" => array:1 [▶ 0 => "3.18.103.165" ] "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 => "XSRF-TOKEN=eyJpdiI6InNzT0ZCLzRubklaNFpFWldsTERBbEE9PSIsInZhbHVlIjoib2NTRUk5SWZxNlh1cE91b2tobXVpQkxidWUvYXN0SVZCbVdTZ1hwaUZBN0VycnBYVWZPNDc2NnpLeC9LM0RZMVM4MFNIL056QWt6VlNIUHUxNXNFSHB2cElDdk90SnZCWTQ0czdYZ3FsTmxUWGhjMTMyWFNMM293YVMzckw3cDAiLCJtYWMiOiIwYTJiOWU2MDI4MzZmNGIzM2E4NzI5ZGQ3OWZmNmE3YzIxNDk1ZjJmNWEzZmZiMGJkMDg1ZWJiYmZmZWI3ZDg4IiwidGFnIjoiIn0%3D; thestandardmediagroup_session=eyJpdiI6Im9oN2x1YVgvVEJHRmlGN0lJZ2FicFE9PSIsInZhbHVlIjoieGdUSFBYUEc3WDYveGhhcDkrNlA5WWpkQ1kwY2p2ZGdydXJBUld1TElIUVdUc3dTakQydlk3OVh6eTN4SnQycXhuS3NTaS80TE1UeUliVUNYSFBCSXRJWW1xRkN3VGtNZWc0MlI3ZXpsU0d6NlJ6TDRlSG0wNXZjeWF4R3ltNDkiLCJtYWMiOiI0Y2U5NzUyNzIwM2RkZDkwNDM0ODBhODMwMDJmNDBmZDU3M2Q2Nzc5OGQ2ZDdlMTI4MjkyODE1YzBjZTQ4ZGNmIiwidGFnIjoiIn0%3D; _ga=amp-36XCV2c92nTEBAGKPi717A ◀XSRF-TOKEN=eyJpdiI6InNzT0ZCLzRubklaNFpFWldsTERBbEE9PSIsInZhbHVlIjoib2NTRUk5SWZxNlh1cE91b2tobXVpQkxidWUvYXN0SVZCbVdTZ1hwaUZBN0VycnBYVWZPNDc2NnpLeC9LM0RZMVM4MFNIL ▶" ] "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" ] ]
0 of 0array:3 [▼ "XSRF-TOKEN" => "YhMztcl5Vf1tD0Yja8HeHUo8WtQyi50E9iC13Kgw" "thestandardmediagroup_session" => "AQtx3BHb1ZChNX7XlXPk6ZaPTa1UDPK5BIrpS11G" "_ga" => null ]
0 of 0array:5 [▼ "content-type" => array:1 [▶ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [▶ 0 => "no-cache, private" ] "date" => array:1 [▶ 0 => "Mon, 31 Mar 2025 17:50:23 GMT" ] "set-cookie" => array:2 [▶ 0 => "XSRF-TOKEN=eyJpdiI6InJCSVVMcjVoVVZ0TkFvTGwxa0VpTEE9PSIsInZhbHVlIjoib2tJODY3dFNPZzJEZHVJbHdiZDR3V2FBMWtFTzlYZG5wN2I2eTRnNmZWMTF3aFVrRko3VGhLQTgrTFluYnM2U2hWNGVKUUNZbGhDZDVCakNGSGRyLzNpbkRHTUNtRlRiWEtxMjFkQjNjSGprOWRPNE02cjQ2Z3ZnSXJJRTZTYVkiLCJtYWMiOiJlZGJmNmQ1NzkwMjAzYmFmZGM5NDg2MDc0NGJhODc1MDRjMTRlZTk3NWEzMTE4NzIzZjUwMTkyOTM1YTNiOWE3IiwidGFnIjoiIn0%3D; expires=Thu, 01 May 2025 04:19:23 GMT; Max-Age=2629740; path=/; samesite=lax ◀XSRF-TOKEN=eyJpdiI6InJCSVVMcjVoVVZ0TkFvTGwxa0VpTEE9PSIsInZhbHVlIjoib2tJODY3dFNPZzJEZHVJbHdiZDR3V2FBMWtFTzlYZG5wN2I2eTRnNmZWMTF3aFVrRko3VGhLQTgrTFluYnM2U2hWNGVKU ▶" 1 => "thestandardmediagroup_session=eyJpdiI6IjZ6ZUZCZjlLM3M0eVZhSEpGVEV4OGc9PSIsInZhbHVlIjoiSUxNR2xOVnRhdmlYL2VYK25VcUt4RERvQlZuU1Q2TEZRbHd0ZFMyZUE5OFZFK2JJaWhHOVQ1WkI4V29tN3IveS9sRFh3c3hWM2F6WGN0THJZV3VUZGo4OUJWZWZXNjZUNUhWMitXVEl0VjluSmNjdnlERUxQVkxRTU8wd2xUYTEiLCJtYWMiOiI5NzYxYTk4ZDg2YzE4NmViODdlMTU3NjA5NTE0YjU3ODc0NzdiZjM5NGYyODliZjFjNDZiMzBjNmY0OTVhZWE5IiwidGFnIjoiIn0%3D; expires=Thu, 01 May 2025 04:19:23 GMT; Max-Age=2629740; path=/; httponly; samesite=lax ◀thestandardmediagroup_session=eyJpdiI6IjZ6ZUZCZjlLM3M0eVZhSEpGVEV4OGc9PSIsInZhbHVlIjoiSUxNR2xOVnRhdmlYL2VYK25VcUt4RERvQlZuU1Q2TEZRbHd0ZFMyZUE5OFZFK2JJaWhHOVQ1Wk ▶" ] "Set-Cookie" => array:2 [▶ 0 => "XSRF-TOKEN=eyJpdiI6InJCSVVMcjVoVVZ0TkFvTGwxa0VpTEE9PSIsInZhbHVlIjoib2tJODY3dFNPZzJEZHVJbHdiZDR3V2FBMWtFTzlYZG5wN2I2eTRnNmZWMTF3aFVrRko3VGhLQTgrTFluYnM2U2hWNGVKUUNZbGhDZDVCakNGSGRyLzNpbkRHTUNtRlRiWEtxMjFkQjNjSGprOWRPNE02cjQ2Z3ZnSXJJRTZTYVkiLCJtYWMiOiJlZGJmNmQ1NzkwMjAzYmFmZGM5NDg2MDc0NGJhODc1MDRjMTRlZTk3NWEzMTE4NzIzZjUwMTkyOTM1YTNiOWE3IiwidGFnIjoiIn0%3D; expires=Thu, 01-May-2025 04:19:23 GMT; path=/ ◀XSRF-TOKEN=eyJpdiI6InJCSVVMcjVoVVZ0TkFvTGwxa0VpTEE9PSIsInZhbHVlIjoib2tJODY3dFNPZzJEZHVJbHdiZDR3V2FBMWtFTzlYZG5wN2I2eTRnNmZWMTF3aFVrRko3VGhLQTgrTFluYnM2U2hWNGVKU ▶" 1 => "thestandardmediagroup_session=eyJpdiI6IjZ6ZUZCZjlLM3M0eVZhSEpGVEV4OGc9PSIsInZhbHVlIjoiSUxNR2xOVnRhdmlYL2VYK25VcUt4RERvQlZuU1Q2TEZRbHd0ZFMyZUE5OFZFK2JJaWhHOVQ1WkI4V29tN3IveS9sRFh3c3hWM2F6WGN0THJZV3VUZGo4OUJWZWZXNjZUNUhWMitXVEl0VjluSmNjdnlERUxQVkxRTU8wd2xUYTEiLCJtYWMiOiI5NzYxYTk4ZDg2YzE4NmViODdlMTU3NjA5NTE0YjU3ODc0NzdiZjM5NGYyODliZjFjNDZiMzBjNmY0OTVhZWE5IiwidGFnIjoiIn0%3D; expires=Thu, 01-May-2025 04:19:23 GMT; path=/; httponly ◀thestandardmediagroup_session=eyJpdiI6IjZ6ZUZCZjlLM3M0eVZhSEpGVEV4OGc9PSIsInZhbHVlIjoiSUxNR2xOVnRhdmlYL2VYK25VcUt4RERvQlZuU1Q2TEZRbHd0ZFMyZUE5OFZFK2JJaWhHOVQ1Wk ▶" ] ]
0 of 0array:4 [▼ "_token" => "YhMztcl5Vf1tD0Yja8HeHUo8WtQyi50E9iC13Kgw" "_previous" => array:1 [▶ "url" => "http://www.standardmedia.co.ke/main-staging/counties/article/2001436095/court-suspends-2020-traffic-rules-implementation" ] "_flash" => array:2 [▶ "old" => [] "new" => [] ] "offset" => 0 ]