Automattic / Automattic/harper
False negative: irregular verb past participles used without aux
- Dominant language
- Rust
- Stars
- 15.4k
- Forks
- 627
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 106
Description
> I never used and never **seen** a zx spectrum in real life, but i will try the core.
The "seen" form of "see" is called a "past participle". Only irregular verbs, like "see" have a past participle form that is not the same as the simple past tense form.
Past participles are used in various situations but here it is being used where a simple past tense is needed, **or** it lacks the auxiliary verb "have", needed to form what's called the "past perfect" tense.
The use of an adverb "never" may complicate detecting such cases. The fact that two verbs are used together with a conjunction "and" will definitely complicate it.
Here is a simplified illustrative example:
- ❌ I **seen** a Spectrum.
- ✅ I **saw** a Spectrum
- ✅ I **have seen** a Spectrum.
Note that the reverse also happens but is probably rarer and is likely limited to a few verbs. It can be easier to detect and is addressed by the `SimplePastToPastParticiple` linter.
- ❌ I have saw a Spectrum.
Contributor guide
Research direction
Start by inspecting the existing SimplePastToPastParticiple linter and its tests, then trace how irregular verb forms are identified in coordinated or adverb-modified clauses. Reproduce the reported “never used and never seen” example and add coverage for the missing auxiliary case. Done means incorrectly used past participles are reported without introducing false positives.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100