Record an edge-send flow event. Args: sender: Sender node. receiver: Receiver node. edge_keys: Optional edge key mapping (used to render key labels/details). message: Optional message payload snapshot.
(
self,
sender: object,
receiver: object,
*,
edge_keys: dict[str, object] | None = None,
message: dict[str, object] | None = None,
)
| 446 | self._record_history(payload) |
| 447 | |
| 448 | def flow_edge_send( |
| 449 | self, |
| 450 | sender: object, |
| 451 | receiver: object, |
| 452 | *, |
| 453 | edge_keys: dict[str, object] | None = None, |
| 454 | message: dict[str, object] | None = None, |
| 455 | ) -> None: |
| 456 | """Record an edge-send flow event. |
| 457 | |
| 458 | Args: |
| 459 | sender: Sender node. |
| 460 | receiver: Receiver node. |
| 461 | edge_keys: Optional edge key mapping (used to render key labels/details). |
| 462 | message: Optional message payload snapshot. |
| 463 | """ |
| 464 | sender_id = self._resolve_node_id(sender) |
| 465 | receiver_id = self._resolve_node_id(receiver) |
| 466 | if not sender_id or not receiver_id: |
| 467 | return |
| 468 | |
| 469 | keys: list[str] = [] |
| 470 | keys_details: dict[str, object] | None = None |
| 471 | if isinstance(edge_keys, dict): |
| 472 | keys = [str(k) for k in edge_keys.keys()] |
| 473 | keys_details = {str(k): edge_keys.get(k) for k in edge_keys.keys()} |
| 474 | |
| 475 | payload: dict[str, object] = { |
| 476 | "type": "FLOW", |
| 477 | "kind": "EDGE_SEND", |
| 478 | "ts": _now_ms(), |
| 479 | "from": sender_id, |
| 480 | "to": receiver_id, |
| 481 | } |
| 482 | if keys: |
| 483 | payload["keys"] = keys |
| 484 | if keys_details: |
| 485 | payload["keysDetails"] = self._safe_for_history(keys_details) |
| 486 | if isinstance(message, dict) and message: |
| 487 | payload["message"] = self._safe_for_history(message) |
| 488 | |
| 489 | if self.is_streaming(): |
| 490 | self._enqueue(payload) |
| 491 | else: |
| 492 | self._record_history(payload) |
| 493 | |
| 494 | def flow_attr_pull( |
| 495 | self, |
nothing calls this directly
no test coverage detected