pipeline-task/wwwroot/api/task_list.dspy
yumoqing b556ab0cdc feat: task center - human task interaction, artifact view, restart capability
- Add human task dspy: human_complete, human_list, approval_approve, approval_reject
- Add task_restart.dspy for restarting completed/failed tasks
- Enhance task_detail.ui: inline human task forms, approval buttons, restart
- New step_panel.ui: view/modify step artifacts with cascade rerun
- Update task_list.ui: Tabular with search_form filter by pipeline/state
- Update index.ui: embed task list Tabular inline
- Update load_path.py: register new dspy/ui paths
2026-07-08 21:03:32 +08:00

20 lines
858 B
Plaintext

tenant_id = (await get_userorgid()) or '0'
pipeline_id = params_kw.get('pipeline_id', params_kw.get('filter_pipeline_id', None))
state_filter = params_kw.get('state', params_kw.get('filter_state', None))
limit = int(params_kw.get('limit', 100))
try:
result = await pipeline_list(tenant_id, pipeline_id, limit)
data = json.loads(result)
if data.get('success') and 'tasks' in data:
tasks = data['tasks']
# Apply state filter if specified (pipeline_list doesn't support it natively)
if state_filter:
tasks = [t for t in tasks if t.get('state') == state_filter]
data['rows'] = tasks
data['total'] = len(tasks)
return json.dumps(data, ensure_ascii=False, default=str)
return result
except Exception as e:
return json.dumps({"success": False, "message": str(e)}, ensure_ascii=False)