Skip to content

organized a lot, updated docs, and did some general codebase improvements#76

Merged
sixtysixx merged 4 commits intoChipaDevTeam:masterfrom
sixtysixx:master
Mar 9, 2026
Merged

organized a lot, updated docs, and did some general codebase improvements#76
sixtysixx merged 4 commits intoChipaDevTeam:masterfrom
sixtysixx:master

Conversation

@sixtysixx
Copy link
Copy Markdown
Collaborator

@sixtysixx sixtysixx commented Mar 9, 2026

Pull Request

Overview

organized a lot, updated docs, and did some general codebase improvements

Changes

added general error, can now build and check using cargo in root dir

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation / Examples
  • Performance / Refactoring
  • CI/CD / Build System

Validation

Describe how the changes were tested.

  • Unit tests
  • Integration tests
  • Manual verification

Environment

  • OS: wsl debian 13
  • Python Version: tested on 3.11, 3.13 and 3.15 but it took forever to build (like 5-6 mins) so i might try to cut down on that
  • Rust Version: 1.94.0

Checklist

  • Code follows project conventions and style guidelines.
  • Documentation and examples updated if necessary.
  • All tests pass locally.
  • No new warnings introduced.

Screenshots (Optional)

Add relevant visuals if applicable.

Summary by CodeRabbit

Release Notes

  • New Features

    • Introduced Bot Framework with event-driven hooks, contextual API, and strategy implementation for easier algorithmic trading.
    • Added Virtual Market for backtesting strategies without real capital.
    • Expanded market data capabilities including live streaming, historical OHLC data, and server synchronization.
    • Multi-language bindings support (Kotlin, Swift, C#, Go).
  • Platform Support

    • Enhanced PocketOption integration with quick trading and pending orders.
    • Extended ExpertOption support with improved core implementation.
    • IQ Option added to roadmap.
  • Chores

    • Transitioned package management from pnpm to bun.
    • Updated documentation and examples to reflect new framework features.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 9, 2026

Warning

Rate limit exceeded

@sixtysixx has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 3 minutes and 21 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f98f0048-d0e2-4c82-8024-6bc9a708bfb1

📥 Commits

Reviewing files that changed from the base of the PR and between 22df38d and dec8b94.

⛔ Files ignored due to path filters (9)
  • BinaryOptionsToolsUni/Cargo.lock is excluded by !**/*.lock
  • BinaryOptionsToolsV2/uv.lock is excluded by !**/*.lock
  • bun.lock is excluded by !**/*.lock
  • docs/tutorials/1.png is excluded by !**/*.png
  • docs/tutorials/2.png is excluded by !**/*.png
  • docs/tutorials/3.png is excluded by !**/*.png
  • docs/tutorials/4.png is excluded by !**/*.png
  • docs/tutorials/How to get SSID.docx is excluded by !**/*.docx
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (149)
  • .gitignore
  • .serena/project.yml
  • BinaryOptionsToolsV2/rust/build.rs
  • BinaryOptionsToolsV2/rust/src/framework.rs
  • BinaryOptionsToolsV2/rust/src/pocketoption.rs
  • Cargo.toml
  • README.md
  • agents/AGENTS.md
  • agents/guidelines.md
  • agents/product.md
  • agents/tech-stack.md
  • crates/binary_options_tools/Cargo.toml
  • crates/binary_options_tools/examples/pending_trades_example.rs
  • crates/binary_options_tools/src/error.rs
  • crates/binary_options_tools/src/pocketoption/modules/deals.rs
  • crates/binary_options_tools/src/pocketoption/modules/keep_alive.rs
  • crates/binary_options_tools/src/pocketoption/modules/pending_trades.rs
  • crates/binary_options_tools/src/pocketoption/modules/resilient_parsing_tests.rs
  • crates/binary_options_tools/src/pocketoption/modules/subscriptions.rs
  • crates/binary_options_tools/src/pocketoption/modules/trades.rs
  • crates/binary_options_tools/src/pocketoption/modules/trades_tests/concurrency.rs
  • crates/binary_options_tools/src/pocketoption/pocket_client.rs
  • crates/binary_options_tools/src/pocketoption/ssid.rs
  • crates/binary_options_tools/src/pocketoption/state.rs
  • crates/binary_options_tools/src/pocketoption/types.rs
  • crates/binary_options_tools/src/pocketoption/utils.rs
  • crates/core-pre/src/builder.rs
  • crates/core/data/batching.rs
  • crates/core/data/client2.rs
  • crates/core/data/client_enhanced.rs
  • crates/core/data/connection.rs
  • crates/core/data/events.rs
  • crates/core/src/error.rs
  • crates/core/src/general/client.rs
  • crates/core/src/general/send.rs
  • crates/core/src/general/stream.rs
  • crates/core/src/general/traits.rs
  • crates/core/src/general/types.rs
  • crates/core/src/general/validate.rs
  • crates/core/src/utils/time.rs
  • docs/OVERVIEW.md
  • docs/examples
  • docs/tutorials/How to get PocketOption SSID.txt
  • docs/tutorials/scripts/SSID_Fetcher_UserScript.user.js
  • docs/tutorials/scripts/howto.txt
  • examples/.gitignore
  • examples/csharp/Balance.cs
  • examples/csharp/Basic.cs
  • examples/csharp/Buy.cs
  • examples/csharp/CheckWin.cs
  • examples/csharp/Sell.cs
  • examples/csharp/Subscribe.cs
  • examples/csharp/index.md
  • examples/go/balance.go
  • examples/go/basic.go
  • examples/go/buy.go
  • examples/go/check_win.go
  • examples/go/index.md
  • examples/go/sell.go
  • examples/go/subscribe.go
  • examples/javascript/.gitignore
  • examples/javascript/binary-options-tools.node
  • examples/javascript/check_win.js
  • examples/javascript/create_raw_iterator.js
  • examples/javascript/create_raw_order.js
  • examples/javascript/get_balance.js
  • examples/javascript/get_candles.js
  • examples/javascript/get_deal_end_time.js
  • examples/javascript/history.js
  • examples/javascript/index.md
  • examples/javascript/logs.js
  • examples/javascript/payout.js
  • examples/javascript/raw_send.js
  • examples/javascript/stream.js
  • examples/javascript/stream_chunked.js
  • examples/javascript/validator.js
  • examples/kotlin/Balance.kt
  • examples/kotlin/Basic.kt
  • examples/kotlin/Buy.kt
  • examples/kotlin/CheckWin.kt
  • examples/kotlin/Sell.kt
  • examples/kotlin/Subscribe.kt
  • examples/kotlin/index.md
  • examples/python/.gitignore
  • examples/python/async/active_assets.py
  • examples/python/async/check_win.py
  • examples/python/async/comprehensive_demo.py
  • examples/python/async/context.txt
  • examples/python/async/create_raw_iterator.py
  • examples/python/async/create_raw_order.py
  • examples/python/async/get_balance.py
  • examples/python/async/get_candles.py
  • examples/python/async/get_open_and_close_trades.py
  • examples/python/async/history.py
  • examples/python/async/index.md
  • examples/python/async/log_iterator.py
  • examples/python/async/login_with_email_and_password.py
  • examples/python/async/logs.py
  • examples/python/async/payout.py
  • examples/python/async/raw_send.py
  • examples/python/async/rich_dashboard_bot.py
  • examples/python/async/strategy_example.py
  • examples/python/async/subscribe_symbol.py
  • examples/python/async/subscribe_symbol_chuncked.py
  • examples/python/async/subscribe_symbol_timed.py
  • examples/python/async/trade.py
  • examples/python/async/validator.py
  • examples/python/backtest_example.py
  • examples/python/sync/active_assets.py
  • examples/python/sync/check_win.py
  • examples/python/sync/create_raw_iterator.py
  • examples/python/sync/create_raw_order.py
  • examples/python/sync/get_balance.py
  • examples/python/sync/get_candles.py
  • examples/python/sync/get_open_and_close_trades.py
  • examples/python/sync/history.py
  • examples/python/sync/index.md
  • examples/python/sync/log_iterator.py
  • examples/python/sync/logs.py
  • examples/python/sync/payout.py
  • examples/python/sync/raw_send.py
  • examples/python/sync/subscribe_symbol.py
  • examples/python/sync/subscribe_symbol_chuncked.py
  • examples/python/sync/subscribe_symbol_timed.py
  • examples/python/sync/trade.py
  • examples/python/sync/validator.py
  • examples/ruby/balance.rb
  • examples/ruby/basic.rb
  • examples/ruby/buy.rb
  • examples/ruby/check_win.rb
  • examples/ruby/index.md
  • examples/ruby/sell.rb
  • examples/ruby/subscribe.rb
  • examples/rust/balance.rs
  • examples/rust/basic.rs
  • examples/rust/buy.rs
  • examples/rust/check_win.rs
  • examples/rust/index.md
  • examples/rust/sell.rs
  • examples/rust/subscribe_symbol.rs
  • examples/swift/Balance.swift
  • examples/swift/Basic.swift
  • examples/swift/Buy.swift
  • examples/swift/CheckWin.swift
  • examples/swift/Sell.swift
  • examples/swift/Subscribe.swift
  • examples/swift/index.md
  • mkdocs.yml
  • package.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sixtysixx
Copy link
Copy Markdown
Collaborator Author

also attempting to migrate away from npm/pnpm in favor of bun

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request focuses on enhancing the project's maintainability, usability, and expanding its functional capabilities. It introduces a more organized codebase structure, refines error handling across core components, and significantly improves the Python integration with a new bot framework. The changes also include comprehensive documentation updates and a migration to a more efficient package manager, aiming to streamline development and provide a clearer path for future extensions and multi-language support.

Highlights

  • Codebase Organization and Build System Improvements: The project structure has been significantly reorganized, including the introduction of a root Cargo.toml workspace, enabling building and checking from the root directory. The .gitignore has been updated to reflect new build artifacts and bun related logs.
  • Unified Error Handling in Core Crate: The crates/core module now uses a unified Error enum, replacing BinaryOptionsToolsError and BinaryOptionsResult, and introduces new specific error variants for better error management and clarity.
  • Enhanced Python Integration and Bot Framework: The Python PyStrategy class has been refined with clearer structure and docstrings for its methods. The README.md now prominently features a new 'Bot Framework' section, highlighting event-driven strategy development and a contextual API for various market platforms.
  • Documentation and Examples Restructuring: Documentation has been updated and reorganized, including new sections in README.md for supported platforms and the bot framework. The tutorials and docs/examples directories have been moved and integrated into the mkdocs.yml navigation for improved accessibility.
  • Dependency Updates and Package Manager Migration: Numerous new dependencies have been added to BinaryOptionsToolsUni/Cargo.lock, likely supporting the new framework features. The project has also migrated its JavaScript package manager from pnpm to bun, reflected in package.json and the new bun.lock file.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • .gitignore
    • Added entries for bun debug logs and bun-related files.
  • .serena/project.yml
    • Updated language list formatting.
    • Added a new read_only_memory_patterns configuration entry.
  • BinaryOptionsToolsUni/Cargo.lock
    • Added new dependencies including async-channel, binary-options-tools-core, concurrent-queue, crossbeam-channel, crossbeam-utils, deranged, event-listener, event-listener-strategy, num-conv, parking, powerfmt, time, time-core, time-macros, tokio-tungstenite, tracing-appender, and tungstenite.
    • Updated binary-options-tools-core-pre to depend on binary-options-tools-core.
  • BinaryOptionsToolsV2/rust/build.rs
    • Formatted the python_package_path construction for improved readability.
  • BinaryOptionsToolsV2/rust/src/framework.rs
    • Removed verbose comments from the PyStrategy struct.
    • Made the current_candle field public in PyStrategy.
    • Reordered use statements for consistency.
    • Added docstrings to several Python-exposed methods (trade, result, add, get, list_indicators, update, reset, period, PyContext.buy, PyContext.balance, PyVirtualMarket.update_price, PyBot.run).
    • Simplified error handling in StrategyWrapper methods.
  • BinaryOptionsToolsV2/rust/src/pocketoption.rs
    • Improved error messages for custom_period and lookback_period validation.
  • Cargo.toml
    • Added a new root Cargo.toml to define the workspace and its members.
  • README.md
    • Updated supported platforms to include ExpertOption (Alpha/Beta) and IQ Option (On Roadmap).
    • Added a new 'Bot Framework (New)' section detailing event-driven bots, contextual API, and strategy traits.
    • Updated Python code examples to reflect the new bot framework and simplified async API usage.
    • Updated the roadmap to reflect completed items and new features.
    • Added a link to 'Agents & AI' documentation.
  • agents/AGENTS.md
    • Added UniFFI binding generation commands for Kotlin, Swift, C#, and Go.
    • Updated the project structure description to detail core and binary_options_tools crates.
    • Added a new 'Framework & High-Level API' section.
    • Updated tooling installation instructions to use bun install.
  • agents/guidelines.md
    • Updated dependency management section to reflect bun as the JS package manager.
  • agents/product.md
    • No functional changes were made to this file.
  • agents/tech-stack.md
    • Updated dependency management section to reflect bun as the JS package manager.
  • bun.lock
    • Added a new bun.lock file, replacing package-lock.json for dependency management.
  • crates/binary_options_tools/Cargo.toml
    • Added binary-options-tools-core as a dependency.
    • Removed the [workspace] declaration, as it is now defined in the root Cargo.toml.
  • crates/binary_options_tools/src/error.rs
    • Added a Core error variant to wrap errors from binary_options_tools_core.
    • Removed the internal test module.
  • crates/binary_options_tools/src/pocketoption/modules/deals.rs
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/modules/keep_alive.rs
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/modules/pending_trades.rs
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/modules/resilient_parsing_tests.rs
    • Reordered use statements for consistency.
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/modules/subscriptions.rs
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/modules/trades.rs
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/modules/trades_tests/concurrency.rs
    • Reordered use statements for consistency.
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/pocket_client.rs
    • Applied minor formatting adjustments.
    • Improved duplicate trade blocking logic by updating recent_trades and pending_market_orders more consistently.
  • crates/binary_options_tools/src/pocketoption/ssid.rs
    • Improved the error message for double-encoded SSID parsing failures.
  • crates/binary_options_tools/src/pocketoption/state.rs
    • Reordered use statements for consistency.
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/types.rs
    • Reordered use statements for consistency.
    • Applied minor formatting adjustments.
  • crates/binary_options_tools/src/pocketoption/utils.rs
    • Applied minor formatting adjustments.
  • crates/core-pre/src/builder.rs
    • Corrected doc comment formatting.
  • crates/core/data/batching.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/data/client2.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/data/client_enhanced.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/data/connection.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/data/events.rs
    • Replaced BinaryOptionsResult with Result from crate::error.
  • crates/core/src/error.rs
    • Renamed BinaryOptionsToolsError to Error for brevity and consistency.
    • Removed MessageSendingError and MessageTransfer dependency.
    • Added new error variants: Timeout, Configuration, InvalidAsset, Platform, Context, and Other.
    • Updated From implementations for TungsteniteError and async_channel::SendError.
  • crates/core/src/general/client.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with crate::error::Result and crate::error::Error.
  • crates/core/src/general/send.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/src/general/stream.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/src/general/traits.rs
    • Replaced BinaryOptionsResult with Result from crate::error.
  • crates/core/src/general/types.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result from crate::error.
  • crates/core/src/general/validate.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • crates/core/src/utils/time.rs
    • Replaced BinaryOptionsResult and BinaryOptionsToolsError with Result and Error from crate::error.
  • docs/OVERVIEW.md
    • Updated documentation preview command to use bun run docs:serve.
  • docs/examples
    • Added a new directory with a single file ../examples.
  • docs/tutorials/How to get PocketOption SSID.txt
    • Renamed from tutorials/How to get PocketOption SSID.txt.
  • docs/tutorials/scripts/SSID_Fetcher_UserScript.user.js
    • Renamed from tutorials/scripts/SSID_Fetcher_UserScript.user.js.
  • docs/tutorials/scripts/howto.txt
    • Renamed from tutorials/scripts/howto.txt.
  • examples/.gitignore
    • Renamed from docs/examples/.gitignore.
  • examples/csharp/Balance.cs
    • Renamed from docs/examples/csharp/Balance.cs.
  • examples/csharp/Basic.cs
    • Renamed from docs/examples/csharp/Basic.cs.
  • examples/csharp/Buy.cs
    • Renamed from docs/examples/csharp/Buy.cs.
  • examples/csharp/CheckWin.cs
    • Renamed from docs/examples/csharp/CheckWin.cs.
  • examples/csharp/Sell.cs
    • Renamed from docs/examples/csharp/Sell.cs.
  • examples/csharp/Subscribe.cs
    • Renamed from docs/examples/csharp/Subscribe.cs.
  • examples/csharp/index.md
    • Renamed from docs/examples/csharp/index.md.
  • examples/go/balance.go
    • Renamed from docs/examples/go/balance.go.
  • examples/go/basic.go
    • Renamed from docs/examples/go/basic.go.
  • examples/go/buy.go
    • Renamed from docs/examples/go/buy.go.
  • examples/go/check_win.go
    • Renamed from docs/examples/go/check_win.go.
  • examples/go/index.md
    • Renamed from docs/examples/go/index.md.
  • examples/go/sell.go
    • Renamed from docs/examples/go/sell.go.
  • examples/go/subscribe.go
    • Renamed from docs/examples/go/subscribe.go.
  • examples/javascript/.gitignore
    • Renamed from docs/examples/javascript/.gitignore.
  • examples/javascript/check_win.js
    • Renamed from docs/examples/javascript/check_win.js.
  • examples/javascript/create_raw_iterator.js
    • Renamed from docs/examples/javascript/create_raw_iterator.js.
  • examples/javascript/create_raw_order.js
    • Renamed from docs/examples/javascript/create_raw_order.js.
  • examples/javascript/get_balance.js
    • Renamed from docs/examples/javascript/get_balance.js.
  • examples/javascript/get_candles.js
    • Renamed from docs/examples/javascript/get_candles.js.
  • examples/javascript/get_deal_end_time.js
    • Renamed from docs/examples/javascript/get_deal_end_time.js.
  • examples/javascript/history.js
    • Renamed from docs/examples/javascript/history.js.
  • examples/javascript/index.md
    • Renamed from docs/examples/javascript/index.md.
  • examples/javascript/logs.js
    • Renamed from docs/examples/javascript/logs.js.
  • examples/javascript/payout.js
    • Renamed from docs/examples/javascript/payout.js.
  • examples/javascript/raw_send.js
    • Renamed from docs/examples/javascript/raw_send.js.
  • examples/javascript/stream.js
    • Renamed from docs/examples/javascript/stream.js.
  • examples/javascript/stream_chunked.js
    • Renamed from docs/examples/javascript/stream_chunked.js.
  • examples/javascript/validator.js
    • Renamed from docs/examples/javascript/validator.js.
  • examples/kotlin/Balance.kt
    • Renamed from docs/examples/kotlin/Balance.kt.
  • examples/kotlin/Basic.kt
    • Renamed from docs/examples/kotlin/Basic.kt.
  • examples/kotlin/Buy.kt
    • Renamed from docs/examples/kotlin/Buy.kt.
  • examples/kotlin/CheckWin.kt
    • Renamed from docs/examples/kotlin/CheckWin.kt.
  • examples/kotlin/Sell.kt
    • Renamed from docs/examples/kotlin/Sell.kt.
  • examples/kotlin/Subscribe.kt
    • Renamed from docs/examples/kotlin/Subscribe.kt.
  • examples/kotlin/index.md
    • Renamed from docs/examples/kotlin/index.md.
  • examples/python/.gitignore
    • Renamed from docs/examples/python/.gitignore.
  • examples/python/async/active_assets.py
    • Renamed from docs/examples/python/async/active_assets.py.
  • examples/python/async/check_win.py
    • Renamed from docs/examples/python/async/check_win.py.
  • examples/python/async/comprehensive_demo.py
    • Renamed from docs/examples/python/async/comprehensive_demo.py.
  • examples/python/async/context.txt
    • Renamed from docs/examples/python/async/context.txt.
  • examples/python/async/create_raw_iterator.py
    • Renamed from docs/examples/python/async/create_raw_iterator.py.
  • examples/python/async/create_raw_order.py
    • Renamed from docs/examples/python/async/create_raw_order.py.
  • examples/python/async/get_balance.py
    • Renamed from docs/examples/python/async/get_balance.py.
  • examples/python/async/get_candles.py
    • Renamed from docs/examples/python/async/get_candles.py.
  • examples/python/async/get_open_and_close_trades.py
    • Renamed from docs/examples/python/async/get_open_and_close_trades.py.
  • examples/python/async/history.py
    • Renamed from docs/examples/python/async/history.py.
  • examples/python/async/index.md
    • Renamed from docs/examples/python/async/index.md.
  • examples/python/async/log_iterator.py
    • Renamed from docs/examples/python/async/log_iterator.py.
  • examples/python/async/login_with_email_and_password.py
    • Renamed from docs/examples/python/async/login_with_email_and_password.py.
  • examples/python/async/logs.py
    • Renamed from docs/examples/python/async/logs.py.
  • examples/python/async/payout.py
    • Renamed from docs/examples/python/async/payout.py.
  • examples/python/async/raw_send.py
    • Renamed from docs/examples/python/async/raw_send.py.
  • examples/python/async/rich_dashboard_bot.py
    • Renamed from docs/examples/python/async/rich_dashboard_bot.py.
  • examples/python/async/strategy_example.py
    • Renamed from docs/examples/python/async/strategy_example.py.
  • examples/python/async/subscribe_symbol.py
    • Renamed from docs/examples/python/async/subscribe_symbol.py.
  • examples/python/async/subscribe_symbol_chuncked.py
    • Renamed from docs/examples/python/async/subscribe_symbol_chuncked.py.
  • examples/python/async/subscribe_symbol_timed.py
    • Renamed from docs/examples/python/async/subscribe_symbol_timed.py.
  • examples/python/async/trade.py
    • Renamed from docs/examples/python/async/trade.py.
  • examples/python/async/validator.py
    • Renamed from docs/examples/python/async/validator.py.
  • examples/python/backtest_example.py
    • Renamed from docs/examples/python/backtest_example.py.
  • examples/python/sync/active_assets.py
    • Renamed from docs/examples/python/sync/active_assets.py.
  • examples/python/sync/check_win.py
    • Renamed from docs/examples/python/sync/check_win.py.
  • examples/python/sync/create_raw_iterator.py
    • Renamed from docs/examples/python/sync/create_raw_iterator.py.
  • examples/python/sync/create_raw_order.py
    • Renamed from docs/examples/python/sync/create_raw_order.py.
  • examples/python/sync/get_balance.py
    • Renamed from docs/examples/python/sync/get_balance.py.
  • examples/python/sync/get_candles.py
    • Renamed from docs/examples/python/sync/get_candles.py.
  • examples/python/sync/get_open_and_close_trades.py
    • Renamed from docs/examples/python/sync/get_open_and_close_trades.py.
  • examples/python/sync/history.py
    • Renamed from docs/examples/python/sync/history.py.
  • examples/python/sync/index.md
    • Renamed from docs/examples/python/sync/index.md.
  • examples/python/sync/log_iterator.py
    • Renamed from docs/examples/python/sync/log_iterator.py.
  • examples/python/sync/logs.py
    • Renamed from docs/examples/python/sync/logs.py.
  • examples/python/sync/payout.py
    • Renamed from docs/examples/python/sync/payout.py.
  • examples/python/sync/raw_send.py
    • Renamed from docs/examples/python/sync/raw_send.py.
  • examples/python/sync/subscribe_symbol.py
    • Renamed from docs/examples/python/sync/subscribe_symbol.py.
  • examples/python/sync/subscribe_symbol_chuncked.py
    • Renamed from docs/examples/python/sync/subscribe_symbol_chuncked.py.
  • examples/python/sync/subscribe_symbol_timed.py
    • Renamed from docs/examples/python/sync/subscribe_symbol_timed.py.
  • examples/python/sync/trade.py
    • Renamed from docs/examples/python/sync/trade.py.
  • examples/python/sync/validator.py
    • Renamed from docs/examples/python/sync/validator.py.
  • examples/ruby/balance.rb
    • Renamed from docs/examples/ruby/balance.rb.
  • examples/ruby/basic.rb
    • Renamed from docs/examples/ruby/basic.rb.
  • examples/ruby/buy.rb
    • Renamed from docs/examples/ruby/buy.rb.
  • examples/ruby/check_win.rb
    • Renamed from docs/examples/ruby/check_win.rb.
  • examples/ruby/index.md
    • Renamed from docs/examples/ruby/index.md.
  • examples/ruby/sell.rb
    • Renamed from docs/examples/ruby/sell.rb.
  • examples/ruby/subscribe.rb
    • Renamed from docs/examples/ruby/subscribe.rb.
  • examples/rust/balance.rs
    • Renamed from docs/examples/rust/balance.rs.
  • examples/rust/basic.rs
    • Renamed from docs/examples/rust/basic.rs.
  • examples/rust/buy.rs
    • Renamed from docs/examples/rust/buy.rs.
  • examples/rust/check_win.rs
    • Renamed from docs/examples/rust/check_win.rs.
  • examples/rust/index.md
    • Renamed from docs/examples/rust/index.md.
  • examples/rust/sell.rs
    • Renamed from docs/examples/rust/sell.rs.
  • examples/rust/subscribe_symbol.rs
    • Renamed from docs/examples/rust/subscribe_symbol.rs.
  • examples/swift/Balance.swift
    • Renamed from docs/examples/swift/Balance.swift.
  • examples/swift/Basic.swift
    • Renamed from docs/examples/swift/Basic.swift.
  • examples/swift/Buy.swift
    • Renamed from docs/examples/swift/Buy.swift.
  • examples/swift/CheckWin.swift
    • Renamed from docs/examples/swift/CheckWin.swift.
  • examples/swift/Sell.swift
    • Renamed from docs/examples/swift/Sell.swift.
  • examples/swift/Subscribe.swift
    • Renamed from docs/examples/swift/Subscribe.swift.
  • examples/swift/index.md
    • Renamed from docs/examples/swift/index.md.
  • mkdocs.yml
    • Updated navigation to include new 'Tutorials' section and moved 'Project Info' items to the root level.
  • package-lock.json
    • Removed the package-lock.json file.
  • package.json
    • Updated the packageManager to bun@1.3.10.
    • Updated the lint-staged dependency version.
Activity
  • The pull request author, sixtysixx, has organized the codebase, updated documentation, and implemented general codebase improvements.
  • The changes include bug fixes, documentation updates, performance enhancements, and refactoring.
  • Validation was performed using unit tests and manual verification.
  • The author noted that Python build times were long (5-6 minutes) and is looking into reducing them.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a wide range of improvements across the codebase, including significant project reorganization into a Cargo workspace, documentation updates, and a major refactoring of error handling in the core crate. The migration from pnpm to bun for JS tooling is also a notable change. Overall, these changes enhance the project's structure and maintainability. My review focuses on a couple of areas where documentation clarity has been reduced, which could impact future development and user experience.

Note: Security Review did not run due to the size of the PR.

Comment thread BinaryOptionsToolsV2/rust/src/framework.rs
Comment thread BinaryOptionsToolsV2/rust/src/framework.rs Outdated
@sixtysixx
Copy link
Copy Markdown
Collaborator Author

waiting for CI to finish, then merging

@sixtysixx

This comment was marked as off-topic.

@sixtysixx
Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 9, 2026

@sixtysixx Sure! I'll kick off a review of the PR now.

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 9, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@sixtysixx sixtysixx merged commit 4b9b22b into ChipaDevTeam:master Mar 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant