Skip to content

Allow default values on asset-type pipeline component inputs in load_component#47021

Closed
Copilot wants to merge 1 commit into
mainfrom
copilot/v-cchakradhaallow-default-values-on-asset-type-inp
Closed

Allow default values on asset-type pipeline component inputs in load_component#47021
Copilot wants to merge 1 commit into
mainfrom
copilot/v-cchakradhaallow-default-values-on-asset-type-inp

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 20, 2026

load_component rejected pipeline component YAMLs that define default for asset-type inputs (uri_file, uri_folder, mltable, mlflow_model, custom_model), despite support in the public CLI v2 schema/backend. This PR aligns SDK deserialization/validation behavior with that schema.

  • Input combination validation

    • Updated IOConstants.INPUT_TYPE_COMBINATION to allow default for asset input types:
      • uri_file, uri_folder, mltable, mlflow_model, custom_model
  • YAML schema deserialization

    • Added default fields to asset input schemas so YAML default: is materialized instead of rejected/dropped:
      • DataInputSchema
      • ModelInputSchema
      • MLTableInputSchema
  • Input default semantics for asset types

    • Relaxed Input._update_default for non-primitive asset inputs:
      • accepts str default (e.g., azureml:/URL/path)
      • accepts Input default
    • Preserves prior failure behavior for unsupported non-primitive defaults and non-asset types.
  • Coverage for pipeline component behavior

    • Added fixture YAML with asset-type defaults.
    • Extended unit tests to cover:
      • load from YAML
      • dict/REST round-trip preservation of defaults
      • inline constructor behavior
      • invalid default-type error paths
  • Changelog

    • Added bug-fix note in sdk/ml/azure-ai-ml/CHANGELOG.md.
inputs:
  spaceship_data:
    type: uri_file
    mode: ro_mount
    default: azureml:test_dataset:1

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • centralus-2.in.applicationinsights.azure.com
    • Triggering command: /home/REDACTED/bin/azsdk /home/REDACTED/bin/azsdk ingest-telemetry --client-type copilot-cli --event-type skill_invocation --session-id a6f1498e-00c2-474f-9319-05595f7709d8 --skill-name find-package-skill (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Create a new pull request in Azure/azure-sdk-for-python that reproduces the changes from existing PR #47020 (Allow default values on asset-type inputs in pipeline component YAML), but from a new branch based on main and under the user's branch namespace instead of the Copilot-created PR.

Requirements:

  • Base the work on the main branch.
  • Recreate the code changes from PR Allow default values on asset-type inputs in pipeline component YAML #47020 as closely as possible.
  • Use a new branch under the user's requested namespace, beginning with v-cchakradha/.
  • Open a new PR in Azure/azure-sdk-for-python with an appropriate title and description.
  • The goal is to replace the existing Copilot-authored PR with a user-owned equivalent PR.

If needed, inspect PR #47020 and its changed files/commits to replicate the patch accurately.

The following is the prior conversation context from the user's chat exploration (may be truncated):

User: for this pr can you give create a pr form main and instead of copilot my name use v-cchakradha/....
@Azure/azure-sdk-for-python/pull/47020

Assistant: I can help, but I need one clarification first: do you want me to open a new PR from main that duplicates PR #47020 under your account/branch, or do you want the existing PR #47020 edited so the author/branch reflects v-cchakradha/...?

Important constraint: I can’t change the author of an existing PR. On GitHub, PR authorship is tied to the account/branch that opened it. If you want it under your name, the usual path is:

  1. create a new branch from main,
  2. apply the same changes,
  3. push that branch under your fork or branch namespace,
  4. open a new PR as you.

If your intent is “create a new PR equivalent to #47020 in Azure/azure-sdk-for-python from main, using a branch like v-cchakradha/..., I can do that — but I need you to explicitly confirm that’s what you want. Also, if you want a specific branch name, tell me the exact v-cchakradha/... branch name to use.I can do that, but I need one exact detail first: the full branch name you want, e.g. v-cchakradha/fix-default-asset-inputs.

Also, one limitation: I cannot change the author of existing PR #47020. If you want it under your name instead of Copilot, the right approach is to create a new PR from main with the same changes using your branch.

Reply with either:

  • Use branch v-cchakradha/<name>
    or
  • Pick a branch name for me

and I’ll proceed to create the new PR in Azure/azure-sdk-for-python.

User: yes create new branch

Assistant: We’re waiting for your response to the confirmation dialog before I can continue creating the new branch and PR.

This pull request was created from Copilot chat.

Copilot AI changed the title [WIP] Recreate PR #47020: Allow default values on asset-type inputs in pipeline Allow default values on asset-type pipeline component inputs in load_component May 20, 2026
Copilot AI requested a review from Chakradhar886 May 20, 2026 07:03
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.

2 participants