- Introduced a new API structure with FastAPI, including routers for runs and settings.
- Implemented endpoints for creating, listing, and retrieving run configurations.
- Added settings management with load and update functionality.
- Integrated SQLite checkpointing for durable state management during analysis.
- Updated dependencies in `pyproject.toml` and `requirements.txt` to include FastAPI and related packages.
- Enhanced `.gitignore` to exclude SQLite checkpoints and results directories.
Prevents UnicodeEncodeError on Windows where the default encoding
(cp1252/gbk) cannot handle Unicode characters in LLM output.
Closes#77, closes#114, closes#126, closes#215, closes#332
- Add save prompt after analysis with organized subfolder structure
- Fix report truncation by using sequential panels instead of Columns
- Add optional full report display prompt
- Add update_analyst_statuses() for unified status logic (pending/in_progress/completed)
- Normalize analyst selection to predefined ANALYST_ORDER for consistent execution
- Add message deduplication to prevent duplicates from stream_mode=values
- Restructure streaming loop so state handlers run on every chunk
- Add StatsCallbackHandler for tracking LLM calls, tool calls, and tokens
- Integrate callbacks into TradingAgentsGraph and all LLM clients
- Dynamic agent/report counts based on selected analysts
- Fix report completion counting (tied to agent completion)