Skip to content

Conversation

@bertllll
Copy link
Contributor

@bertllll bertllll commented Oct 9, 2025

Note

Refactors gas price computation and retry strategy, hardens/reschedules scans (incl. receivables), renames pending-failure terminology, tweaks blockchain/web3 handling, and updates CI/tests.

  • Gas pricing & retries:
    • Replace DEFAULT_GAS_PRICE_MARGIN with DEFAULT_GAS_PRICE_RETRY_PERCENTAGE and add DEFAULT_GAS_PRICE_RETRY_CONSTANT.
    • Rename increase_gas_price_by_marginincrease_by_percentage; adjust pricing of new/retry txs (retry: percentage if latest≥prev, else add constant).
    • Set retry template amount to latest payable balance; add detailed logging.
  • Scan scheduling/resilience:
    • Introduce UnableToStartScanner (replacing PayableSequenceScanner) and add explicit handling for Receivables.
    • Rename time_until_next_scancompute_time_to_next_scan; reset_scan_timer(&Logger).
    • Schedule retry-payable scans via delayed notify with configurable interval; refine rescheduling-on-error decisions and logging.
    • Accountant: adjust handlers to avoid unintended unwinding, restore scan train after errors, and reschedule receivables appropriately.
  • Pending payable scanner:
    • Rename "unproven" → "suspected" failures across code/logs/APIs.
    • Add debug logs; restructure confirmation handling ("standard" confirmations) and cache usage.
  • Blockchain/Web3:
    • Use inclusive block-range end (end = start + range - 1); update new start-block math.
    • Broaden max-block-range regex; warn on batch submit failures; avoid duplicate error messages by unifying futures branch.
    • Use transaction_count(address, None); add nonce logging.
  • CI & tests:
    • CI: macOS runner moved to macos-latest.
    • Widespread test updates for renamed APIs, new timings, logging, ceilings, and adjusted expectations.
    • Add extra mainnet RPC endpoints in integration tests.

Written by Cursor Bugbot for commit 422038f. This will update automatically on new commits. Configure here.

}

pub fn acknowledge_scan_error(&mut self, error: &ScanError, logger: &Logger) {
debug!(logger, "Acknowledging a scan that couldn't finish");
Copy link
Collaborator

Choose a reason for hiding this comment

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

Perhaps you could add more details to this log, using the contents of the error.

utkarshg6 and others added 11 commits October 16, 2025 15:02
* Fixed the AddRouteResultMessage panic problem too

* Preemptive review issues

* Formatting

* example.com -> www.example.com

* Formatting

* Added some debug logging to track RRI

* Formatting

* Clippy

* Made RRI logs more consistent and increased straggler timeout to 30s

* Typo corrections

* Interim commit

* Tests pass

* Unit tests pass

* Interim commit: a real mess

* Proxy Server tests passing; some cleanup yet to do

* Unit tests are all passing

* Unit and multinode tests pass

* All the tests pass now

* Tests passing except one in proxy_client

* RRIDs are completely gone; hostnames are mandatory.

* MOre review issues

* Review issues

* Test is passing now, and code is cleaner

* Cleaned up some code

* More review issues

* Formatting

* Added packet describers

* Error message change.

* log messages enhanced of StreamKey

---------

Co-authored-by: czarte <[email protected]>
)

Revert "Breaking change to remove RRID from CORES packages (#740)"
This reverts commit a151e96.
* update ci-matrix to test new runners

* Revert Windows runner in CI matrix

Moving windows runner back to 2022, so we can allow macos-latest to fully run through Actions
* Refine regex for max block count extraction and add test

Updated regex to capture maximum block count from error messages more accurately - namely update to Nodies provider. Added a new test case for extracting this specific error response.

* Fix inclusive range calculation for block scanning in BlockchainInterfaceWeb3
Adjusted the end block marker calculation to correctly account for inclusive ranges by subtracting 1 from the scan range. T

* Fix block marker calculations in tests for blockchain bridge and interface. Adjusted expected new start block values to ensure accurate transaction retrieval and logging.
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

This PR is being reviewed by Cursor Bugbot

Details

Your team is on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle for each member of your team.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

}

pub fn acknowledge_scan_error(&mut self, error: &ScanError, logger: &Logger) {
debug!(logger, "Acknowledging a scan that couldn't finish");
Copy link

Choose a reason for hiding this comment

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

Bug: Insufficient logging detail in scan error handler (Bugbot Rules)

The debug log in acknowledge_scan_error logs a generic message without including error details. The PR reviewer explicitly requested adding more details using the contents of the error parameter, which contains scan_type, response_skeleton_opt, and msg fields that would aid debugging. The commit adds the log but doesn't incorporate the error's contents as requested.

Fix in Cursor Fix in Web

Bert and others added 4 commits November 20, 2025 13:44
* GH-827: add boilerplate code

* GH-827: introduce new logic

* GH-827: some renamings for clarity

* GH-827: fix test estimate_transaction_fee_total_works_for_retry_txs

* GH-827: refactor test estimate_transaction_fee_total_works_for_retry_txs

* GH-827: fix test returns_correct_priced_qualified_payables_for_retry_payable_scan

* GH-827: fix test blockchain_interface_web3_can_introduce_blockchain_agent_in_the_retry_payables_mode

* GH-827: fix 2 more tests

* GH-827: refactor retry_payables_gas_price_ceiling_test_of_border_value_if_the_previous_attempt_being_bigger

* GH-827: review changes
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.

6 participants