Repository navigation
Conversation
The ESLint parse-error guide names ESLint, tsconfig.json and npx eslint, so it only ever coached one plugin's findings. It moves to the typescript plugin. Python's ruff maps invalid-syntax to the same smell and now has no guide for it, which is what the unification issue is for. high-complexity opened by naming the metric. Handing an agent the measure invites gaming it, so the word goes and the guide keeps the shape. Every generic guide named the coached unit "function", which is wrong in Ruby, Python and PHP. It now reads "function/method" wherever the unit is meant.
PR #150 forks nine prompts that already exist. Seven say the same thing once Ruby nouns are substituted, which the generic guides now carry as "function/method", so they are dropped and the generic guide renders. Two remain. parse-error states RuboCop facts no shared guide can hold: ruby -c, TargetRubyVersion, cops rather than rules. oversized-block is a smell only this plugin reports, so nothing else coaches it. The forked line-level include goes with them. It existed to print the cop's message, which is the metric the guides deliberately do not hand the agent, so oversized-block uses the shared listing.
Collaborator
Author
|
Superseded — the prompt changes go to |
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.
Draft, for reading the prompts. Not for merge.
Base is
add-rubocop-support, so this diff is only what I propose changing ontop of PR #150: 16 files, +19 −99.
Generic guides
parse-error.mdmoves to the typescript plugin. It names ESLint,tsconfig.jsonandnpx eslint, so it only ever coached one plugin'sfindings.
high-complexity.mdno longer says "cyclomatic". Naming the measure invitesgaming it.
function/methodin seven guides. It said"function", which is wrong in Ruby, Python and PHP.
Known gap: ruff maps
invalid-syntaxtoparse-errortoo, so Python nowfalls back to
uncoached.mdfor it.parse-erroris enforced, so a Pythonsyntax error still blocks the run, with generic advice instead of ESLint's.
Tracked in #153.
Ruby guides
Nine forks become two.
parse-errorruby -c,TargetRubyVersion, cops rather than rulesoversized-blockdeep-nestinghigh-complexityoversized-functionswallowed-exceptiontoo-many-parametersunused-variableuncoachedincludes/rubocop_line_level_issues.mdoversized-blocknow uses the sharedline_level_issues.md. The forked includeexisted to print RuboCop's message, which carries the count (
[8/7]) the guidesdeliberately withhold. The cop name is already in the block banner.
Not in here
next unless,return unless,**opts. They need a per-language include, which does not exist yet.oversized-block's guide is still the plugin's ownoversized-functionguidewith the nouns changed.
Gate
1046 passed, 4 skipped, ruff clean,uv run habit-hooks --allclean.