tenant_id = (await get_userorgid()) or '0' task_id = params_kw.get('task_id', '') step_name = params_kw.get('step_name', '') content_raw = params_kw.get('content', '') rerun_from = params_kw.get('rerun_from', 'node') if not task_id or not step_name: return json.dumps({"success": False, "message": "缺少task_id或step_name"}, ensure_ascii=False) # Parse content if isinstance(content_raw, str): try: content = json.loads(content_raw) except Exception: content = {"text": content_raw} else: content = content_raw updates = {step_name: {"content": content}} try: result = await pipeline_modify(tenant_id, task_id, updates, rerun_from) return result except Exception as e: return json.dumps({"success": False, "message": str(e)}, ensure_ascii=False)