Implement GET /v1/trades/{address} endpoint#51
Implement GET /v1/trades/{address} endpoint#51findolor wants to merge 1 commit intoimplement-trades-tx-hashfrom
Conversation
Add paginated trades-by-owner-address endpoint with unified TradesDataSource trait, update rain.orderbook submodule with owner trades queries and address casing fix.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
10c59f1 to
0a05197
Compare
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
How to use the Graphite Merge QueueAdd the label add-to-gt-merge-queue to this PR to add it to the merge queue. You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
0a05197 to
10c59f1
Compare

Chained PRs
Motivation
See issues:
Add a paginated endpoint to retrieve all trades for a given owner address across all configured orderbooks, with optional time filtering. Replaces #40, which was based on the old chain (#39) and couldn't merge cleanly. This branch is rebased on top of
implement-trades-tx-hash(PR #50).Solution
GET /v1/trades/{address}with pagination (page,pageSize) and optional time filters (startTime,endTime)TradesDataSourcetrait withget_trades_for_ownermethod that iterates all configured orderbooks and aggregates trades and total countsRaindexTradesDataSourceviarun_with_client, convertingTradesPaginationParamsintoPaginationParams+TimeFilterwith overflow validationRaindexTradeintoTradeByAddressresponse type (tx_hash, formatted amounts,TokenReffor input/output tokens, order_hash, timestamp, block_number)div_ceil, has_more)rain.orderbooksubmodule (ff9578c→a612a4f) to bring inget_trades_for_owner(),RaindexTradesListResult,PaginationParams,TimeFilter,OrderbookIdentifierParams, and address casing fixget_by_tx.rsmock to implement the new trait methodChecks
By submitting this for review, I'm confirming I've done the following:
fix #29