docs: re-measure #218/#220/#222/#223/#224 delta, verify #225/#228 on real repos#235
Conversation
…real repos Formalizes the #230/#231 own-check delta against the 2026-07-10 baseline (correcting #218 vs #219 for the DP-rotation fix), then reruns own-check on fresh main (#232/#233 merged) for MaterialDesignInXamlToolkit and ClosedXML and checks the actual delta against each PR's predicted one. MaterialDesignInXamlToolkit matches exactly (-1, App.xaml.cs:22). ClosedXML does not: only 2 of the 5 predicted Slice.cs sites cleared (the other 3 use an explicit IDisposable.Dispose() implementation HasEmptyDisposeBody doesn't recognize), and 263 unrelated XLWorkbook locals across ClosedXML.Examples were also wrongly exempted -- XLWorkbook.Dispose() is empty in source only because Janitor.Fody IL-weaves the real cleanup in at compile time, which a source-level check can't see. Documented as input for the next iteration; no analyzer code changed in this commit. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01D6Naf8CcezjCbikueKdeYv
|
Warning Review limit reached
Next review available in: 57 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe PR adds a documentation note describing two SARIF precision re-measurements, their finding deltas and mappings, a ClosedXML mismatch analysis involving explicit-interface disposal and IL weaving, and proposed analyzer follow-ups. ChangesPrecision re-measure
Estimated code review effort: 1 (Trivial) | ~5 minutes Possibly related issues
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✨ 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 |
|
@coderabbitai review |
|
@coderabbitai review Generated by Claude Code |
|
✅ Action performedReview finished.
|
|
@coderabbitai review Generated by Claude Code |
|
✅ Action performedReview finished.
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/notes/precision-remeasure-2026-07-11.md`:
- Around line 3-5: Escape the issue references at the wrapped-line starts in the
document, specifically the lines beginning with “#201)” and “#230/#231”, by
prefixing each hash with a backslash or reflowing the continuation text onto the
preceding line. Apply the same correction to the additional affected range.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 1900cf23-4e90-40ce-86a9-364cd10c86bd
📒 Files selected for processing (1)
docs/notes/precision-remeasure-2026-07-11.md
Lines starting with "#201)" / "#230/#231" after a soft wrap read as malformed ATX headings to markdownlint. No content change. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01D6Naf8CcezjCbikueKdeYv
Что и зачем
Оформляет вчерашний own-check замер #230/#231 в постоянную заметку (с исправленной нумерацией — ротация это issue #218, не #219), плюс перегоняет own-check на fresh main (с #232/#233) по MaterialDesignInXamlToolkit и ClosedXML и сверяет фактическую дельту с предсказанной в PR-описаниях #232/#233. MaterialDesign совпало один-в-один. ClosedXML — нет: только 2 из 5 предсказанных точек в
Slice.csреально ушли (остальные 3 — explicit-interfaceIDisposable.Dispose(), не распознаётсяHasEmptyDisposeBody), и попутно неожиданно ушли 263 несвязанныхXLWorkbook-локали по всемуClosedXML.Examples—XLWorkbook.Dispose()пуст только в исходнике (Janitor.Fody вплетает реальную очистку на этапе компиляции в IL), чего source-level проверка не видит. Это задокументировано как вход для следующей итерации; код анализатора в этом PR не менялся.Тип изменения
Как проверено
python tests/run_tests.pyruff check .иmypyПлюс сама методика измерения:
OwnSharp.Extractorсобран на freshmain(сначала3ca4bde, затемb1ee961после #232/#233), прогнанscripts/own-check.sh --format sarif --severity warningпротив тех же кэшированных клонов на тех же зафиксированных коммитах, что и в оригинальном sweep (docs/notes/oracle-sweep-2026-07-10.md); результаты продиффаны против сохранённыхown.txt-baseline'ов. Полная методика и все таблицы — в самой заметке.Связанные issue
Refs #201, #218, #220, #222, #223, #224, #225, #228. Связанные issue — нет закрываемых.
Чеклист
feat:,fix:,docs:…)Generated by Claude Code
Summary by CodeRabbit