Repository navigation
Lint and formatting growth warns and never blocks - #3173
Merged
Merged
Conversation
Slop is a restated fact; a lint convention or Black's layout restates none, yet both blocked merges. Advisory is a measure capability whose blocks() answers no and whose grew() writes a GitHub ::warning:: on the file. Unformatted and LintFindings inherit it and stay measured. The commander lint rule now says to read the warnings, not to clear them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Lint and formatting growth now warns and never blocks a merge. Tristan: "it should be a warn not a block". Slop is a restated fact. "This exception name lacks an Error suffix" and "Black would reflow this" restate nothing, yet tonight they blocked #3168, the fix reviving the live bus (
grew LintFindings+3,grew Unformatted+1).Change
Advisory(Measure)(tools/debt_ratchet.py) is a capability parent.blocks()answers no, andgrew()writes a GitHub::warning file=PATH::line instead ofgrew KEY +N.UnformattedandLintFindingsinherit it, with no roster of names anywhere: the MRO decides.Measure.grew()is the default growth line.mainasks each measure for its own line, so::warning::lands on stderr..github/run-step.sh:6merges stderr into the step log, where Actions reads workflow commands. When advisory growth is the only growth, the step exits 0 and gets no::errortail.commander/rules/tests-and-commands.md): "Lint, every commit … fix only the findings" becomes "Lint warns, never blocks … read the warnings on lines you changed; fix one when it names a real defect". The bans on whole-fileruff formatand on renames that only quiet a rule stay.Decided
TypeErrorskeeps gating. A mypy error is code disagreeing with its own declared type, a fact stated twice where the copies disagree, so it is a restated fact.Evidence
test_advisory_growth_is_measured_and_warned_never_failed[Unformatted|LintFindings]: growth is in the delta, the comparison exits 0, and the line is a::warning file=for that file. It fails against main's ratchet (see below).test_per_file_increase_cannot_be_offset_or_movedkeeps its gating rows.test_both_revisions_are_checked_under_the_head_configurationstill passes: the advisory measures are still measured..github/workflows, so the ratchet was the only lint gate.Hold: lands after install #15, with #3166, #3170 and #3172.
🤖 Generated with Claude Code