Skip to content

Fix the three findings the 0.22.0 self-check got wrong - #33

Merged
tauanbinato merged 3 commits into
mainfrom
baseline-wrong-findings
Sep 27, 2026
Merged

tauanbinato merged 3 commits into
mainfrom
baseline-wrong-findings

Conversation

@tauanbinato

@tauanbinato tauanbinato commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

The 0.22.0 release self-check baselined four considers as wrong. Three of them came from gaps in JevGate's own policy; this fixes those and measures each fix on the corpus, with every changed review and consider labeled by hand (a debatable one counts as not right).

  • Function simplification: splitting a function of 20 lines or fewer is at most a note. Of the considers this lowers, 12 of 39 were right on tuned projects and 5 of 50 on blind Bend 2 projects. Function-simplification considers: 68% to 73% right.
  • Shared logic: copies of up to twelve lines between test cases in different files are notes. Of the considers this lowers, 30 of 87 were right on tuned projects and 2 of 24 held out. Shared-logic considers: 53% to 57% right (tuned) and 43% to 53% (held out).
  • File organization: a split the recheck raised from an undecided first answer is asked its file's kind, and a kind that serves one feature clears it. 4 of the 18 findings it cleared were right.

Overall, considers went from 57% to 59% right on tuned projects, 47% to 51% held out and 24% to 28% on the blind Bend 2 set. No review changed except one wrong file-organization review, now gone. Rule versions are bumped, and the numbers are in the doc comments and CHANGELOG.

Also:

  • unit_outcome is split into a dispatch and helpers (test_pair_outcome, workflows_outcome, staleness_outcome, settings_module_outcome, in_examples). The self-check flagged it once its file changed, and three rules' logic sat inline.
  • The laws' "particular inputs" test is now one function shared by the outcome and the wording.

The fourth, test_map::visit, was a split consider no corpus measure separated from right ones (function length, the located block, a whole-body block). It is restructured instead: class_context says whether a class's methods are tests, case what a node is to the walk (a test case, a function that is not one, or something to look inside), and visit only walks. Behavior is unchanged (the test-map tests pass), and the baseline is now empty.

Tests (478), clippy and cargo +1.90.0 check --locked pass. The self-check reports no review or consider.

Function splits of 20 lines or fewer, copies of up to twelve lines
between test cases of different files, and splits the recheck raised
from an undecided first answer (now asked their file's kind) were the
three considers the 0.22.0 self-check got wrong. Every changed review
and consider on the corpus was labeled: considers 57% to 59% right on
tuned projects, 47% to 51% held out, 24% to 28% on blind Bend 2 ones.

The baseline keeps only test_map's visit.
…aseline

visit decided in one match both which classes hold test methods and
which nodes are test cases. class_context now says what a class makes
of its methods, and case what a node is to the walk (a case, a function
that is not one, or something to look inside); visit only walks.

With it the self-check reports no review or consider, so the last
baseline entry is gone.
@tauanbinato
tauanbinato merged commit ab0dcaf into main Sep 27, 2026
9 checks passed
@tauanbinato
tauanbinato deleted the baseline-wrong-findings branch September 27, 2026 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant