finos / finos/symphony-bdk-python
Add GENERICSYSTEMEVENT support to RealTimeEventListener and RealTimeEvent enum
- Dominant language
- Python
- Stars
- 37
- Forks
- 44
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 11
Description
## Problem
The Symphony Agent API delivers `GENERICSYSTEMEVENT` events via the datahose
(POST /agent/v5/events/read with `"eventTypes": ["GENERICSYSTEMEVENT"]`), but
BDK Python 2.11.2 silently drops them:
INFO - ...abstract_datafeed_loop - Received event with an unknown type: GENERICSYSTEMEVENT
## Root cause
`GENERICSYSTEMEVENT` is absent from the `RealTimeEvent` enum in
`abstract_datafeed_loop.py`, so `_run_listener_method` raises a `KeyError` and
returns without dispatching. Additionally, `on_generic_system_event` is missing
from `RealTimeEventListener`, leaving no interface for bot developers to
implement.
The generated model `V4GenericSystemEvent` and the `V4Payload.generic_system_event`
field already exist — only the two hand-maintained dispatch files need updating.
## Proposed fix
1. Add `GENERICSYSTEMEVENT = ("on_generic_system_event", "generic_system_event")`
to the `RealTimeEvent` enum.
2. Add `async def on_generic_system_event(self, initiator, event)` no-op to
`RealTimeEventListener`.
Total change: 2 files, ~15 lines (with comments)
Contributor guide
Assessment
This issue has not been assessed yet.