Skip to content

[evaluation] Name both SDK and asset aliases in TaskNavigationEfficiency validator errors#48048

Open
m7md7sien wants to merge 5 commits into
Azure:mainfrom
m7md7sien:eval/tne-validator-dual-name-error-msg
Open

[evaluation] Name both SDK and asset aliases in TaskNavigationEfficiency validator errors#48048
m7md7sien wants to merge 5 commits into
Azure:mainfrom
m7md7sien:eval/tne-validator-dual-name-error-msg

Conversation

@m7md7sien

Copy link
Copy Markdown
Contributor

Summary

TaskNavigationEfficiencyValidator (added to the SDK in Azure/azureml-assets#5199, wired up in #5203) accepts either the SDK input names (response / ground_truth) or the azureml-assets / eval-service names (actions / expected_actions) via _normalize_input_aliases. The builtin.task_navigation_efficiency evaluator declares its evaluation-service data-mapping input names as actions / expected_actions — the Foundry eval service / ACA / C# require these and reject the SDK-style response / ground_truth mapping keys with MissingRequiredDataMapping.

However, the validator's user-facing error messages referenced only the SDK names. So a caller who correctly supplied expected_actions (empty/None) got:

(UserError) 'ground_truth' parameter is required and cannot be None or empty.

— naming a parameter (ground_truth) they never used and that the service does not accept as a mapping key. Confusing UX/consistency bug.

Fix

Update every user-facing validation message in TaskNavigationEfficiencyValidator that names response or ground_truth to also cite the accepted alias:

  • 'ground_truth''ground_truth' (also accepted as 'expected_actions')
  • 'response''response' (also accepted as 'actions')

Applies to the required/empty, type-mismatch, and empty-list messages. Message text only — no changes to error categories, validation logic, or control flow.

Notes

  • No version bump; added a Bugs Fixed note to the unreleased CHANGELOG section.
  • No new tests: existing unit tests in tests/unittests/test_common_validators.py assert on ErrorCategory / pytest.raises(EvaluationException), not on message substrings, so they remain green.

…ncy validator errors

TaskNavigationEfficiencyValidator accepts either the SDK input names (response/ground_truth) or the azureml-assets names (actions/expected_actions), but its user-facing validation messages referenced only response/ground_truth. A caller who correctly supplied actions/expected_actions could get an error naming ground_truth/response - parameters they never used and that the eval service does not accept as data-mapping keys - which was confusing.

Update every validation message that names response/ground_truth to also cite the accepted alias, e.g. 'ground_truth' (also accepted as 'expected_actions') and 'response' (also accepted as 'actions'). Message text only; no changes to categories, logic, or control flow.
Copilot AI review requested due to automatic review settings July 14, 2026 18:34
@m7md7sien m7md7sien requested a review from a team as a code owner July 14, 2026 18:34
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
9 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@github-actions github-actions Bot added the Evaluation Issues related to the client library for Azure AI Evaluation label Jul 14, 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.

Pull request overview

Clarifies task-navigation validation errors by naming both SDK inputs and service aliases.

Changes:

  • Updates response/ground_truth errors to mention actions/expected_actions.
  • Documents the fix in the unreleased changelog.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
CHANGELOG.md Records the validation-message fix.
_task_navigation_efficiency_validator.py Adds accepted aliases to user-facing errors.

…eml-assets names

Swap the alias order in every TaskNavigationEfficiencyValidator error message so the azureml-assets input names ('actions'/'expected_actions') are primary and the SDK names ('response'/'ground_truth') are the parenthetical alias. Update the CHANGELOG entry to match. Message text only; no logic, category, or control-flow changes.
@m7md7sien m7md7sien marked this pull request as draft July 14, 2026 19:24
@m7md7sien m7md7sien marked this pull request as ready for review July 15, 2026 15:24
@m7md7sien m7md7sien enabled auto-merge (squash) July 15, 2026 15:24
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
9 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Evaluation Issues related to the client library for Azure AI Evaluation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants