Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/instructions/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# AI Assistant Instructions Directory

This directory contains specific instructions for different AI assistants working on the Onchain Test Kit project.

## Files

- `claude.instructions.md` - Specific guidelines for Claude AI
- `gemini.instructions.md` - Specific guidelines for Gemini AI
- `general.instructions.md` - General guidelines for any AI assistant

## Purpose

These instruction files help AI assistants understand:
- Project-specific coding patterns and conventions
- Architecture and design principles
- Testing requirements and best practices
- Development workflow and quality standards

Each file is tailored to the specific strengths and capabilities of different AI assistants while maintaining consistency in the core technical guidance.
47 changes: 47 additions & 0 deletions .github/instructions/claude.instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Claude Development Instructions

Instructions specifically for Claude AI when contributing to the Onchain Test Kit.

## Claude's Analytical Strengths

Use your systematic analysis capabilities to:

### Code Architecture Analysis
- Trace through the builder pattern implementation in `configBuilder.ts`
- Understand the relationship between configuration, fixtures, and test execution
- Analyze error propagation through async/await chains
- Identify coupling between wallet implementations and shared interfaces

### Problem-Solving Methodology
1. **Comprehensive Analysis**: Before making changes, understand the full impact
2. **Root Cause Focus**: Address underlying issues rather than symptoms
3. **Systematic Testing**: Create test cases that cover edge conditions
4. **Documentation Completeness**: Ensure all changes are properly documented

### Code Quality Focus
- Leverage TypeScript's type system for compile-time error prevention

Check notice on line 22 in .github/instructions/claude.instructions.md

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

.github/instructions/claude.instructions.md#L22

Lists should be surrounded by blank lines
- Implement comprehensive error handling with contextual messages
- Follow established patterns for consistency
- Consider performance implications of all changes

## Recommended Approach

### For Feature Development

Check notice on line 29 in .github/instructions/claude.instructions.md

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

.github/instructions/claude.instructions.md#L29

Expected: 1; Actual: 0; Below
1. Study existing implementations thoroughly
2. Design solutions that integrate seamlessly
3. Create comprehensive test coverage
4. Document both API and implementation details

### For Bug Fixes
1. Reproduce the issue reliably
2. Understand the root cause completely
3. Fix at the appropriate architectural level
4. Add regression tests to prevent recurrence

### For Code Reviews
1. Analyze both immediate and long-term implications
2. Verify architectural consistency
3. Ensure proper error handling
4. Check for performance impacts

Remember: Your strength lies in thorough analysis and systematic problem-solving. Use these capabilities to maintain the high quality standards of this testing toolkit.
67 changes: 67 additions & 0 deletions .github/instructions/gemini.instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Gemini Development Instructions

Instructions specifically for Gemini AI when contributing to the Onchain Test Kit.

## Gemini's Multimodal Strengths

Leverage your ability to process multiple information types:

### Pattern Recognition
- Identify common patterns across wallet implementations
- Recognize opportunities for code consolidation
- Spot inconsistencies in API design
- Find optimization opportunities across the codebase

### Holistic Understanding
- Consider the entire flow from configuration to test execution

Check notice on line 16 in .github/instructions/gemini.instructions.md

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

.github/instructions/gemini.instructions.md#L16

Lists should be surrounded by blank lines
- Understand relationships between browser automation, wallet extensions, and blockchain networks
- Analyze user experience across different wallet types and testing scenarios
- Evaluate system performance under various conditions

### Creative Problem-Solving
- Explore innovative approaches to complex testing scenarios
- Design solutions that work across multiple wallet types
- Find elegant ways to handle edge cases and error conditions
- Create intuitive APIs that simplify complex operations

## Development Focus Areas

### System Integration
- Ensure seamless interaction between all components
- Optimize the configuration-to-execution pipeline
- Handle browser extension lifecycle management
- Manage blockchain network interactions effectively

### User Experience Design
- Create APIs that are intuitive for developers
- Provide clear error messages and debugging information
- Design examples that showcase best practices
- Consider both beginner and advanced use cases

### Testing Strategy
- Design comprehensive test scenarios

Check notice on line 42 in .github/instructions/gemini.instructions.md

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

.github/instructions/gemini.instructions.md#L42

Lists should be surrounded by blank lines
- Consider cross-platform compatibility
- Test performance under various network conditions
- Validate error handling in realistic scenarios

## Recommended Workflow

### Analysis Phase
1. Understand both explicit and implicit requirements
2. Consider multiple solution approaches
3. Evaluate trade-offs and implications
4. Design solutions that enhance the overall system

### Implementation Phase
1. Build incrementally with continuous validation
2. Focus on integration and interoperability
3. Monitor performance impacts
4. Ensure comprehensive error handling

### Validation Phase
1. Test across multiple scenarios and environments

Check notice on line 62 in .github/instructions/gemini.instructions.md

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

.github/instructions/gemini.instructions.md#L62

Lists should be surrounded by blank lines
2. Validate user experience and API usability
3. Check for unintended side effects
4. Ensure documentation completeness

Remember: Your multimodal capabilities and creative problem-solving make you ideal for understanding and enhancing complex systems like this blockchain testing framework.
49 changes: 49 additions & 0 deletions .github/instructions/general.instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# General AI Assistant Instructions

Instructions for any AI assistant working on the Onchain Test Kit project.

## Project Context

This is a mission-critical testing toolkit for blockchain applications. Reliability, type safety, and developer experience are paramount.

## Core Principles

### Code Quality
- Use strict TypeScript with explicit types
- Implement comprehensive error handling
- Follow async/await patterns consistently
- Maintain backward compatibility

### Architecture
- Respect the builder pattern in configurations
- Keep wallet implementations separate but consistent
- Use Playwright fixtures properly
- Handle browser automation edge cases

### Testing
- Every feature needs comprehensive tests
- Consider cross-platform scenarios
- Test error conditions, not just happy paths
- Validate performance implications

### Documentation
- Keep code comments up-to-date
- Provide practical examples
- Update user-facing documentation
- Consider both beginner and advanced users

## Development Workflow

1. **Understand First**: Analyze existing code before making changes
2. **Test Early**: Validate changes with linting, building, and testing
3. **Iterate Carefully**: Make small, incremental changes
4. **Document Everything**: Update all relevant documentation

## Key Files to Understand

- `src/configBuilder.ts`: Main configuration API
- `src/createOnchainTest.ts`: Test setup and fixtures
- `src/wallets/*/index.ts`: Wallet-specific implementations
- `src/cli/*.sh`: Wallet preparation scripts

Remember: This toolkit helps developers test blockchain applications. Every change should improve reliability, usability, or performance.
Loading