Skip to content

[Feature]: Framework-level validation for conflicting environment variables across runtime pluginsΒ #3147

@Goku2099

Description

@Goku2099

What you would like to be added?

I would like to add framework-level validation to detect conflicts between environment variables managed by
different runtime plugins, and between plugin-reserved environment variables and user-provided envs in a TrainJob.

This follows the recent addition of validation for MPI-reserved environment variables and addresses a remaining TODO in the framework regarding cross-plugin env conflicts.

Why is this needed?

At the moment, each runtime plugin validates only its own reserved environment variables. This means conflicting or overlapping environment variables can still be configured across plugins or via user input, potentially leading to undefined behavior or hard-to-debug runtime failures.

As more runtime plugins are added, this risk increases.

##goal

Prevent users from configuring environment variables that conflict with environment variables managed by runtime plugins, and surface such issues early through validation with clear error messages.

##approach

  • Runtime plugins expose the set of environment variables they reserve or manage.

  • During TrainJob validation, detect conflicts between:

    1. plugin-reserved environment variables
    2. user-provided environment variables
  • Fail validation early when conflicts are detected.

This is intended as an initial, conservative step without introducing plugin precedence or automatic conflict resolution.

Love this feature?

Give it a πŸ‘ We prioritize the features with most πŸ‘

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions