Automattic / Automattic/harper

Some lints block other lints

Open
#827 3 comments 0 reactions 0 assignees View on GitHub
bug linting
Dominant language
Rust
Stars
15.4k
Forks
627
Avg merge
1d 12h
Merged PRs (30d)
106

Description

**Describe the bug**
Usually when two linters identify conflicting/overlapping/alternative fixes for the same section of text, the descriptions of all of them are vertically stacked in the VS Code UI. But sometimes only one is flagged.

**To Reproduce**
Steps to reproduce the behavior:
1. Add this sentence: "That represents a significant back stop of the kind that Europeans seem to be asking for at least if it's a back stop."
2. Notice that the first `back stop` is flagged to compound into `backstop`.
3. Notice that the second `back stop` is not flagged.
4. But in the same location `a back` is flagged to compound into `aback`
5. Tangent: It's wrongly labelled a compound noun by the way when "aback" is actually an adverb.
6. Tangent: The reason given is "The possessive noun implies ownership" but
7. Tangent: "It's" is not a noun, it's a pronoun
8. Tangent: "It's" is not a possessive, it's a contraction of "it is" (also "it has") - the possessive of "it" is "its"

**Expected behavior**
Notwithstanding the other problems I mentioned tangentially, both "a back" and "back stop" should be flagged and both suggestions should be added, as happens in other places with multiple errors or multiple interpretations.

(I think I filed an issue against the "It's" problem in the tangent about a fortnight ago. Will add a reference here if I find it.)

**Screenshots**

Image

Image

For comparison, here's another place where several issues in the same area result in a "stacked" UI in VS Code: Image

**Platform**
Windsurf (VS Code fork)

Contributor guide

Open the contributing guide

Research direction

Reproduce issue 827 in Windsurf using the sentence and compare the overlapping diagnostics for “a back” and “back stop” in the VS Code UI. Trace how overlapping linter findings and suggestions are selected or stacked; done means both findings remain visible with both suggestions available, without relying on the tangential “It's” wording issues.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, vscode
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.