- 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
16 lines
612 B
Plaintext
16 lines
612 B
Plaintext
tenant_id = (await get_userorgid()) or '0'
|
|
task_id = params_kw.get('task_id', '')
|
|
step_name = params_kw.get('step_name', '')
|
|
reviewer_id = await get_user()
|
|
comments = params_kw.get('comments', '')
|
|
rollback_to = params_kw.get('rollback_to', None)
|
|
|
|
if not task_id or not step_name:
|
|
return json.dumps({"success": False, "message": "缺少task_id或step_name"}, ensure_ascii=False)
|
|
|
|
try:
|
|
result = await approval_reject(tenant_id, task_id, step_name, reviewer_id, comments, rollback_to)
|
|
return result
|
|
except Exception as e:
|
|
return json.dumps({"success": False, "message": str(e)}, ensure_ascii=False)
|