feat: add flexible BaseExecutor and BaseLeverageExecutor contracts#88
Open
Schlagonia wants to merge 1 commit intomasterfrom
Open
feat: add flexible BaseExecutor and BaseLeverageExecutor contracts#88Schlagonia wants to merge 1 commit intomasterfrom
Schlagonia wants to merge 1 commit intomasterfrom
Conversation
- BaseExecutor: Minimal generic execution framework with hooks - Simple target whitelisting via boolean mapping - Pre/post execution hooks for custom verification - Batch execution support with failure handling - Executor role management for external callers - Emergency pause mechanism - BaseLeverageExecutor: Extends BaseExecutor for leverage strategies - Leverage ratio tracking and enforcement - Automated leverage verification after execution - Total assets monitoring with loss protection - Emergency deleveraging capabilities - Configurable min asset balance and max execution loss - Comprehensive interfaces for both contracts - Detailed README with usage examples and security guide Security features: - Strict target whitelisting - ReentrancyGuard on all execution functions - Customizable verification hooks - Management-only configuration - Emergency controls 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
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.
Summary
This PR introduces flexible base contracts for strategies that need to perform complex operations through arbitrary calldata execution, particularly for leverage looping and borrowing activities.
Changes
Architecture
Key Features
BaseExecutor
BaseLeverageExecutor
Security Features
Testing Checklist
Notes
The design intentionally separates generic execution logic (BaseExecutor) from leverage-specific functionality (BaseLeverageExecutor) to provide maximum flexibility. Strategies can choose which base to inherit from based on their needs.
🤖 Generated with Claude Code