ipor-fusion 4.1.0.dev44__tar.gz → 4.1.0.dev46__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/PKG-INFO +1 -1
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/pyproject.toml +1 -1
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/options.py +1 -1
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_commands.py +20 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.claude-plugin/marketplace.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.claude-plugin/plugin.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.env.example +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.gemini/settings.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.git-blame-ignore-revs +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/cd.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/ci.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/commit-lint.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/notify-slack.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/python-build.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/python-publish.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/release.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.github/workflows/report-slack.yml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.gitignore +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.pre-commit-config.yaml +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/.python-version +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/AGENTS.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/CHANGELOG.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/CLAUDE.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/CODEOWNERS +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/LICENSE +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/MIGRATION_4.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/README.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/build.sh +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/CONTRIBUTING.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/README.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/advanced_euler_v2_credit_market_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/advanced_euler_v2_looping_arbitrum.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/crosschain_ccip_usdc_arbitrum_hyperevm.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/external_state_margin_leg_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/hypercore_vault_official_deployment_hyperevm.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/simple_aave_v3_supply_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/pytest.ini +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/scripts/commit-check.sh +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/scripts/fusion_error_signatures.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/skills/ipor-deploy-vault/SKILL.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/about.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cache.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/chains.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/address_cmd.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/changelog_cmd.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/config_cmd.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/config_store.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/main.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/market_cmd.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/oracle_mapping_view.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/preflight_cmd.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/vault_cmd.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/vault_health.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/vault_info_view.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/vault_markets_view.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/vault_rendering.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/config/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/config/roles.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/access.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/address.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/context.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/context_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/contract.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/erc20.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/external_state_executor.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/fee_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/fuse.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/fuse_action.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/fuse_decoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/fusion_factory.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/logs.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/multicall.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/oracle.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/plasma_vault.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/rewards_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/simulation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/simulation_result.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/withdraw_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/chainlink.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/codec.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/contracts.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/events.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/indexer.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/lane.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/quote.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/transport.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/contracts.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/discovery.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/errors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/ccip.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/stargate.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/lane.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/logs.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/messages.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/simulation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/contracts.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/lane.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/layerzero.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/transport.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/transport.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/dependency_graph.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/entry_cli.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/entry_mcp.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/errors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/explorer.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/field_docs.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/aave_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/async_action.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/compound_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/erc4626.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/euler_v2.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/events.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/external_state.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/external_state_event_decoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/fluid_instadapp.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/gearbox_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/hypercore.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/hypercore_event_decoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/hypercore_pre_hooks.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/merkl.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/morpho.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/ramses_v2.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/uniswap_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/universal.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fusion_errors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/guide/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/guide/architecture.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/guide/glossary.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/guide/invariants.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/guide/quickstart.md +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/hypercore/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/market_ids.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/market_info.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/mcp/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/mcp/guide.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/mcp/models.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/mcp/server.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/morpho_api.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/preflight.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/py.typed +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/__init__.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/aave_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/aave_v4.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/compound_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/euler_v2.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/hypercore.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/hypercore_outcome.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/lending_health.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/morpho.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/oracle_mapping.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/oracle_mapping_nodes.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/oracle_mapping_reader.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/position_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/ramses_v2.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/uniswap_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/unpriceable.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/registry.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/substrates.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/types.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/validation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/vault_data.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/vault_erc20.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/vault_info.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/vault_managers.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/vault_positions.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/vault_reads.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/UniswapV3UniversalRouter.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_addresses.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_crosschain.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_crosschain_lifecycle.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_crosschain_recovery.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_euler_v2.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_event_args.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_fake_rpc.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_foundry.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_golden.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_guide.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_hypercore_model.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_hypercore_shadow.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_live.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_multicall.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_oracle_mapping_fake.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_simulate.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/_validation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/addresses.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/conftest.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/constants.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/hypercore_hip3_flow.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/hypercore_market55.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/hypercore_official.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/meta_morpho_v1.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/meta_morpho_v1.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/meta_morpho_v2.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/meta_morpho_v2.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_api/market.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_api/vault_v1.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_api/vault_v2.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_api/vault_v2_not_found.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_blue.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_blue.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_blue_api_error.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_blue_api_error.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_blue_no_api.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/morpho_blue_no_api.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/oracle_mapping_golden/mapping.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/oracle_mapping_golden/mapping.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/simulate_v1_request.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/clean.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/clean.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/clean.txt +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/deployment_error.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/deployment_error.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/deployment_error.txt +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/fetched.cli.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/fetched.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/fetched.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/full.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/full.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/full.txt +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/rich.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/rich.mcp.json +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/vault_info_golden/rich.txt +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_about.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_access_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_addresses_helper.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cache.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_chains.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_address.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_changelog.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_config_store.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_helpers.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_hypercore.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_lending_health.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_market_golden.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_market_morpho_blue.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_mcp_parity.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_oracle_mapping.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_oracle_mapping_golden.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_pending_requests_scan.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_preflight.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_role_accounts.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_vault_info_golden.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_vault_predates_getters.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_cli_vault_validate.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_contract_call.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_contract_encoder.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_ccip_events.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_ccip_indexer.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_ccip_quote.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_chainlink.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_contracts.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_encoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_errors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_lane.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_layering.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_crosschain_transport.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_docs_typing.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_erc20.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_error_hierarchy.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_examples_crosschain.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_examples_euler_looping_arbitrum.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_examples_hypercore_hyperevm.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_examples_vaults.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_explorer.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_external_state_events.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_external_state_executor.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_fee_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_fuse_decoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_fuse_encoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_fusion_errors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_fusion_instance.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_governance_wrappers.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_guide.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_deployment.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_events.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_flow.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_live.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_outcome.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_pre_hooks.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_readers.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_hypercore_simulation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_logs.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_mcp_address.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_mcp_hypercore.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_mcp_models.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_mcp_preflight.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_mcp_server.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_mcp_vault_validate.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_multicall.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_oracle.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_oracle_mapping.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_plasma_vault.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_preflight.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_public_api.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_public_type_reachability.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_reader_encoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_registry.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_revert_decoding.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_rewards_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_roles.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_sdk_layering.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_borrow_aave_v3_mainnet.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_claim_merkl_wrapper_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_claim_morpho_rewards.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_crosschain_hyperevm.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_euler_v2_batch_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_euler_v2_credit_market_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_euler_v2_swap_deploy_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_euler_v2_swap_reconfigure_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_euler_v2_swap_registry_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_examples_arbitrum.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_examples_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_examples_crosschain.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_examples_hyperevm.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_external_state_executor_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_fusion_factory_clone_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_looping_aave_v3_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_looping_morpho_blue_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_morpho_blue.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_pilot_v3.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_pilot_v4_uniswap.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_pilot_v5_ramses.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_pilot_v5_scheduled.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_plasma_vault_setters_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_preflight_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_readers_integration.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_release_funds.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_swap_on_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_timelock_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulate_vault_from_scratch_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulation_errors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_simulation_observation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_solidity_compiler.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_solidity_mirrors.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_substrates.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_types_and_events.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_unpriceable_tokens.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_validation.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_data_block.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_dep_graph.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_info_fetched_golden.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_info_onchain_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_info_onchain_base_no_withdraw_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_reconciliation_onchain_base.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_vault_simulator_blocks.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_web3_context.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/test_withdraw_manager.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/typed_client/consumer.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/typed_client/rejected.py +0 -0
- {ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/uv.lock +0 -0
|
@@ -138,7 +138,7 @@ def _resolve_provider(cfg: FusionConfig, chain_id: ChainId) -> str:
|
|
|
138
138
|
return provider_url
|
|
139
139
|
raise click.UsageError(
|
|
140
140
|
f"No provider for chain {chain_id}. "
|
|
141
|
-
f"Use 'fusion config set-provider {chain_id}
|
|
141
|
+
f"Use 'fusion config set-provider <url> --chain-id {chain_id}'"
|
|
142
142
|
)
|
|
143
143
|
|
|
144
144
|
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import json
|
|
2
|
+
import re
|
|
3
|
+
import shlex
|
|
2
4
|
from dataclasses import dataclass
|
|
3
5
|
from unittest.mock import MagicMock, patch
|
|
4
6
|
|
|
@@ -182,6 +184,24 @@ class TestConfigSetProvider:
|
|
|
182
184
|
assert "Detected chain ID: 42161" in result.output
|
|
183
185
|
assert "Provider for chain 42161 set" in result.output
|
|
184
186
|
|
|
187
|
+
def test_no_provider_hint_runs_as_printed(self, tmp_config):
|
|
188
|
+
failed = CliRunner().invoke(
|
|
189
|
+
cli, ["vault", "info", ADDR_1, "--chain-id", "42161"]
|
|
190
|
+
)
|
|
191
|
+
assert failed.exit_code == 2
|
|
192
|
+
hint = re.search(r"'fusion (.+)'", failed.output)
|
|
193
|
+
assert hint is not None, failed.output
|
|
194
|
+
args = [
|
|
195
|
+
"https://arb-rpc.example.com" if arg == "<url>" else arg
|
|
196
|
+
for arg in shlex.split(hint.group(1))
|
|
197
|
+
]
|
|
198
|
+
|
|
199
|
+
result = CliRunner().invoke(cli, args)
|
|
200
|
+
assert result.exit_code == 0, result.output
|
|
201
|
+
|
|
202
|
+
cfg_data = json.loads(tmp_config[1].read_text(encoding="utf-8"))
|
|
203
|
+
assert cfg_data["providers"]["42161"] == "https://arb-rpc.example.com"
|
|
204
|
+
|
|
185
205
|
|
|
186
206
|
class TestConfigSetEtherscanKey:
|
|
187
207
|
def test_saves_key(self, tmp_config):
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/advanced_euler_v2_credit_market_base.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/advanced_euler_v2_looping_arbitrum.py
RENAMED
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/examples/external_state_margin_leg_base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/oracle_mapping_view.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/cli/vault_markets_view.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/external_state_executor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/simulation_result.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/core/withdraw_manager.py
RENAMED
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/__init__.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/chainlink.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/codec.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/contracts.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/events.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/indexer.py
RENAMED
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/quote.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/ccip/transport.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/__init__.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/base.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/ccip.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/fuses/stargate.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/simulation.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/__init__.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/contracts.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/lane.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/layerzero.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/crosschain/stargate/transport.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/fluid_instadapp.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/fuses/hypercore_pre_hooks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/hypercore_outcome.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/lending_health.py
RENAMED
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/oracle_mapping.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/oracle_mapping_nodes.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/oracle_mapping_reader.py
RENAMED
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/src/ipor_fusion/readers/position_manager.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/meta_morpho_v1.json
RENAMED
|
File without changes
|
|
File without changes
|
{ipor_fusion-4.1.0.dev44 → ipor_fusion-4.1.0.dev46}/tests/fixtures/market_golden/meta_morpho_v2.json
RENAMED
|
File without changes
|
|
File without changes
|