Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Pin litellm to an exact version (unpinned top-level spec + stale 1.37.16 pin)

Open Beginner friendly
#6 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
72/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
cli, devops

Research direction

Read requirements.txt and compare its litellm entry with devops/requirements.txt and devops-cli/requirements.txt. Choose a vetted exact version and make the three declarations consistent; check the relevant install or dependency checks, if available, to confirm the pins are accepted.

Written by the indexing model from the issue text.

Description

Summary

The dependency on litellm is inconsistently pinned in this repo, which exposes installs to supply-chain risk.

  • requirements.txt:6 declares litellm unpinned — any pip install -r requirements.txt resolves to whatever the latest release is at install time.
  • devops/requirements.txt:138 (and devops-cli/requirements.txt:154) pin litellm==1.37.16, which is now very old and far behind the current release line, with dozens of advisories published since.

Why it matters

During the March 2026 litellm 1.82.7 / 1.82.8 supply-chain attack, malicious versions were live on PyPI for ~40 minutes before being quarantined. Anyone resolving with an unpinned spec pulled the malicious wheel automatically (see https://docs.litellm.ai/blog/security-update-march-2026). An exact == pin would have skipped the bad release entirely.

Suggested fix

  1. Replace the bare litellm in the top-level requirements.txt with an exact pin (e.g. litellm==1.106.2 or a vetted recent version).
  2. Keep the vendored aider requirements in sync with the same version rather than the stale 1.37.16.
  3. Optionally move to hash-locked installs (pip-compile --generate-hashes + pip install --require-hashes) so a republished malicious wheel at the same version string is also refused.
Dominant language
Python
Stars
55
Forks
29
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ruvnet/agentic-devops

All issues in ruvnet/agentic-devops

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.