Skip to content

feat: add extraction of transaction inputs beyond tx.value#22

Merged
AndreAugusto11 merged 1 commit into
mainfrom
tx-input
Jul 17, 2025
Merged

feat: add extraction of transaction inputs beyond tx.value#22
AndreAugusto11 merged 1 commit into
mainfrom
tx-input

Conversation

@AndreAugusto11

Copy link
Copy Markdown
Owner
  • finish Mayan generation of cctxs

@AndreAugusto11 AndreAugusto11 requested a review from Copilot July 4, 2025 11:38

This comment was marked as outdated.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

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 input data.
  • Introduce swap‐chain resolution and post‐processing to populate middle_src/middle_dst fields.
  • 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_from label for middle_src_token, which is misleading. Update the label to middle_src_token for 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"

Comment thread rpcs/rpc_client.py Outdated
Comment thread generator/common/price_generator.py Outdated
Comment thread extractor/extractor.py
@AndreAugusto11 AndreAugusto11 force-pushed the tx-input branch 6 times, most recently from 1564dc2 to 05767ee Compare July 14, 2025 23:48
* 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>
@AndreAugusto11 AndreAugusto11 merged commit 978ac64 into main Jul 17, 2025
11 of 13 checks passed
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.

2 participants