TaskType.NOOP missing — NOOP system task has no enum value or builder class

Open Beginner friendly
#430 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
88/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Quiet
Tech stack
python
Domain
backend

Research direction

Start with src/conductor/client/workflow/task/task_type.py and the TaskInterface used by task builders. Add the NOOP enum value and create noop_task.py with NoopTask using the specified task reference name and type; done means the SDK exposes both TaskType.NOOP and NoopTask for constructing NOOP workflows.

Written by the indexing model from the issue text.

Description

bug

Summary

Tested against: Conductor OSS 3.32.0-rc.9

The Conductor server has a NOOP system task type (TaskType.NOOP) that
completes immediately with no inputParameters. The Python SDK has neither an
enum value nor a builder class for it.

Details

from conductor.client.workflow.task.task_type import TaskType
hasattr(TaskType, "NOOP")   # False

There is no noop_task.py and no NoopTask class anywhere in the SDK.

NOOP is useful as an explicit no-op placeholder in workflow branches (e.g.
the default branch of a SWITCH where nothing should happen). Without SDK support,
users must use raw dicts.

Suggested fix

Add to task_type.py:

NOOP = "NOOP"

Add src/conductor/client/workflow/task/noop_task.py:

class NoopTask(TaskInterface):
    def __init__(self, task_ref_name: str):
        super().__init__(task_reference_name=task_ref_name,
                         task_type=TaskType.NOOP)

Verified against

Conductor server 3.32.0-rc.9. A raw-dict NOOP workflow registered and ran
to COMPLETED on the server. Only the SDK support is missing.

Dominant language
Python
Stars
104
Forks
43
Avg merge
1d 13h
Merged PRs (30d)
4

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from conductor-oss/python-sdk

All issues in conductor-oss/python-sdk

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.