MCPcopy Create free account
hub / github.com/OpenBMB/ChatDev / request_cancel

Method request_cancel

server/services/workflow_run_service.py:36–54  ·  view source on GitHub ↗
(self, session_id: str, *, reason: Optional[str] = None)

Source from the content-addressed store, hash-verified

34 self.logger = logging.getLogger(__name__)
35
36 def request_cancel(self, session_id: str, *, reason: Optional[str] = None) -> bool:
37 session = self.session_store.get_session(session_id)
38 if not session:
39 return False
40
41 cancel_message = reason or "Cancellation requested"
42 session.cancel_reason = cancel_message
43 if not session.cancel_event.is_set():
44 session.cancel_event.set()
45 self.logger.info("Cancellation requested for session %s", session_id)
46
47 if session.executor:
48 try:
49 session.executor.request_cancel(cancel_message)
50 except Exception as exc:
51 self.logger.warning("Failed to propagate cancellation to executor for %s: %s", session_id, exc)
52
53 self.session_store.update_session_status(session_id, SessionStatus.CANCELLED, error_message=cancel_message)
54 return True
55
56 async def start_workflow(
57 self,

Callers 2

disconnectMethod · 0.45

Calls 4

get_sessionMethod · 0.80
update_session_statusMethod · 0.80
infoMethod · 0.45
warningMethod · 0.45

Tested by

no test coverage detected