Skip to content

AIR CLI Integration: remove requirements file path for config - #6257

Open
riddhibhagwat-db wants to merge 1 commit into
air-clifrom
air-run-remove-requirements-file
Open

AIR CLI Integration: remove requirements file path for config#6257
riddhibhagwat-db wants to merge 1 commit into
air-clifrom
air-run-remove-requirements-file

Conversation

@riddhibhagwat-db

Copy link
Copy Markdown
Contributor

Changes & Why

environment.dependencies now accepts only an inline list of packages. The string form (a path to a requirements.yaml file) is rejected at config load, now that inline deps are fully supported (#6077).

Removes the file-reading paths (readRequirementsDependencies, requirementsDoc, requirementsFile) and the file-vs-inline branching in run submit and convert-to-dabs; the dependencies union collapses to a plain list.

Tests

  • TestLoadRunConfig_PolymorphicFields: requirements.yaml fails at load with must be a list of packages
  • Acceptance rejection case: end-to-end proof the CLI rejects the file-path form with the actionable error message, captured verbatim in output.txt.
  • TestRunConfigDependencies: the inline list still decodes and is returned by inlineDependencies(); unset returns false.
  • TestLoadRunConfig_FullFeatured: a full config with an inline dependencies: list parses into Dependencies.{set, list} correctly.
  • TestBuildSubmitPayloadInlineDependencies: inline deps are carried on environments[].spec.dependencies in the submit payload (empty/nil omit the key).
  • Acceptance inline happy path: a real submit uploads only command.sh + training_config.yaml (no requirements.yaml) and the recorded runs/submit body carries the deps inline.
  • TestBuildArtifacts_ParametersButNoRequirements: inline deps are not written as an uploaded artifact.
  • TestEnvironmentConfigValidate: environment.version is valid only alongside inline deps (the old file-deps branch is gone).
  • Full-featured convert test: the convert-to-dabs path folds inline deps + version into the bundle environments[].spec, proving both consumers stay in lockstep on the inline-only path.

Manual Verification:

Rejected:
Screenshot 2026-08-12 at 9 51 21 AM

Accepted:
Screenshot 2026-08-12 at 9 51 29 AM

@riddhibhagwat-db riddhibhagwat-db changed the title Air run remove requirements file AIR CLI Integration: remove requirements file path for config Aug 12, 2026
@github-actions

github-actions Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Approval status: pending

/acceptance/experimental/air/ - needs approval

5 files changed
Suggested: @vinchenzo-db
Also eligible: @apeforest, @bfontain, @lu-wang-dl, @panchalhp-db, @maggiewang-db, @ben-hansen-db, @pardis-beikzadeh-db

/experimental/air/ - needs approval

8 files changed
Suggested: @vinchenzo-db
Also eligible: @apeforest, @bfontain, @lu-wang-dl, @panchalhp-db, @maggiewang-db, @ben-hansen-db, @pardis-beikzadeh-db

Any maintainer (@andrewnester, @anton-107, @denik, @pietern, @shreyas-goenka, @simonfaltum, @renaudhartert-db, @janniklasrose, @lennartkats-db) can approve all areas.
See OWNERS for ownership rules.

environment.dependencies now accepts only an inline list of packages.
The string form (a path to a requirements.yaml file) is rejected at
config load, now that inline deps are fully supported.

Removes the file-reading paths (readRequirementsDependencies,
requirementsDoc, requirementsFile) and the file-vs-inline branching in
run submit; the dependencies union collapses to a plain list.

Co-authored-by: Isaac
@riddhibhagwat-db
riddhibhagwat-db force-pushed the air-run-remove-requirements-file branch from f79931a to 705d64f Compare August 12, 2026 17:54
@eng-dev-ecosystem-bot

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 705d64f

Run: 31625053421

Env 💚​RECOVERED 🙈​SKIP ✅​pass 🙈​skip Time
💚​ aws linux 4 4 291 1104 8:19
💚​ aws windows 4 4 293 1102 6:28
💚​ azure linux 4 4 290 1104 8:58
💚​ azure windows 4 4 292 1102 6:45
💚​ gcp linux 1 5 291 1104 8:50
💚​ gcp windows 1 5 293 1102 9:00
8 interesting tests: 4 RECOVERED, 4 SKIP
Test Name aws linux aws windows azure linux azure windows gcp linux gcp windows
💚​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
🙈​ TestAccept/bundle/invariant/no_drift 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_endpoints/drift/recreated_same_name 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_indexes/recreate/embedding_dimension 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/ssh/connection 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo 💚​R 💚​R 💚​R 💚​R 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo/root 💚​R 💚​R 💚​R 💚​R
💚​ TestFetchRepositoryInfoAPI_FromRepo/subdir 💚​R 💚​R 💚​R 💚​R
Top 8 slowest tests (at least 2 minutes):
duration env testname
8:10 gcp windows TestAccept
6:03 azure windows TestAccept
5:57 aws windows TestAccept
2:54 azure linux TestAccept
2:54 aws linux TestAccept
2:53 gcp linux TestAccept
2:31 gcp windows TestFilerWorkspaceFilesExtensionsRead
2:06 gcp windows TestFilerReadWrite/workspace_files_extensions

@vinchenzo-db vinchenzo-db 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.

I think this is ok but please have Ben review this one

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.

3 participants