diff --git a/src/pypelines/__init__.py b/src/pypelines/__init__.py
index e0de8e051cc9d3c2a53d26c2e5b0a6c51cb2f940..9a7e7e02027551a0f12c4aa9744bdfca03965688 100644
--- a/src/pypelines/__init__.py
+++ b/src/pypelines/__init__.py
@@ -1,4 +1,4 @@
-__version__ = "0.0.41"
+__version__ = "0.0.42"
 
 from . import loggs
 from .pipes import *
diff --git a/src/pypelines/celery_tasks.py b/src/pypelines/celery_tasks.py
index 99a5bf937dfa5f054afbaf4ce6ebb5c20c328db5..efb3a9559efa9ab6aa7cf7bd8b0c578d1704905b 100644
--- a/src/pypelines/celery_tasks.py
+++ b/src/pypelines/celery_tasks.py
@@ -390,7 +390,9 @@ def create_celery_app(conf_path, app_name="pypelines", v_host=None) -> "Celery |
                                 "step_name": step.step_name,
                                 "pipe_name": step.pipe_name,
                                 "pipeline_name": step.pipeline_name,
-                                "requires": step.requires,
+                                "requires": [
+                                    item if isinstance(item, str) else item.complete_name for item in step.requires
+                                ],
                                 "step_level_in_pipe": step.get_level(selfish=True),
                             }
                             tasks_dynamic_data[step.complete_name] = task_data
diff --git a/src/pypelines/steps.py b/src/pypelines/steps.py
index 2a753f8794ceda8841cf467c96e973bf8f035bf2..87903fab9337863c46fb2aed615a92e332789084 100644
--- a/src/pypelines/steps.py
+++ b/src/pypelines/steps.py
@@ -185,7 +185,7 @@ class BaseStep:
             )
         return autoload_arguments(loggedmethod(self.generation_mechanism), self)
 
-    def get_level(self, selfish=False):
+    def get_level(self, selfish=False) -> int:
         self.pipeline.resolve()
         return StepLevel(self).resolve_level(selfish=selfish)
 
@@ -567,7 +567,7 @@ class StepLevel:
             new_req.append(req)
         return new_req
 
-    def resolve_level(self, selfish: bool = False, uppermost=None):
+    def resolve_level(self, selfish: bool = False, uppermost=None) -> int:
         """Calculates and returns the "level" of the step.
 
         If `selfish` is True, only the requirements that are the same pipe as the `uppermost`