mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-22 00:31:44 +00:00
The release pagination loop in run_daily.sh used to break the moment a page contained any v*-stable tag. GitHub's /releases endpoint orders by created_at, not semver, so a freshly-cut backport on an older series (e.g. v1.80.1-stable published today) can appear on an earlier page than a higher-versioned release (v1.83.0-stable published two weeks ago). The early-break would silently pin the cron to the stale tag because the higher-versioned release on a later page never made it into the merged set the final sort_by consumed — and the cron would publish a compatibility matrix against a stale LiteLLM version with no visible signal that anything was wrong. Keep the empty-page guard (so a quiet release feed still doesn't burn through the full 5-page cap) but drop the broken early-break. Tests live in tests/claude_code/_publisher_unit_tests/ (mirroring the existing _driver_unit_tests / _builder_unit_tests / _pr_gate_unit_tests naming convention already excluded from the PR-gate pytest run). They: - Statically assert the buggy length>0 + break combo is not in the pagination loop body. - Statically assert the empty-page guard is still in place. - Drive the actual run_daily.sh resolution snippet with a fake curl whose page 1 contains a low-version backport stable and page 2 contains the high-version stable, then assert that the high-version tag is the one resolved. This is the end-to-end regression test. Co-authored-by: Mateo Wang <mateo-berri@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| _builder_unit_tests | ||
| _driver_unit_tests | ||
| _pr_gate_unit_tests | ||
| _publisher_unit_tests | ||
| basic_messaging_non_streaming | ||
| basic_messaging_streaming | ||
| count_tokens | ||
| cron_vm | ||
| long_context_1m | ||
| pdf_input | ||
| prompt_caching_1h | ||
| prompt_caching_5m | ||
| structured_outputs | ||
| thinking | ||
| thinking_with_tool_use | ||
| tool_search | ||
| tool_use | ||
| tool_use_streaming | ||
| vision | ||
| web_search | ||
| __init__.py | ||
| _basic_messaging.py | ||
| cli_driver.py | ||
| conftest.py | ||
| http_probe.py | ||
| manifest.yaml | ||
| matrix_builder.py | ||
| pr_gate_version_resolver.py | ||
| rate_limiter.py | ||
| run_compat.sh | ||
| sample_compatibility-matrix.json | ||
| test_config.yaml | ||