feat: add extraction of transaction inputs beyond tx.value#22
Merged
Conversation
AndreAugusto11
commented
Jul 4, 2025
Owner
- finish Mayan generation of cctxs
5e371e9 to
4c366be
Compare
There was a problem hiding this comment.
Pull Request Overview
Enhance transaction input extraction and enrich Mayan cross-chain data generation with intermediary swap and auction details.
- Extend RPC clients and base models to capture transaction
inputdata. - Introduce swap‐chain resolution and post‐processing to populate
middle_src/middle_dstfields. - Update generators to calculate USD values for intermediary amounts and include auction metrics; adjust tests and configs accordingly.
Reviewed Changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/mayan/test_resolve_swaps.py | Add tests for swap‐chain resolution in MayanHandler |
| tests/mayan/test_data_extraction.py | Update expected event counts after data extraction |
| rpcs/rpc_client.py | Log RPC errors and adjust backoff logic |
| rpcs/evm_rpc_client.py | Include input field from EVM receipt |
| rpcs/alchemy_client.py | Handle Alchemy rate‐limit responses |
| repository/mayan/repository.py | Add get_all_forwarded_eth, update methods |
| repository/mayan/models.py | Add middle_*, auction fields and remove duplicated model |
| repository/common/models.py | Add input_data column to BlockchainTransaction |
| repository/base.py | Add has_records helper |
| generator/mayan/generator.py | Calculate USD values for intermediary amounts and auctions |
| generator/common/price_generator.py | Skip Solana metadata fetch and clean up comments |
| extractor/solana_extractor.py | Skip existing transactions earlier and include swap events |
| extractor/mayan/handler.py | Implement swap aggregation, post-processing and new payloads |
| extractor/extractor.py | Add post‐processing hook |
| extractor/evm_extractor.py | Fallback to per‐transaction handling on batch failure |
| extractor/ccip/handler.py | Update CCIP event topic comment |
| extractor/base_handler.py | Implement default transaction handlers and post_processing |
| docker-compose.yaml | Bump solana-decoder image tag |
| config/rpcs_base_config.yaml | Add new Base RPC endpoints and Solana provider |
| cli/cli.py | Invoke post_processing for final EVM extractor run |
| .vscode/launch.json | Add debug config for Mayan generator |
| .github/workflows/tests.yml | Remove continue-on-error to fail on test errors |
Comments suppressed due to low confidence (2)
repository/mayan/models.py:381
- The repr uses
mint_fromlabel formiddle_src_token, which is misleading. Update the label tomiddle_src_tokenfor clarity.
f"mint_from={self.middle_src_token}, fee_manager_program={self.fee_manager_program}, "
tests/mayan/test_data_extraction.py:38
- [nitpick] The assertion message is missing a trailing period for consistency with other messages. Consider adding it to match style.
assert len(events) == 264, "Expected 264 events in MayanSwapAndForwarded table after extraction"
1564dc2 to
05767ee
Compare
* changed Mayan Finance cctx construction with intermediary token values * added Mayan Finance post-processing to use tx input data * changed logic to extract tokens being sent in Solana in DEXes Signed-off-by: André Augusto <andre.augusto@tecnico.ulisboa.pt>
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
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.