Skip to content

fix(ci): raise unit shard job timeouts to satisfy startup-safety guard - #38105

Open
devin-ai-integration[bot] wants to merge 1 commit into
litellm_internal_stagingfrom
litellm_ci_unit_shard_job_timeout
Open

fix(ci): raise unit shard job timeouts to satisfy startup-safety guard#38105
devin-ai-integration[bot] wants to merge 1 commit into
litellm_internal_stagingfrom
litellm_ci_unit_shard_job_timeout

Conversation

@devin-ai-integration

Copy link
Copy Markdown
Contributor

TLDR

Problem this solves:

  • code-quality fails on every PR against litellm_internal_staging
  • Three test-unit shards cap the job at 55m while the guard requires 60m

How it solves it:

  • Raise job-timeout-minutes to 60 for caching-local, proxy-extras, enterprise-package

User Flow

Before: any contributor opening a PR against litellm_internal_staging sees code-quality fail on unrelated changes

  1. They open a PR touching only their own code
  2. The code-quality check fails with "job unit gives pytest 20m but caps the job at 55m ... raise job-timeout-minutes to at least 60" three times
  3. Their PR cannot go green regardless of what they changed

After: the same PR passes code-quality

  1. They open the same PR
  2. The code-quality check passes; workflow startup invariants hold

Relevant issues

The guard tests/code_coverage_tests/check_workflow_startup_safety.py fails on the current base branch tip (ddf4c8e): the three shards added with job-timeout-minutes: 55 violate its 60m minimum. First observed as the code-quality failure on #37917, which does not touch any workflow file

Linear ticket

Pre-Submission checklist

Please complete all items before asking a LiteLLM maintainer to review your PR

  • I have added meaningful tests
  • The handful of test files covering my change pass locally, e.g. uv run pytest tests/test_litellm/<your_test_file>.py -v. Leave the suites (make test-unit-*, make test-unit) to CI: it finishes in ~15 minutes where a laptop takes an hour or more
  • My PR passes all required CI/CD checks (e.g., lint, schema.d.ts sync check, etc.)
  • My PR's scope is as isolated as possible; it only solves 1 specific problem
  • I have received a Greptile Confidence Score of at least 4/5 before requesting a maintainer review (Greptile reviews automatically once the PR is opened; only comment @greptileai to re-request a review after pushing changes)

Delays in PR merge?

If you're seeing a delay in your PR being merged, ping the LiteLLM Team on Slack (#pr-review).

Screenshots / Proof of Fix

This is a CI-only change; the guard itself is the end-user surface, so the proof is running it exactly as the code-quality job does

Before (ddf4c8e)

  1. uv run --no-sync python ./tests/code_coverage_tests/check_workflow_startup_safety.py
  2. Observed output:
ERROR: Workflow startup invariants violated:
  - .github/workflows/test-unit.yml: job `unit` gives pytest 20m but caps the job at 55m. Setup can use up to 35m plus 5m of runner overhead, so the job deadline would preempt pytest; raise job-timeout-minutes to at least 60.
  - .github/workflows/test-unit.yml: job `unit` gives pytest 20m but caps the job at 55m. Setup can use up to 35m plus 5m of runner overhead, so the job deadline would preempt pytest; raise job-timeout-minutes to at least 60.
  - .github/workflows/test-unit.yml: job `unit` gives pytest 20m but caps the job at 55m. Setup can use up to 35m plus 5m of runner overhead, so the job deadline would preempt pytest; raise job-timeout-minutes to at least 60.

After (104f928)

  1. uv run --no-sync python ./tests/code_coverage_tests/check_workflow_startup_safety.py
  2. Observed output:
Workflow startup invariants hold (setup ceiling 35m)

Type

🐛 Bug Fix

Caveats (if any)

  • The guard is the existing test for this change; no new tests are needed

Final Attestation

  • The tests check the right things, including the edge cases, and regressions in the respective real-world customer use-cases are not possible after this PR

Link to Devin session: https://app.devin.ai/sessions/e97eb796504147258f46ce84ea43d373

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration
devin-ai-integration Bot requested a review from a team August 24, 2026 18:09
@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@greptile-apps

greptile-apps Bot commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR raises the job timeout from 55 to 60 minutes for three unit-test shards, matching the reusable workflow’s startup-safety requirement.

  • Updates caching-local, proxy-extras, and enterprise-package.
  • Preserves each shard’s 20-minute pytest timeout while allowing the required setup and runner overhead.

Confidence Score: 5/5

The PR appears safe to merge, with the targeted timeout changes correctly satisfying the existing workflow startup invariant.

Each affected shard retains a 20-minute test budget and now receives the required 60-minute job deadline, accounting for the reusable workflow’s 35-minute setup ceiling and 5-minute runner overhead.

Important Files Changed

Filename Overview
.github/workflows/test-unit.yml The three timeout increases are correctly consumed as job-level deadlines and exactly satisfy the existing 60-minute startup-safety minimum.

Reviews (1): Last reviewed commit: "fix(ci): raise unit shard job timeouts t..." | Re-trigger Greptile

@codecov

codecov Bot commented Aug 24, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

The build-ui failure is a preexisting base-branch issue (undefined icon in skill_detail.tsx) fixed separately in #38109; it is not caused by this PR. Once #38109 merges, a re-run here goes green.

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.

1 participant