-
Notifications
You must be signed in to change notification settings - Fork 1
feat: Добавление колонок процентилей #5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughThis change introduces comprehensive support for percentile columns in benchmark reports. A new module implements the logic for creating, identifying, and extracting values for percentile-based columns. The configuration, report builder, and annotation extraction logic are updated to recognize and handle percentile columns, including support for default and custom percentile values. Mathematical quantile calculation is added, and the benchmark statistics class is extended to provide quantile values. Tests are expanded to cover percentile column scenarios and duplicate column handling. Fixture and sample files are updated to demonstrate and validate the new percentile column functionality. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant Config
participant AnnotationExtractor
participant ReportBuilder
participant PercentileColumnModule
participant BenchmarkStats
participant MathFunctions
User->>Config: Add percentile column(s)
Config->>AnnotationExtractor: Read column annotations
AnnotationExtractor->>PercentileColumnModule: Create percentile columns (default/custom)
Config->>ReportBuilder: Build report with columns
ReportBuilder->>PercentileColumnModule: For each percentile column, get value
PercentileColumnModule->>BenchmarkStats: Get quantile for percentile
BenchmarkStats->>MathFunctions: Calculate quantile value
MathFunctions-->>BenchmarkStats: Return quantile
BenchmarkStats-->>PercentileColumnModule: Return value
PercentileColumnModule-->>ReportBuilder: Return value
ReportBuilder-->>User: Report with percentile columns
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (11)
⏰ Context from checks skipped due to timeout of 90000ms (11)
🔇 Additional comments (33)
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Summary by CodeRabbit