Files
NYSM-NYD/.github/pull_request_template.md

5.2 KiB

📝 Description

Brief description of changes made in this pull request.

🎯 Type of Change

Please delete options that are not relevant.

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📚 Documentation update
  • Performance improvement
  • 🔧 Refactoring (no functional changes)
  • 🧪 Test addition or update
  • 🏗️ Build system or external dependency change
  • 🎨 Style/formatting change (no functional changes)

Closes #(issue number) Fixes #(issue number) Related to #(issue number)

🧪 Testing

Test Coverage

  • Unit tests added/updated
  • Integration tests added/updated
  • Performance tests added/updated
  • Manual testing completed

Test Results

# Run test suite
pytest tests/ -v --cov=src

# Results:
# - Total tests: X
# - Passed: X
# - Failed: X
# - Coverage: X%

Performance Impact

  • Latency remains <20ms
  • Accuracy remains <10cm
  • Frame rate remains 30-60 FPS
  • CSI rate remains ≥100 pkt/s

📋 Checklist

Code Quality

  • Code follows the project's style guidelines
  • Self-review of code completed
  • Code is commented, particularly in hard-to-understand areas
  • Corresponding changes to documentation made
  • No new warnings generated
  • No new linting errors

Documentation

  • README.md updated (if applicable)
  • API documentation updated (if applicable)
  • Code comments added/updated
  • CHANGELOG.md updated
  • Installation instructions updated (if applicable)

Security

  • No security vulnerabilities introduced
  • Sensitive data properly handled
  • Authentication/authorization updated (if applicable)
  • Input validation added (if applicable)

Compatibility

  • Backward compatibility maintained
  • Forward compatibility considered
  • Cross-platform compatibility verified
  • Dependency versions compatible

🔧 Technical Details

Changes Made

# Example of key changes
class NewFeature:
    def __init__(self, config: Config):
        self.config = config
    
    def process_data(self, data: InputData) -> OutputData:
        # New implementation
        return processed_data

Configuration Changes

{
  "new_feature": {
    "enabled": true,
    "parameter": "value"
  }
}

API Changes

  • No breaking API changes
  • New API endpoints added
  • Existing API endpoints modified
  • API documentation updated

Dependencies

  • No new dependencies added
  • New dependencies added and documented
  • Dependency versions updated
  • Security implications reviewed

📊 Performance Analysis

Before Changes

  • Latency: X ms
  • Accuracy: X cm
  • Frame Rate: X FPS
  • Memory Usage: X MB
  • CPU Usage: X%

After Changes

  • Latency: X ms
  • Accuracy: X cm
  • Frame Rate: X FPS
  • Memory Usage: X MB
  • CPU Usage: X%

Performance Tests

# Run performance benchmarks
python -m pytest tests/test_performance.py -v

# Results:
# - Latency test: PASSED
# - Accuracy test: PASSED
# - Memory test: PASSED

🚀 Deployment

Environment

  • Development environment tested
  • Staging environment tested
  • Production environment ready

Rollback Plan

  • Rollback procedure documented
  • Data migration plan (if applicable)
  • Configuration rollback tested

Monitoring

  • Metrics collection updated
  • Alerting rules updated
  • Logging enhanced (if applicable)

📸 Screenshots

If applicable, add screenshots to help explain your changes:

Before

Before

After

After

🔍 Code Review Notes

Key Areas to Review

  • Algorithm implementation
  • Error handling
  • Performance implications
  • Security considerations
  • Documentation quality

Potential Issues

  • Edge cases handled
  • Error conditions tested
  • Resource cleanup implemented
  • Thread safety considered

📝 Additional Notes

Any additional information that reviewers should know:

  • Breaking Changes: List any breaking changes
  • Migration Guide: Link to migration documentation
  • Known Issues: List any known issues or limitations
  • Future Work: Mention any planned follow-up work

🎯 Acceptance Criteria

  • All tests pass
  • Code review completed
  • Documentation updated
  • Performance benchmarks met
  • Security review completed
  • Deployment tested

📋 Review Checklist

For Reviewers

  • Code follows project standards
  • Tests are comprehensive
  • Documentation is clear
  • Performance impact is acceptable
  • Security implications considered
  • Backward compatibility maintained

For Maintainers

  • All CI checks pass
  • Code coverage meets requirements
  • Performance benchmarks pass
  • Security scan passes
  • Documentation builds successfully

Before merging:

  • All CI/CD checks pass
  • At least one maintainer approval
  • All requested changes addressed
  • Final testing completed
  • Release notes prepared