-
Notifications
You must be signed in to change notification settings - Fork 735
HTML report: max url lenght now will be find after ecoding #24533
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
HTML report: max url lenght now will be find after ecoding #24533
Conversation
|
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR refactors the GitHub issue URL generation logic to use binary search for finding the maximum error text length that fits within GitHub's URL constraints, replacing the previous estimation-based approach with precise URL length testing.
- Implements binary search algorithm with iteration limit to find optimal error text truncation
- Replaces space estimation constants and logic with actual URL length checking
- Simplifies log section handling by removing space-based filtering constraints
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| ydb/tests/functional/tpc/medium/test_workload_manager.py | Adds a comment line (cosmetic change) |
| .github/scripts/tests/templates/summary.html | Refactors URL length limiting from estimation-based to binary search approach with precise URL testing |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
⚫ |
4206714 to
64c201f
Compare
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated 3 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| function showCopiedTooltip() {} | ||
|
|
||
| // Safe percent-encoded truncation helpers | ||
| function isDecodable(s) { |
Copilot
AI
Sep 15, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This function should handle the case where the input parameter is null or undefined to prevent potential runtime errors.
| function isDecodable(s) { | |
| function isDecodable(s) { | |
| if (typeof s !== 'string') return false; |
| while (cut && !isDecodable(cut)) { | ||
| if (/%[0-9A-Fa-f]{2}$/.test(cut)) cut = cut.slice(0, -3); | ||
| else cut = cut.slice(0, -1); |
Copilot
AI
Sep 15, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This while loop could potentially run for a long time with malformed input. Consider adding a maximum iteration limit to prevent infinite loops.
| while (cut && !isDecodable(cut)) { | |
| if (/%[0-9A-Fa-f]{2}$/.test(cut)) cut = cut.slice(0, -3); | |
| else cut = cut.slice(0, -1); | |
| let maxIterations = 1000, iter = 0; | |
| while (cut && !isDecodable(cut) && iter < maxIterations) { | |
| if (/%[0-9A-Fa-f]{2}$/.test(cut)) cut = cut.slice(0, -3); | |
| else cut = cut.slice(0, -1); | |
| iter++; |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
|
⚪ Test history | Ya make output | Test bloat
🟢 |
Changelog entry
This PR refactors the URL length limiting logic to use binary search for finding the maximum error text length that fits within GitHub's URL constraints. The change replaces pre-calculated space estimations with actual URL length testing to more accurately determine how much error text can be included.
Changelog category
Description for reviewers
...