Imageomics / Imageomics/OpenCite
Improve bot contributor filtering
- Dominant language
- JavaScript
- Stars
- 0
- Forks
- 0
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 5
Description
Update the contributor filtering logic to more reliably exclude bot-generated contributors from imported GitHub metadata.
Currently, we maintain a list of known Claude bot accounts, but GitHub/Copilot-related bot names can vary. Instead of relying only on specific account names, the filtering logic should also exclude contributors whose username or name contains `"copilot"`.
## Proposed Changes
- Add a case-insensitive check for `"copilot"` when filtering GitHub contributors.
- Continue excluding known Claude bot accounts using the existing exclusion list.
- Ensure bot accounts are not included in generated contributor metadata such as `CITATION.cff` or `.zenodo.json`.
- Add or update tests covering:
- Contributors with `"copilot"` in their name or username
- Known Claude bot accounts
- Normal human contributors whose names do not match the bot filters
## Acceptance Criteria
- [ ] Contributors containing `"copilot"` in their username or name are excluded.
- [ ] Known Claude bot accounts continue to be excluded.
- [ ] Human contributors are not unintentionally filtered out.
- [ ] Tests are added or updated for the new filtering behavior.
- [ ] Existing GitHub contributor import functionality continues to pass all tests.
## Context
This came up during review of PR #48, where we noticed that bot contributor names have been changing ("whack-a-mole"). This issue tracks improving the filtering logic so it is more robust to future Copilot bot naming variations.
This is not a blocker for PR #48.
Contributor guide
Research direction
Start by locating the GitHub contributor import and its existing Claude-account exclusion list, then run the related tests if available. Update the filtering behavior so case-insensitive Copilot matches are excluded while known Claude bots remain filtered and normal contributors remain included. Done means the specified bot and human cases are covered by tests and the existing import suite passes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100