Skip to content

fix(agent): require the jev classifier model instead of defaulting to jev-latest - #1930

Merged
ionut-mihalache-uipath merged 2 commits into
mainfrom
fix/jev-require-model
Oct 7, 2026
Merged

ionut-mihalache-uipath merged 2 commits into
mainfrom
fix/jev-require-model

Conversation

@ionut-mihalache-uipath

@ionut-mihalache-uipath ionut-mihalache-uipath commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

What

  • AgentInternalJevClassifierSettings.model is now required and non-empty: Field(..., min_length=1). Before, it defaulted to "jev-latest".
  • uipath is bumped to 2.14.36 (pyproject.toml and uv.lock). It's a patch even though a missing model is now rejected: Agent Builder always wrote a model, and Jev isn't enabled anywhere yet. A patch also stays inside the uipath>=2.14.35, <2.15.0 range that uipath-langchain pins, so it is picked up without a pin bump.

Why

The LLM Gateway serves Jev only under pinned versions, currently jev-1.13.0. It rejects jev-latest with 400 "Unsupported model used", so a Jev tool relying on the default failed at run time. With no default, an agent.json whose Jev tool has no model fails schema validation at startup (resources.0...jev-classifier.settings.model: Field required), before any LLM call.

Agent Builder also drops its default and makes the model required (UiPath/Agents#6550), and UiPathJevClient now requires model_name (UiPath/uipath-llm-client-python#148).

Testing

  • The full uipath package suite passes on 2.14.36: 2598 passed, 1 xfailed. It includes new tests for a missing or empty model.
  • ruff check, ruff format --check and mypy src/uipath/agent are clean.
  • End to end on alpha, with the local runtime linked: a Jev agent with jev-1.13.0 gets a 200 from agenthub_/llm/raw/vendor/typesafe/model/jev-1.13.0/completions and completes. The same agent with no model fails at startup on settings.model.

🤖 Generated with Claude Code

https://claude.ai/code/session_01XpbvUoddLSo7W61dwpjKFC

… jev-latest

The LLM Gateway serves Jev only under pinned versions (jev-1.13.0) and
rejects jev-latest with 400 "Unsupported model used", so a Jev tool that
relied on the default failed at run time. AgentInternalJevClassifierSettings
.model is now required and non-empty: an agent.json without one fails
schema validation at startup instead.

Bumps uipath to 2.15.0 and UIPATH_SCAFFOLD_MINOR to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XpbvUoddLSo7W61dwpjKFC
Copilot AI balanced review requested due to automatic review settings October 7, 2026 14:10
@github-actions github-actions Bot added test:uipath-langchain Triggers tests in the uipath-langchain-python repository test:uipath-runtime test:uipath-integrations labels Oct 7, 2026

Copilot AI 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.

Copilot review overview

🟢 Approval recommended

The validation, tests, package metadata, and scaffold version are consistent with the intended behavior.

Review effort: Balanced
Findings: None

What changed in this PR

Requires explicit pinned Jev classifier models to prevent unsupported jev-latest runtime calls.

Changes:

  • Makes the Jev model required and non-empty.
  • Adds validation tests for missing and empty models.
  • Bumps uipath and scaffold versions to 2.15.
File Description
packages/​uipath/​src/​uipath/​agent/​models/​agent.py Requires an explicit Jev model.
packages/​uipath/​tests/​agent/​models/​test_jev_classifier_tool.py Tests the new validation behavior.
packages/​uipath/​src/​uipath/​_cli/​cli_new.py Updates the scaffold minor version.
packages/​uipath/​pyproject.toml Bumps the package version.
packages/​uipath/​uv.lock Synchronizes the locked package version.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

A patch stays inside the uipath<2.15.0 range uipath-langchain pins, so it
is picked up without a pin bump, and the scaffold pin stays on 2.14.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XpbvUoddLSo7W61dwpjKFC
@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown

🚨 Heads up: uipath-integrations cross-tests are FAILING 🚨

Your changes may break one or more integrations in uipath-integrations-python:

  • uipath-openai-agents
  • uipath-google-adk
  • uipath-agent-framework
  • uipath-llamaindex
  • uipath-pydantic-ai

⚠️ These checks are NOT enforced by branch protection rules. Please review the failures before merging.

🔍 Inspect the failed run →

@sonarqubecloud

sonarqubecloud Bot commented Oct 7, 2026

Copy link
Copy Markdown

@ionut-mihalache-uipath
ionut-mihalache-uipath merged commit 4d9a83e into main Oct 7, 2026
171 of 186 checks passed
@ionut-mihalache-uipath
ionut-mihalache-uipath deleted the fix/jev-require-model branch October 7, 2026 14:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:uipath-integrations test:uipath-langchain Triggers tests in the uipath-langchain-python repository test:uipath-runtime

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants