diff --git a/platform-mc/terminus_manager.cpp b/platform-mc/terminus_manager.cpp
index 1fe5c79..93fdb09 100644
--- a/platform-mc/terminus_manager.cpp
+++ b/platform-mc/terminus_manager.cpp
@@ -141,7 +141,7 @@
     auto& [scope, rcOpt] = discoverMctpTerminusTaskHandle.emplace();
     scope.spawn(discoverMctpTerminusTask() |
                     stdexec::then([&](int rc) { rcOpt.emplace(rc); }),
-                exec::default_task_context<void>());
+                exec::default_task_context<void>(exec::inline_scheduler{}));
 }
 
 TerminiMapper::iterator
diff --git a/requester/test/handler_test.cpp b/requester/test/handler_test.cpp
index 19afdd1..f37040f 100644
--- a/requester/test/handler_test.cpp
+++ b/requester/test/handler_test.cpp
@@ -188,7 +188,7 @@
 
         EXPECT_EQ(validResponse, true);
     }),
-                exec::default_task_context<void>());
+                exec::default_task_context<void>(exec::inline_scheduler{}));
 
     pldm::Response mockResponse(sizeof(pldm_msg_hdr) + sizeof(uint8_t), 0);
     auto mockResponsePtr =
@@ -221,7 +221,7 @@
 
         EXPECT_TRUE(false); // unreachable
     }) | stdexec::upon_stopped([&] { stopped = true; }),
-                exec::default_task_context<void>());
+                exec::default_task_context<void>(exec::inline_scheduler{}));
 
     scope.request_stop();
 
@@ -274,7 +274,7 @@
 
         EXPECT_EQ(expectedTid, respTid);
     }),
-                exec::default_task_context<void>());
+                exec::default_task_context<void>(exec::inline_scheduler{}));
 
     pldm::Response mockResponse(sizeof(pldm_msg_hdr) + PLDM_GET_TID_RESP_BYTES,
                                 0);
