Skip to content

fix(proxy): make prisma generate and db push work out-of-the-box after pip install#30051

Open
steveonjava wants to merge 7 commits into
BerriAI:litellm_internal_stagingfrom
steveonjava:fix/litellm-prisma-generate-oob
Open

fix(proxy): make prisma generate and db push work out-of-the-box after pip install#30051
steveonjava wants to merge 7 commits into
BerriAI:litellm_internal_stagingfrom
steveonjava:fix/litellm-prisma-generate-oob

Conversation

@steveonjava

@steveonjava steveonjava commented Jun 9, 2026

Copy link
Copy Markdown

Relevant issues

Fixes #26097

Linear ticket

N/A (external contributor)

Pre-Submission checklist

  • I have added meaningful tests
  • My PR passes all unit tests on make test-unit
  • My PR's scope is as isolated as possible; it only solves 1 specific problem
  • I have requested a Greptile review by commenting @greptileai and received a Confidence Score of at least 4/5 before requesting a maintainer review

Screenshots / Proof of Fix

$ litellm-proxy db generate --help
Usage: litellm-proxy db [OPTIONS] COMMAND [ARGS]...

  Database management commands.

Options:
  --help  Show this message and exit.

Commands:
  generate  Generate the Prisma client using the schema bundled with
            litellm-proxy-extras.

Type

Bug Fix

Problem framing — three sequential failure modes

After a clean pip install 'litellm[proxy]' into a virtualenv, three distinct failures occur when the venv is not activated (i.e., the proxy is invoked by absolute path, as in Docker, Proxmox scripts, and other non-shell installers):

Symptom 1: Schema not found (standalone prisma generate)

Error: Could not find Prisma Schema that is required for this command.
Checked following paths:
  schema.prisma: file not found
  prisma/schema.prisma: file not found
  prisma/schema: directory not found

Symptom 2: Generator binary not found (after Symptom 1 is fixed)

Prisma schema loaded from .../site-packages/litellm_proxy_extras/schema.prisma
Error: Generator "prisma-client-py" failed:
/bin/sh: 1: prisma-client-py: not found

Symptom 3 (most severe): Tables never created — silent failure

The table `public.LiteLLM_UserTable` does not exist in the current database.

The install step (litellm --use_prisma_db_push --skip_server_startup) calls
PrismaManager.setup_database() -> _get_prisma_env() -> os.environ.copy() with no
PATH fixup. The push invokes the prisma-client-py generator via /bin/sh which can't
find the binary, yet prisma db push can exit 0 without creating tables. The failure
only surfaces at runtime.

Root cause

All three failure modes share the same root cause: the venv bin/ directory is not on
PATH when Prisma subprocesses run. The Prisma engine shells out to prisma-client-py (a
console script in the venv) via /bin/sh. That only works when the venv is activated or
its bin/ is explicitly on PATH.

  • Symptom 1: prisma generate searches CWD / prisma/ for schema.prisma. The
    schema ships inside litellm_proxy_extras/, not CWD. Fix: always pass --schema from
    ProxyExtrasDBManager._get_prisma_dir().
  • Symptoms 2+3: _get_prisma_env() copies os.environ with only offline-mode npm
    vars. It never injects the venv scripts dir. Fix: inject sysconfig.get_path("scripts")
    into PATH inside _get_prisma_env() so every Prisma subprocess — generate, db push,
    migrate deploy — benefits from the same fix.

Changes

Added

  • litellm/proxy/client/cli/commands/db.pydb group and db generate subcommand
    (Symptoms 1+2); _get_generate_env() now delegates to _get_prisma_env() which
    handles PATH injection globally.
  • litellm_proxy_extras/utils.py_get_prisma_env() now injects the venv scripts dir
    at PATH index 0, derived from sysconfig.get_path("scripts") with fallback to
    dirname(sys.executable). This one-line fix covers db push, migrate deploy, and
    generate simultaneously (Symptom 3).
  • litellm-proxy-extras/tests/test_prisma_env_path_injection.py — unit + integration
    tests for _get_prisma_env() PATH injection (Symptom 3 coverage).
  • tests/test_litellm/proxy/client/cli/test_db_commands.py — 7 tests for db generate
    happy path, schema delegation, missing schema, failure propagation, unavailable extras,
    CLI registration.
  • tests/test_litellm/proxy/client/cli/test_db_generate_path_verifier.py — adversarial
    tests for the PATH fix (delegation chain + None-guard).
  • tests/test_litellm/proxy/client/cli/test_db_generate_integration.py — integration
    tests for Symptoms 1+2 invoked by absolute path.

Modified

  • litellm-proxy-extras/litellm_proxy_extras/utils.py_get_prisma_env() PATH
    injection; setup_database() v1 db push else-branch now passes env=_get_prisma_env().
  • litellm/proxy/client/cli/main.py — registers db group.
  • pyproject.toml — registers litellm-proxy console script.

Chosen approach

  1. Symptoms 1+2 (db generate): New litellm-proxy db generate subcommand resolves
    schema via _get_prisma_dir(). _get_generate_env() delegates to the now-fixed shared
    _get_prisma_env().

  2. Symptom 3 (db push / migrate deploy): _get_prisma_env() is patched to prepend
    the venv scripts dir to PATH. This is the single-point-of-fix approach — all three code
    paths call _get_prisma_env(), so fixing it there fixes all three without duplicating
    the PATH logic.

Alternatives considered

  • Scoped _get_generate_env() only: Fixes Symptoms 1+2 but leaves Symptom 3
    (tables never created on non-activated venv installs), because db push and
    migrate deploy never call _get_generate_env(). Folded into the consolidated
    _get_prisma_env() fix so all three subprocess paths share one PATH injection.
  • LITELLM_SCHEMA_PATH env var: Fixes Symptom 1 only (schema discovery); does
    nothing for the missing-binary failures. Not pursued.
  • Lazy generate on proxy startup: Would fix all symptoms but adds scope creep and
    a silent slow/possibly-crashing step at init time. Not pursued in favour of the
    smaller, explicit fix.

Downstream-packager note

This fix makes litellm-proxy db generate and prisma db push work out-of-the-box after
a standard pip install 'litellm[proxy]'. Callers invoking the proxy by absolute path no
longer need to activate the venv, know internal site-packages paths, or prefix PATH
manually.

This is the failure that took down the LiteLLM Proxmox VE Helper script (ct/litellm.sh
in community-scripts/ProxmoxVE). A default install fails at prisma generate
(community-scripts/ProxmoxVE#13854, "LiteLLM fails on default install"), and the script
was ultimately removed over recurring breakage of this kind
(community-scripts/ProxmoxVE#14294). A packager that installs into an unactivated venv hits
exactly Symptoms 1-3 above; this PR removes the need for any PATH workaround in such
installers.

Interim workaround (for reference)

Until this lands, invocations by absolute path require:

env PATH="/opt/litellm/.venv/bin:$PATH" \
  /opt/litellm/.venv/bin/litellm \
  --config /opt/litellm/litellm.yaml --use_prisma_db_push --skip_server_startup

@codspeed-hq

codspeed-hq Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 16 untouched benchmarks


Comparing steveonjava:fix/litellm-prisma-generate-oob (213c158) with main (9608dd5)

Open in CodSpeed

@greptile-apps

greptile-apps Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR fixes three failure modes that occur when the LiteLLM proxy is invoked by absolute path (Docker, Proxmox-style scripts) without an activated venv: Prisma can't find schema.prisma, the prisma-client-py generator binary is missing from PATH, and db push silently exits 0 without creating tables.

  • Core fix (litellm_proxy_extras/utils.py): _get_prisma_env() now prepends sysconfig.get_path("scripts") to PATH before every Prisma subprocess, and the v1 db push call gets env=_get_prisma_env() (the one call that previously lacked it).
  • New CLI command (litellm/proxy/client/cli/commands/db.py + main.py): litellm-proxy db generate resolves the bundled schema.prisma from ProxyExtrasDBManager._get_prisma_dir() instead of relying on CWD, eliminating Symptom 1.
  • Test coverage: unit tests for PATH injection, adversarial delegation-chain tests, and opt-in integration tests guarded by LITELLM_RUN_INTEGRATION_TESTS=1.

Confidence Score: 5/5

The change is additive: a PATH prepend in _get_prisma_env() and a new CLI command. Existing Prisma subprocess calls that already passed env= are unaffected; the one missing call now gets it. No authentication, routing, or request-handling code is touched.

The PATH injection is isolated to the Prisma subprocess environment builder, all existing subprocess calls already used _get_prisma_env(), and the one missing env= pass is straightforward. The new db generate command is purely additive and guarded by an _PROXY_EXTRAS_AVAILABLE check.

litellm/proxy/client/cli/commands/db.py — _get_venv_scripts_dir() is never called from the production code path and may confuse future readers about how PATH injection actually works.

Important Files Changed

Filename Overview
litellm-proxy-extras/litellm_proxy_extras/utils.py Adds PATH injection via sysconfig to _get_prisma_env(); adds env= to the v1 db push subprocess call that was missing it
litellm/proxy/client/cli/commands/db.py New db generate command; _get_venv_scripts_dir() is defined but never called in any production code path — it exists only for tests
litellm/proxy/client/cli/main.py Registers db command group in the CLI; straightforward two-line change
litellm-proxy-extras/tests/test_prisma_env_path_injection.py Unit + integration tests for _get_prisma_env() PATH injection; covers injection, promotion, dedup, fallback, and offline-mode coexistence
tests/test_litellm/proxy/client/cli/test_db_commands.py Tests for db generate command; contains fragile sys.path.insert relying on CWD
tests/test_litellm/proxy/client/cli/test_db_generate_path_verifier.py Adversarial tests for the PATH fix delegation chain and None-guard; thorough coverage of edge cases
tests/proxy_cli_integration_tests/README.md New README for integration test directory; may conflict with policy requiring docs in the litellm-docs repo
tests/proxy_cli_integration_tests/test_db_generate_integration.py Integration tests for absolute-path invocation; correctly opt-in via env var and pytest.skip guards
pyproject.toml Adds integration pytest marker; no console-script registration change (litellm-proxy was already registered)

Reviews (4): Last reviewed commit: "ci: retrigger checks (HF hub 429 flake i..." | Re-trigger Greptile

Comment thread litellm/proxy/client/cli/commands/db.py Outdated
Comment on lines +35 to +52
def _patch_db_deps(prisma_dir="/fake/prisma/dir", schema_exists=True, returncode=0):
"""Return a list of context managers that patch all external dependencies of db generate."""
mock_run = MagicMock()
if returncode == 0:
mock_run.return_value = MagicMock(returncode=0)
else:
mock_run.side_effect = subprocess.CalledProcessError(returncode, "prisma")

return (
patch(
"litellm.proxy.client.cli.commands.db.ProxyExtrasDBManager._get_prisma_dir",
return_value=prisma_dir,
),
patch("litellm.proxy.client.cli.commands.db._get_prisma_command", return_value="prisma"),
patch("litellm.proxy.client.cli.commands.db._get_prisma_env", return_value=None),
patch("os.path.exists", return_value=schema_exists),
patch("subprocess.run", mock_run),
)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Dead helper — _patch_db_deps is never called

_patch_db_deps is defined but none of the seven tests use it; every test builds its own inline patch context. Either wire the helper up in each test, or remove it to avoid misleading future readers into thinking it is the recommended patch pattern.

Comment thread tests/test_litellm/proxy/client/cli/test_db_commands.py Outdated
@codecov

codecov Bot commented Jun 9, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 88.46154% with 6 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
litellm/proxy/client/cli/commands/db.py 88.00% 6 Missing ⚠️

📢 Thoughts on this report? Let us know!

Comment thread litellm/proxy/client/cli/commands/db.py Fixed
@CLAassistant

CLAassistant commented Jun 9, 2026

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Stephen Chin seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@steveonjava steveonjava marked this pull request as draft June 9, 2026 20:11
@steveonjava steveonjava changed the title feat(proxy-cli): add db generate subcommand fix(proxy): make prisma generate work out-of-the-box after pip install Jun 9, 2026
@steveonjava steveonjava changed the title fix(proxy): make prisma generate work out-of-the-box after pip install fix(proxy): make prisma generate and db push work out-of-the-box after pip install Jun 10, 2026
"""

import os
import subprocess

import os
import subprocess
import sys
import os
import subprocess
import sys
import sysconfig
import sysconfig
from unittest.mock import MagicMock, patch

import pytest
@steveonjava steveonjava changed the base branch from main to litellm_oss_branch June 11, 2026 12:35
@steveonjava steveonjava force-pushed the fix/litellm-prisma-generate-oob branch from 213c158 to a35f008 Compare June 11, 2026 12:38
@steveonjava

Copy link
Copy Markdown
Author

recheck

@steveonjava steveonjava force-pushed the fix/litellm-prisma-generate-oob branch 2 times, most recently from 3cce7a1 to 15f8c70 Compare June 11, 2026 12:49
steveonjava added a commit to steveonjava/litellm that referenced this pull request Jun 11, 2026
…skip-gate integration test

Three cleanup fixes for the PR BerriAI#30051 test suite:

- Remove subprocess, sys, sysconfig, and pytest imports from
  test_prisma_env_path_injection.py; none were called directly (all
  appeared only as string arguments to patch()).
- Drop the dead _patch_db_deps helper from test_db_commands.py; it was
  defined but never called, so it added noise without coverage.
- Re-scope all os.path.exists and subprocess.run patches in
  test_db_commands.py from the global namespace to
  litellm.proxy.client.cli.commands.db.*, which is where the code
  under test actually resolves those names.
- Add a @pytest.mark.skipif gate to
  test_db_generate_absolute_path_non_activated_venv so it only runs
  when LITELLM_RUN_INTEGRATION_TESTS=1 is set, matching the opt-in
  pattern used by sibling integration tests in the project.
@steveonjava steveonjava force-pushed the fix/litellm-prisma-generate-oob branch from 15f8c70 to 0e0bb23 Compare June 11, 2026 13:05
steveonjava added a commit to steveonjava/litellm that referenced this pull request Jun 11, 2026
…skip-gate integration test

Three cleanup fixes for the PR BerriAI#30051 test suite:

- Remove subprocess, sys, sysconfig, and pytest imports from
  test_prisma_env_path_injection.py; none were called directly (all
  appeared only as string arguments to patch()).
- Drop the dead _patch_db_deps helper from test_db_commands.py; it was
  defined but never called, so it added noise without coverage.
- Re-scope all os.path.exists and subprocess.run patches in
  test_db_commands.py from the global namespace to
  litellm.proxy.client.cli.commands.db.*, which is where the code
  under test actually resolves those names.
- Add a @pytest.mark.skipif gate to
  test_db_generate_absolute_path_non_activated_venv so it only runs
  when LITELLM_RUN_INTEGRATION_TESTS=1 is set, matching the opt-in
  pattern used by sibling integration tests in the project.
@steveonjava steveonjava force-pushed the fix/litellm-prisma-generate-oob branch from 0e0bb23 to 2d273e9 Compare June 11, 2026 13:41
steveonjava added a commit to steveonjava/litellm that referenced this pull request Jun 11, 2026
…skip-gate integration test

Three cleanup fixes for the PR BerriAI#30051 test suite:

- Remove subprocess, sys, sysconfig, and pytest imports from
  test_prisma_env_path_injection.py; none were called directly (all
  appeared only as string arguments to patch()).
- Drop the dead _patch_db_deps helper from test_db_commands.py; it was
  defined but never called, so it added noise without coverage.
- Re-scope all os.path.exists and subprocess.run patches in
  test_db_commands.py from the global namespace to
  litellm.proxy.client.cli.commands.db.*, which is where the code
  under test actually resolves those names.
- Add a @pytest.mark.skipif gate to
  test_db_generate_absolute_path_non_activated_venv so it only runs
  when LITELLM_RUN_INTEGRATION_TESTS=1 is set, matching the opt-in
  pattern used by sibling integration tests in the project.
@steveonjava steveonjava force-pushed the fix/litellm-prisma-generate-oob branch 2 times, most recently from 4d09ba4 to 4f20d05 Compare June 11, 2026 14:57
steveonjava added a commit to steveonjava/litellm that referenced this pull request Jun 11, 2026
…skip-gate integration test

Three cleanup fixes for the PR BerriAI#30051 test suite:

- Remove subprocess, sys, sysconfig, and pytest imports from
  test_prisma_env_path_injection.py; none were called directly (all
  appeared only as string arguments to patch()).
- Drop the dead _patch_db_deps helper from test_db_commands.py; it was
  defined but never called, so it added noise without coverage.
- Re-scope all os.path.exists and subprocess.run patches in
  test_db_commands.py from the global namespace to
  litellm.proxy.client.cli.commands.db.*, which is where the code
  under test actually resolves those names.
- Add a @pytest.mark.skipif gate to
  test_db_generate_absolute_path_non_activated_venv so it only runs
  when LITELLM_RUN_INTEGRATION_TESTS=1 is set, matching the opt-in
  pattern used by sibling integration tests in the project.
@steveonjava steveonjava marked this pull request as ready for review June 11, 2026 15:51
@steveonjava steveonjava requested a review from a team June 11, 2026 15:51
Comment thread litellm-proxy-extras/litellm_proxy_extras/utils.py
Comment thread litellm/proxy/client/cli/commands/db.py Outdated
@@ -0,0 +1,110 @@
"""Database management commands for the LiteLLM proxy CLI."""

# stdlib imports

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(suggestion) These comments aren't usually necessary. Convention and isort enforce these groups.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good call, removed. isort already keeps the groups ordered so the comments were just noise.

Comment thread litellm/proxy/client/cli/commands/db.py Outdated

Runs: prisma generate --schema <path_to_schema.prisma>

I resolve the schema path from the installed litellm-proxy-extras package,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure this the right schema.prisma file to use? litellm-proxy-extras says it's only about SQL migrations. There's also one in litellm/proxy/schema.prisma, which might be better for scripts within the litellm CLI, and doesn't rely on litellm-proxy-extras being correctly installed.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I chose the extras copy deliberately. The two schemas are kept identical by CI (sync-schema.yml generates both from the root schema.prisma, check-schema-sync.yml fails on drift), so there is no behavioral difference today. The reason I picked extras: the runtime path already resolves through it. setup_database() and migrate deploy both build their schema path from ProxyExtrasDBManager._get_prisma_dir() (utils.py:519, :701), so having db generate use the same resolver keeps every DB command sourced from one schema. Pointing it at litellm/proxy/schema.prisma would make generate the only exception.

On your robustness point: if extras is not installed the command can't work, but the _PROXY_EXTRAS_AVAILABLE guard handles that with a clear pip install 'litellm[proxy]' error instead of failing deep in Prisma. The whole proxy DB lifecycle already depends on extras, so requiring it here too keeps things consistent.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not up to me, but I would expect code in the litellm package to use the schema.prisma file that is in the same package, rather than a copy from another package. Alternatively, maybe this code all belongs in litellm-proxy-extras.

It's way out of scope for this, but I don't understand why it's necessary to put the same file into two packages. Will you ever use one package without the other? That CI job only checks that the files match in the repo. It doesn't check that the pinned dependency in litellm points to the correct version of litellm-proxy-extras that contains same version of the schema file. Seems like a recipe for problems.

Also out-of-scope, but if the litellm proxy server code is using the file from litellm-proxy-extras, then that contradicts the migration runbook. But it doesn't look like it to me. litellm code only imports litellm_proxy_extras when doing creating the db with migration enabled.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. I changed db generate to resolve the schema via PrismaManager (litellm/proxy/schema.prisma), same as db push, instead of reaching into proxy-extras, and fixed the docstring.

I will defer the large architectural refactor to another day. 😅

Comment thread tests/proxy_cli_integration_tests/test_db_generate_integration.py
Comment thread litellm/proxy/client/cli/commands/db.py Outdated
@steveonjava

Copy link
Copy Markdown
Author

Thanks for reviewing, @jamesmyatt. 🙏 I addressed all of your feedback above.

@Sameerlite

Copy link
Copy Markdown
Collaborator

Thanks for the contribution!

A couple of things to address before this is ready for merge:

  • It looks like some CI checks are failing — could you take a look and fix them, or let us know if you believe the failures are unrelated to this change?

We're also triggering a Greptile code review in the meantime.

@greptileai

@steveonjava

Copy link
Copy Markdown
Author

@Sameerlite Huggingface rate limit caused the test failure. I triggered a rerun.

@steveonjava

steveonjava commented Jun 16, 2026

Copy link
Copy Markdown
Author

@Sameerlite The rerun succeeded, all tests are passing now.

@Sameerlite

Copy link
Copy Markdown
Collaborator

Thanks for your contribution! A few things to get this ready:

  • Wrong base branch: This PR targets litellm_oss_branch but community PRs should target litellm_internal_staging. Could you rebase?
    git fetch origin
    git rebase --onto origin/litellm_internal_staging origin/litellm_oss_branch <your-branch>
    git push --force-with-lease
    
    Then update the base in GitHub's UI (Edit → Base: litellm_internal_staging).

We're also triggering a Greptile code review:

@greptileai

…r pip install

Injects the venv scripts directory into PATH internally so `litellm db generate`
and `db push` resolve the prisma binary without manual PATH setup after a plain
pip install. Adds a `db generate` CLI command, PATH-injection in proxy-extras
utils, unit tests for the CLI and path verifier, and a gated integration test
(`integration` marker + LITELLM_RUN_INTEGRATION_TESTS) so the real 244s prisma
generate does not run in the standard unit shard.
@steveonjava steveonjava force-pushed the fix/litellm-prisma-generate-oob branch from 90e2159 to c4a0792 Compare June 17, 2026 14:19
@steveonjava steveonjava changed the base branch from litellm_oss_branch to litellm_internal_staging June 17, 2026 14:19
@steveonjava

Copy link
Copy Markdown
Author

Thanks @Sameerlite. Done. I rebased onto litellm_internal_staging and switched the PR base to match. The diff is now the 9 db-generate files with no unrelated changes, and it's a single commit. Let me know if you'd like anything else before merge.

Stephen Chin added 6 commits June 17, 2026 07:34
…y-extras

Addresses review feedback (jamesmyatt): db generate now resolves schema.prisma
via PrismaManager (litellm/proxy/schema.prisma) — the same schema db push uses —
instead of reaching into the sibling litellm-proxy-extras package. Keeps the
generate path consistent with the existing push path and corrects the docstring,
which wrongly claimed db push uses the proxy-extras schema. proxy-extras is still
imported for prisma-binary discovery and PATH injection (not the schema).
After rebasing onto litellm_internal_staging, db.py is a new file with a
zero-Any budget. Type the proxy-extras helper bindings (Optional[Callable])
and _get_generate_env's return as Dict[str, str], guard the optional prisma
command at the call site, and mark the unavoidable untyped third-party import
boundary with any-ok. No behavior change.
Apply black (26.3.1, repo-pinned) to the new db generate test files so they
pass the lint job's `black --check .` after the rebase onto
litellm_internal_staging. Formatting only, no behavior change.
The ruff strict-rule budget (UP006) flags typing.Dict/List; switch to builtin
dict[str, str] and list[str] to stay under the codebase ceiling. No behavior
change.
@steveonjava

Copy link
Copy Markdown
Author

Both red checks look like infra, not this PR:

  1. lint is broken in litellm_internal_staging itself: the basedpyright step calls type_check_gate.py without --tool basedpyright, so it errors out (the following arguments are required: --tool). Landed around 78a7d0b, so it should hit every PR on this branch.

  2. proxy-infra got cancelled at the 20m timeout hanging on the uv download during setup, before any tests ran. Looks like a transient network flake; a re-run should clear it.

The change itself is green locally and the test jobs passed on the latest run. Could you re-run the cancelled job and check the lint arg? Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Self-hosted installation fail due to schema.prisma

5 participants