Repository navigation
refactor: split platform entry into route modules - #1005
Conversation
Keep main as an explicit named re-export surface for tests and process entry, with routes and wiring moved into dedicated modules. Co-authored-by: Cursor <cursoragent@cursor.com>
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9ff2e2e8c0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Align IBKR entry with explicit re-export facade and point i18n/handler extract tests at notifications_runtime and http_routes after the split. Co-authored-by: Cursor <cursoragent@cursor.com>
Align with Binance Wave2: main is a named-export module facade only, with Flask/wiring living in split modules. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3368ed99d5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Keep facade IB_HOST authoritative, resolve __main__ entry, pass the main facade into settlement, and ship split modules in py-modules. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep script-launch entry resolution consistent with http_routes. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bb6f94518c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cbbd7f7fee
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
runtime_wiring and strategy_plugins_runtime must find the script entrypoint facade so composer/plugin helpers resolve across modules. Co-authored-by: Cursor <cursoragent@cursor.com>
AI assistance
Cursor Auto (Composer) with local agent session. Owner authorized commit,
push, and PR for untangle Wave2.
What changed
main.pysplit intohttp_routes,runtime_wiring,notifications_runtime, andstrategy_plugins_runtime.main.pyis a Binance-style thin facade: explicit named re-exportsonly (no
import */_export), plus a module facade that forwardsattribute writes to the owning implementation module.
main.application/http_routes.pyhelpers remain; top-level Flask appand cycle runners move out of
main.main.<name>proxy in splitmodules; split modules reload when
mainreloads.How verified
compileallon split modules.pytest tests/test_request_handling.pyerrors on both this branch andorigin/mainfor missing local pinib_insync— env issue, not a splitregression. No new failure delta vs baseline under the same PYTHONPATH.
Why
Prior #1002 closed after
import */_exportpublic surface caused realregressions. Wave2 redo follows the Binance thin-main pattern so tests and
process entry keep a stable, patchable
mainsurface.Risk
Low structure-only refactor. Labels:
agent-approved+risk:lowonly.