fix(dag): add defensive check for ProcessManager singleton

Add runtime check to provide better error message if ProcessManager()
returns None. This should never happen with proper singleton pattern,
but helps diagnose issues in edge cases.
This commit is contained in:
2025-12-26 03:49:32 -08:00
parent c63f370fea
commit 08970ba62c
2 changed files with 8 additions and 0 deletions
@@ -206,6 +206,10 @@ backgrounded. Use ps tool to monitor: ps --logs <id>, ps --kill <id>"""
start_time = datetime.now()
node_id = f"shell_{id(cmd)}"
process_manager = ProcessManager()
# Defensive check - should never happen but provides better error message
if process_manager is None:
raise RuntimeError("ProcessManager() returned None - singleton initialization failed")
try:
# Merge environment
@@ -178,6 +178,10 @@ backgrounded. Use ps tool to monitor: ps --logs <id>, ps --kill <id>"""
start_time = datetime.now()
node_id = f"shell_{id(cmd)}"
process_manager = ProcessManager()
# Defensive check - should never happen but provides better error message
if process_manager is None:
raise RuntimeError("ProcessManager() returned None - singleton initialization failed")
try:
run_env = os.environ.copy()