in src/backend/entrypoints/llm_backend/infrastructure/session.py [0:0]
def to_dict(self):
data_dict = asdict(self)
data_dict = {k: v for k, v in data_dict.items() if not k.startswith("_")}
data_dict["step_fetch"]["done"] = self._statuses.get(Steps.FETCH_TICKERS, False)
data_dict["step_submit_llm_chat"]["done"] = self._statuses.get(Steps.SUBMIT_LLM_CHAT, False)
data_dict["step_indicators"]["done"] = self._statuses.get(Steps.CALCULATE_INDICATORS, False)
data_dict["step_backtesting"]["done"] = self._statuses.get(Steps.PERFORM_BACKTESTING, False)
data_dict["step_optimization"]["done"] = self._statuses.get(Steps.OPTIMIZE, False)
for key, value in data_dict.items():
if isinstance(value, dict):
formatted_dict = {}
for subkey, subvalue in value.items():
if isinstance(subkey, Enum):
subkey = subkey.value
formatted_dict[subkey] = subvalue
data_dict[key] = formatted_dict
elif isinstance(value, Enum):
data_dict[key] = value.value
return data_dict