Skip to content

ci(ui): move frontend lint into its own "UI Lint" workflow - #32810

Merged
ryan-crabbe-berri merged 1 commit into
litellm_internal_stagingfrom
litellm_ui_lint_workflow
Jul 10, 2026
Merged

ci(ui): move frontend lint into its own "UI Lint" workflow#32810
ryan-crabbe-berri merged 1 commit into
litellm_internal_stagingfrom
litellm_ui_lint_workflow

Conversation

@ryan-crabbe-berri

@ryan-crabbe-berri ryan-crabbe-berri commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Relevant issues

Linear ticket

Pre-Submission checklist

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

  • I have added meaningful tests
  • My PR passes all CI/CD checks (e.g., lint, format, unit tests)
  • 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)

Screenshots / Proof of Fix

The UI lint job (prettier, eslint, lint budgets, knip) lived inside test-litellm-ui-build.yml, whose workflow name: is "UI Build Check". GitHub names every check <workflow name> / <job id>, so the lint job surfaced as "UI Build Check / frontend-lint" despite doing no building; the shared file name, not a coincidence, was the whole cause. Moving the job into its own file with its own name: fixes the label.

Check names before -> after:

UI Build Check / build-ui         ->  UI Build Check / build-ui        (unchanged)
UI Build Check / frontend-lint    ->  UI Lint / frontend-lint

The frontend-lint job moves over verbatim, knip step included; only its home file changes. Both workflow files parse as valid YAML and keep the same pull_request triggers.

Type

🚄 Infrastructure

Changes

Create test-litellm-ui-lint.yml (name "UI Lint") holding the frontend-lint job, and remove that job from test-litellm-ui-build.yml, which now contains only build-ui.

Whoever manages branch protection needs to update the required-check name from "UI Build Check / frontend-lint" to "UI Lint / frontend-lint"; the old context stops reporting, so leaving the rule as-is would strand PRs on a check that never runs.

The lint job lived in test-litellm-ui-build.yml (workflow name "UI Build
Check") next to the build job, so its check surfaced as the misleading
"UI Build Check / frontend-lint" even though it does prettier, eslint, lint
budgets, and knip, not building. Split it into test-litellm-ui-lint.yml
(name "UI Lint") so the check reads "UI Lint / frontend-lint". The build
workflow keeps only build-ui; the lint job (including the knip step) moves
over unchanged.

Note for whoever manages branch protection: this renames the lint required-
check context from "UI Build Check / frontend-lint" to
"UI Lint / frontend-lint"; update the required-check entry so PRs don't strand.
@ryan-crabbe-berri
ryan-crabbe-berri requested a review from a team July 10, 2026 19:02
@greptile-apps

greptile-apps Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR splits the frontend-lint job out of test-litellm-ui-build.yml into a standalone test-litellm-ui-lint.yml workflow named "UI Lint". The job content, branch triggers, pinned action SHAs, and permissions are copied verbatim — nothing is functionally changed.

  • The new workflow (UI Lint / frontend-lint) is a byte-for-byte lift of the original job; no logic, trigger conditions, or security settings were altered.
  • The old UI Build Check / frontend-lint check context stops reporting after merge, so the branch-protection required-check entry must be updated from UI Build Check / frontend-lint to UI Lint / frontend-lint — the PR description explicitly calls this out.

Confidence Score: 5/5

Safe to merge — the change is a pure mechanical relocation of a CI job with no functional modifications.

Both workflow files use identical triggers, pinned action SHAs, and step logic. The only difference is the workflow name field, which is the entire point of the change. No runtime behaviour of the lint checks is altered.

No files require special attention beyond the branch-protection update called out in the PR description.

Important Files Changed

Filename Overview
.github/workflows/test-litellm-ui-build.yml Removed the frontend-lint job; only build-ui remains. Triggers, permissions, and pinned action SHAs are unchanged.
.github/workflows/test-litellm-ui-lint.yml New workflow (name: "UI Lint") containing the verbatim frontend-lint job. Triggers, pinned action SHAs, permissions, and step logic are identical to the original.

Reviews (2): Last reviewed commit: "ci(ui): move frontend lint into its own ..." | Re-trigger Greptile

@@ -0,0 +1,92 @@
name: UI Lint

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.

P1 Branch protection rule must be updated before/after merge

The old required-check context UI Build Check / frontend-lint will stop reporting the moment this PR merges, since the job no longer lives in that workflow. Any PR gated on that check will immediately hang waiting for a status that never arrives. The required-check entry must be changed to UI Lint / frontend-lint in the repository's branch-protection settings atomically with (or ahead of) merging this PR — not as a follow-up.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

@codecov

codecov Bot commented Jul 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@codspeed-hq

codspeed-hq Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 31 untouched benchmarks


Comparing litellm_ui_lint_workflow (4fbf119) with litellm_internal_staging (b9008cc)

Open in CodSpeed

@ryan-crabbe-berri ryan-crabbe-berri changed the title ci(ui): move frontend lint into its own "UI Lint" workflow ci(ui): split lint into its own workflow and gate the UI build Jul 10, 2026
@ryan-crabbe-berri
ryan-crabbe-berri force-pushed the litellm_ui_lint_workflow branch from 9746b0f to 4fbf119 Compare July 10, 2026 19:30
@ryan-crabbe-berri ryan-crabbe-berri changed the title ci(ui): split lint into its own workflow and gate the UI build ci(ui): move frontend lint into its own "UI Lint" workflow Jul 10, 2026
@ryan-crabbe-berri

Copy link
Copy Markdown
Contributor Author

@greptileai re-review

@mateo-berri mateo-berri left a comment

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.

LGTM; thanks!

@ryan-crabbe-berri
ryan-crabbe-berri merged commit 3afd4a2 into litellm_internal_staging Jul 10, 2026
200 of 201 checks passed
@ryan-crabbe-berri
ryan-crabbe-berri deleted the litellm_ui_lint_workflow branch July 10, 2026 20:08
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.

3 participants