OSS-Fuzz Python SDK — Result Management, Full Facade, Docs & Samples#1161
Open
zewei-wang wants to merge 11 commits intogoogle:mainfrom
Open
OSS-Fuzz Python SDK — Result Management, Full Facade, Docs & Samples#1161zewei-wang wants to merge 11 commits intogoogle:mainfrom
zewei-wang wants to merge 11 commits intogoogle:mainfrom
Conversation
- Add comprehensive data models for build, crash, corpus, and coverage history - Implement HistoricalSummary model for aggregated statistics - Add specialized error classes for SDK configuration and validation - Include proper type hints and Pydantic validation
- Extend storage adapters with history-specific functionality - Add support for time-series data storage and retrieval - Implement environment variable utilities for configuration - Improve error handling and logging in storage operations
- Add abstract HistoryManager base class with common functionality - Implement BuildHistoryManager for build statistics and trends - Add CoverageHistoryManager for coverage data analysis - Include data validation and storage abstraction - Add comprehensive logging and error handling
- Implement CorpusHistoryManager for corpus growth analysis - Add CrashHistoryManager for crash tracking and statistics - Include duplicate detection and data validation - Complete the historical data management infrastructure
- Add OSSFuzzSDK class as main entry point for historical data - Implement project report generation and analysis features - Add fuzzing efficiency analysis and health scoring - Include environment configuration and error handling - Provide unified interface for all history managers
- Export OSSFuzzSDK and history managers in package __init__ - Add data models and error classes to public API - Maintain backward compatibility with existing exports - Complete integration of historical data functionality
- Add test suite for OSSFuzzSDK main functionality - Include tests for all history managers (build, crash, corpus, coverage) - Test configuration, error handling, and edge cases - Ensure proper integration with storage and data validation - Add mocking for external dependencies
…atures - Update cloud builder pipeline tests for new SDK integration - Modify local builder pipeline tests to work with enhanced functionality - Ensure backward compatibility and proper error handling - Fix any test conflicts with new historical data features
Collaborator
Author
|
/gcbrun exp -n zewei -m vertex_ai_gemini-2-5-flash-chat -ag -b quick-test |
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
Introduce a comprehensive Python SDK for OSS-Fuzz with:
Changes Overview
ossfuzz_py/result/result_manager.pyfor unified result capture, storage, and retrievalossfuzz_py/build/builder.pyandossfuzz_py/execution/fuzz_runner.pyossfuzz_py/core/ossfuzz_sdk.pyto a comprehensive, production-ready APIossfuzz_py/README.mdsamples/basic/01_quick_start.py,02_configuration.py,03_simple_benchmark.pysamples/intermediate/04_pipeline_automation.pysamples/advanced/01_batch_processing.pysamples/utilities/health_checker.pysamples/data/sample_benchmarks.jsonsamples/data/sample_configs/development.jsonossfuzz_py/samples/README.mdTesting
ossfuzz_py/unittests/test_ossfuzz_sdk_comprehensive.pyossfuzz_py/unittests/test_result_manager.py