What Analyses Produce
Analyses generate two main types of findings:Security Findings
Comprehensive analysis of potential security vulnerabilities including:- Critical: Immediate threats that could lead to loss of funds or contract compromise
- High: Significant security risks that should be addressed promptly
- Medium: Moderate security concerns that warrant attention
- Low: Minor issues or best practice violations
- Info: Informational findings and recommendations
Gas Findings
Optimization opportunities to improve contract efficiency:- Gas Optimization: Recommendations to reduce gas consumption
- Storage Optimization: Suggestions for more efficient storage patterns
- Function Optimization: Tips for optimizing function execution costs
Analysis Scope
When creating an analysis, you can specify the scope in order to focus on specific areas of your codebase. We constrain these to what we consider “auditable” functions, which are are entry points to your smart contract that meet specific criteria:- Public Accessibility: Functions that can be called by external users or contracts
- State Modification: Functions that read or write contract state
- Entry Points: Functions that serve as the primary interface to your contract’s functionality
Contracts can inherit or override functions, so the context in which functions are called is important for accurate analysis. BevorAI considers inheritance chains and function overrides when determining analysis scope.
Creating Analyses
Basic Analysis Creation
Scoped Analysis Creation
Analysis Lifecycle
1. Analysis Creation
- Specify project, code version, and scope
- Analysis is queued for processing
- Receive analysis ID for tracking
2. Processing
- AI models analyze your code
- Security and gas findings are generated
- Results are compiled and categorized
3. Results
- Review findings by severity
- Analyze gas optimization opportunities
- Plan remediation strategy
4. Iteration
- Address findings in your code
- Create new code version
- Run additional analyses to verify fixes
Best Practices
Multiple Analyses
Since analyses are non-deterministic, create multiple analyses for the same code version:Scope Selection
Choose appropriate scope based on your needs:- Development Phase: Use entire codebase scope for comprehensive analysis
- Feature Testing: Use specific functions scope for targeted analysis
- Large Projects: Use specific contracts scope for manageable analysis
Human Review Process
- Automated Analysis: Let BevorAI identify potential issues
- Expert Review: Have security experts validate findings
- Business Logic: Assess findings in context of your specific use case
- Prioritization: Focus on critical and high-severity issues first
- Remediation: Implement fixes and verify with follow-up analyses
Continuous Improvement
We’re constantly working on improving the functionality and performance of analyses. New analysis techniques, expanded vulnerability detection, and enhanced gas optimization recommendations are regularly added to provide more comprehensive and accurate results.
What We’re Improving
- Detection Accuracy: Enhanced AI models for better vulnerability detection
- Performance: Faster analysis processing and more efficient analysis
- Coverage: Expanded support for new Solidity features and patterns
- Gas Analysis: More sophisticated gas optimization recommendations
- Integration: Better integration with development workflows
Integration Examples
CI/CD Integration
Development Workflow
Getting Started
- Create a Project: Set up a project in your team
- Upload Code: Create a code version with your smart contract code
- Run Initial Analysis: Start with entire codebase scope
- Review Findings: Analyze security and gas findings
- Iterate: Address issues and run follow-up analyses
Start Your First Analysis
Create a project and run your first security analysis
