Conversation
|
CI is green and this does remove the false positive from #1393, but I would rather someone else decide on the shape of the exclusion before it lands:
Assigning to @yegor256 to pick between the narrow fix and the general one. Generated by Claude Code |
|
CI is green and the added pack passes, but I would rather not merge this, because it does not fix what #1393 diagnoses. The issue's root cause is that the rule reads one Nothing here is wrong; it is narrower than the defect. Assigning to @yegor256 to say whether the narrow relief is worth landing now or whether this should wait for the package/ Generated by Claude Code |
Fixes #1393.
excessive-visibilitytreated every named public child as a method. Numericconstants such as
8 > appendand256 > creatin thewin32andposixruntime wrappers were therefore reported when their names were not repeated
in local tests. The suggested
>>replacement would make those constantsunreachable, although other runtime files use them as part of syscall flags.
The selector now excludes attributes whose value is an EO numeric literal
(
Φ.number). Such values are constants, not callable methods whose visibilitycan be reduced based on local test references. Existing analysis of named
object and method attributes remains unchanged, including its current
test-scoped boundary.
A regression fixture defines a public numeric constant in an object with a
unit test and asserts that no excessive-visibility defect is emitted. The
fixture also keeps the constant unused locally, matching the runtime case that
was incorrectly reported.
Verification:
mvn -q -Dtest=LtByXslTest test— 514 tests, 0 failures, 0 errors.