feat(datafabric): gate entity-metadata resolution behind EnableEntityV3API - #1063
Conversation
…V3API When EnableEntityV3API is on, resolve entities via resolve_entity_set_v3_async; otherwise via resolve_entity_set_async. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 571b5fbbf1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
🟡 Changes recommended
The flag-on path can raise an AttributeError if resolve_entity_set_v3_async is not present in the installed SDK, so the implementation should defensively handle missing SDK support (fallback or structured error) before merging.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR adds a feature-flag gate in the Data Fabric query tool so entity-metadata resolution can switch between the current (v1) entity resolver and a future V3 resolver when EnableEntityV3API is enabled. This aligns the runtime behavior with the same flag used by the frontend and allows incremental rollout once the uipath-platform SDK exposes the V3 method.
Changes:
- Introduced
ENTITY_V3_API_FF = "EnableEntityV3API"and routed entity resolution toresolve_entity_set_v3_async(...)only when the flag is enabled. - Added unit tests to assert the v1 vs v3 resolver method selection based on the feature flag.
File summaries
| File | Description |
|---|---|
src/uipath_langchain/agent/tools/datafabric_tool/datafabric_tool.py |
Adds feature-flag-based routing between v1 and v3 entity-metadata resolution methods. |
tests/agent/tools/test_datafabric_tool.py |
Adds unit tests validating resolver selection when the feature flag is on vs off. |
Review details
- Files reviewed: 3/3 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
…3_async The V3 resolution method resolve_entity_set_v3_async lands in uipath-platform 0.2.24; raise the floor so the flag-on path resolves a platform that provides it. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|



What
Gates Data Fabric entity-metadata resolution behind the
EnableEntityV3APIflag (also used by the frontend, UiPath/Agents#6127).How
datafabric_tool.py—ENTITY_V3_API_FF = "EnableEntityV3API"; in_ensure_datafabric_graph:resolve_entity_set_async(...)resolve_entity_set_v3_async(...)Dependency
resolve_entity_set_v3_asyncis not inuipath-platformyet; only the flag-on path calls it. Blocked on that SDK method.Companion
Requires
EnableEntityV3APIin_ALL_FLAGS(uipath-agents-python) for the flag to reach this runtime.Tests
Two unit tests: flag off → v1 method, flag on → v3 method.
pytest10 passed; ruff clean; changed-file coverage 94.74%. Review: P0/P1 = 0.Local robot testing (dummy method with v3 name was created similar to existing method). Extra operations to write to file were added
FF on


FF off (existing)

🤖 Generated with Claude Code