MCPcopy Index your code
hub / github.com/OpenBMB/ChatDev / get_workflow_raw_content

Function get_workflow_raw_content

server/routes/workflows.py:333–360  ·  view source on GitHub ↗
(filename: str)

Source from the content-addressed store, hash-verified

331
332@router.get("/api/workflows/{filename}/get")
333async def get_workflow_raw_content(filename: str):
334 try:
335 safe_filename = validate_workflow_filename(filename, require_yaml_extension=True)
336
337 file_path = YAML_DIR / safe_filename
338 if not file_path.exists() or not file_path.is_file():
339 raise ResourceNotFoundError(
340 "Workflow file not found",
341 resource_type="workflow",
342 resource_id=safe_filename,
343 )
344
345 with open(file_path, "r", encoding="utf-8") as handle:
346 raw_content = handle.read()
347
348 logger = get_server_logger()
349 logger.info("Workflow file content retrieved", log_type=LogType.WORKFLOW, filename=safe_filename)
350 return {"content": raw_content}
351 except ValidationError:
352 raise
353 except SecurityError:
354 raise
355 except ResourceNotFoundError:
356 raise
357 except Exception as exc:
358 logger = get_server_logger()
359 logger.log_exception(exc, f"Unexpected error retrieving workflow: {filename}")
360 raise WorkflowExecutionError(f"Failed to retrieve workflow: {exc}")
361

Callers

nothing calls this directly

Calls 6

get_server_loggerFunction · 0.90
log_exceptionMethod · 0.80
infoMethod · 0.45

Tested by

no test coverage detected