fix: route corrupt CatBoost scans fail closed#924
Conversation
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 25 minutes and 27 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (3)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Performance BenchmarksCompared
|
Summary
This PR fixes a CatBoost routing fail-open discovered during the correctness audit. A .cbm file with the CatBoost CBM1 magic but a corrupt declared core section was detected as CatBoost format, but CatBoostScanner.can_handle rejected it before the scanner could report the structural failure. The aggregate scan then produced only a DEBUG unknown-format issue and exited 0.
Root Cause
CatBoostScanner.can_handle required a fully in-bounds declared core section. That made can_handle behave as a validity check instead of a routing check. Corrupt CatBoost files therefore bypassed the scanner that knows how to fail closed on CatBoost structure errors.
Changes
Validation