-
Notifications
You must be signed in to change notification settings - Fork 138
feat / Improved Order Polling, Enhanced Connector Configuration, and Rate Oracle API #106
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
cardosofede
wants to merge
8
commits into
main
Choose a base branch
from
feat/improve_order_polling_and_connectors_config_map
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
feat / Improved Order Polling, Enhanced Connector Configuration, and Rate Oracle API #106
cardosofede
wants to merge
8
commits into
main
from
feat/improve_order_polling_and_connectors_config_map
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
|
Commit 36c87a6
|
Contributor
|
Commit dae36a2
Test rate-oracle routes
Test rate-oracle/config with invalid source ❗
Incase needed see attached test logs 09012026.log |
Contributor
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

This PR enhances the order management system by implementing automatic synchronization between the connector's in-flight orders and the database. A new polling mechanism runs every minute to sync order states, ensuring the database accurately reflects order status as reported by the exchange (OPEN, FILLED, CANCELLED, etc.). Terminal orders (filled, cancelled, failed) are automatically cleaned up from the connector's in-flight orders to prevent memory buildup and stale data.
A new Rate Oracle router has been added to expose price feed configuration and rate querying capabilities via REST API. The /rate-oracle endpoints allow clients to view and update the rate oracle source (binance, kucoin, etc.) and global token settings, with changes persisted to conf_client.yml and applied to the running instance immediately. Additional endpoints provide access to cached prices, single pair rates, and async rate fetching directly from the exchange source.
The connector configuration endpoint has been enhanced to return richer metadata about each field including type information, required status, and allowed values for Literal types. A critical bug fix also addresses an issue where adding new connector credentials would fail with 'NoneType' object has no attribute 'encrypt_secret_value' - this was caused by Python's class attribute inheritance where the secrets manager wasn't being set on the parent Security class that hummingbot's internal methods access directly.
QA Test Plan