conductor-oss / conductor-oss/python-sdk

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

Aperta Adatta ai principianti
#430 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
Python
Stelle
104
Fork
42
Merge medio
2g 1h
PR unite (30g)
3

Descrizione

## 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

```python
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`:
```python
NOOP = "NOOP"
```

Add `src/conductor/client/workflow/task/noop_task.py`:
```python
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.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
backend
Tipo di issue
Funzionalità
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Tranquilla
Chiarezza
Specificata chiaramente
Idoneità per principianti
88/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.