Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,11 @@ Both workflows are driven by live data — the catalog (`uip agent guardrails ca

> Full three-fetch mandate applies to **Recommend mode**. In **Validate mode** of an existing guardrail the SDK docs are the authoritative, sufficient source for a validator's scope/stage — `catalog` (relevance metadata) and `list` (tenant entitlement) are recommended cross-checks, not a hard prerequisite for a scope/placement fix. See [Validate Mode](#validate-mode).

> **The SDK docs are authoritative for shape, never for availability.** They carry `Platform Availability`
> notes for features still rolling out (BYOG, LLM-as-judge). Those are product-wide statements, not facts
> about this tenant — only `uip agent guardrails list` decides that. Never withhold or down-rank a
> recommendation because a fetched page called the feature "not enabled on every tenant yet".

**Required first operation in both modes:** use `WebFetch` on
`https://uipath.github.io/uipath-python/core/guardrails/` before catalog calls,
project inspection, analysis, or edits. A coded guardrail recommendation or
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ Add guardrails to a Python coded agent (LangChain/LangGraph) in two styles: **mi
- Entity type names or their allowed values
- Import paths

> **That authority covers shape, not availability.** These pages carry `Platform Availability` notes for features still rolling out (BYOG, LLM-as-judge). Those notes are product-wide, never a statement about the tenant in front of you — [Check Tenant Availability](#check-tenant-availability-mandatory-for-built-in-ai-validators) below is the only authority for that. A validator the docs describe as "not enabled on every tenant yet" can still be `Available` here; author it.

When available, the `langchain/guardrails/` page documents three actions — **`LogAction`**, **`BlockAction`**, and
**`EscalateAction`** (human-in-the-loop). Treat the fetched page as the source of truth for `EscalateAction`'s
parameters, supported scopes, and stages; the operational wiring it doesn't cover (the suspend->resume UX, the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,10 @@ the mapping IS needed, fetch via `WebFetch`:
(`uipath-langchain` in `pyproject.toml` or `from langchain…` / `from langgraph…` imports): middleware classes,
their supported scopes/stages, and the `uipath_langchain.guardrails` import paths.

The `Platform Availability` notes on these pages are product-wide, so never turn one into a review finding:
tenant availability comes from `uip agent guardrails list`, and the fetched pages supply class, scope, and
import names only.

Build a `{ validator_id → { middleware_class, validator_class, entity_enum, allowed_scopes, allowed_stages,
import_path } }` lookup by joining catalog entries with the SDK class names. Use the fetched content as the sole
source of truth for class/enum/import names — never memory.
Expand Down
Loading