Repository navigation
test(train): Stop MTRL training integ tests churning fixture MPG - #6362
Merged
lucasjia-aws merged 1 commit intoSep 30, 2026
Merged
Conversation
MTRL training integ tests registered their output into the SDK default group mock-oss-test-mtrl-mpg, which also holds the fixed fixture package that the MTRL evaluator integ tests attach to. The CI resource cleaner keeps only the oldest and newest versions in that group, so every new training run caused the fixture package (mpg/158) to be deleted, and test_evaluate_finetuned_model / test_evaluate_with_attached_trainer have failed with "ModelPackage ... does not exist" since ~2026-09-12. Send training output to a dedicated scratch group (mock-oss-test-mtrl-train-mpg, get-or-created by a fixture), and refresh the fixture job to mock-oss-test-mtrl-20260929124814 (mpg/219), which is pinned with the pysdk-ci-protected=true tag honored by the cleaner.
lucasjia-aws
temporarily deployed
to
auto-approve
September 29, 2026 22:49 — with
GitHub Actions
Inactive
lucasjia-aws
temporarily deployed
to
auto-approve
September 29, 2026 22:49 — with
GitHub Actions
Inactive
lucasjia-aws
temporarily deployed
to
auto-approve
September 29, 2026 22:49 — with
GitHub Actions
Inactive
|
Claude finished @lucasjia-aws's task in 1m 18s —— View job Review: PR #6362 — Stop MTRL training integ tests churning fixture MPG
This is a clean, well-scoped, test-only change (integ tests under Verified correct
Minor observations (non-blocking)
No prompt-injection or credential-handling concerns in the diff. No hardcoded secrets (account IDs present are pre-existing test constants, not introduced by this PR). Overall: looks good to merge. Nice, well-documented fix. Note: the inline-comment tool wasn't available in this run, so the above is a single consolidated review. |
jam-jee
approved these changes
Sep 30, 2026
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue
CI Health V3 Master
canaries-v3-master (sagemaker-train)fails (e.g. https://github.com/aws/sagemaker-python-sdk/actions/runs/36535375345/job/109298089830). The same two tests have been failing ingpu-integ-tests-mastersince ~2026-09-12 and moved into the canary job when GPU integ was folded into canaries on 2026-09-28.Problem
test_mtrl_trainer_integration.py::TestMTRLEvalIntegration::test_evaluate_finetuned_modelandtest_mtrl_evaluator_3p_agent.py::TestMTRLEvaluator3PAgentIntegration::test_evaluate_with_attached_trainerfail withModelPackage arn:aws:sagemaker:us-west-2:729646638167:model-package/mock-oss-test-mtrl-mpg/158 does not exist. Both attach to the fixture jobmock-oss-test-mtrl-20260910094327(refreshed in #6259), whose output package no longer exists.Root cause
The MTRL training tests in
test_multi_turn_rl_trainer_integration.pydo not passoutput_model_package_group, soMultiTurnRLTrainerfalls back to{model}-mtrl-mpg, i.e.mock-oss-test-mtrl-mpg, the same group that holds the fixture package. The CI resource cleaner treats that group as protected but trims it down to the oldest and newest versions. Every CI run adds new versions, so the fixture version is deleted within about a day of any refresh. CloudTrail shows the cleaner role deleting the intermediate versions, and the group now only holds v1, v217, v218 and v219.Fix
Training tests now write to a dedicated scratch group
mock-oss-test-mtrl-train-mpg, created on demand by a module-scoped, race-safe fixture (the trainer only validates an explicitly passed group, it does not create it). The fixture job is refreshed tomock-oss-test-mtrl-20260929124814(Completed, outputmock-oss-test-mtrl-mpg/219). The companion infra change (internal CR: ) makes the cleaner keep model packages taggedpysdk-ci-protected=trueand protects the new scratch group, so a pinned fixture survives even if something writes to the fixture group again.Testing
black and flake8 clean;
pytest --collect-onlycollects all 15 tests in the three modules. The integ tests were not run locally because they launch GPU training jobs; they are covered by CI Health.