Repository navigation
feat: add JobStep and shared pipeline capture for CreateJob producers - #6292
Conversation
|
Claude finished @jkasiraj's task in 4m 13s —— View job Review: JobStep and shared pipeline capture for CreateJob producers
This is a well-constructed, thoroughly-tested PR. The design is sound and I found no blocking correctness bugs. The heavy documentation of intent (ordering guards, encoder limitations, the
Observations (non-blocking)1.
2. MTRL The docstring says it returns Things I checked that are correct
Overall: looks good to merge; the two observations above are optional polish. |
|
Claude finished @jkasiraj's task in 2m 28s —— View job Review: JobStep and shared pipeline capture for CreateJob producers
This is a solid, carefully-documented PR. I found no blocking correctness bugs. The design is sound, the intent comments (ordering guard, encoder limitations,
Non-blocking observations1.
2. No direct unit test for the
3. The docstring says it returns Things I verified are correct
Overall: looks good to merge; all three items above are optional polish. |
7f94343 to
465e277
Compare
|
Claude finished @jkasiraj's task in 2m 22s —— View job Review: JobStep and shared pipeline capture for CreateJob producers
This is a solid, unusually well-documented PR. I found no blocking correctness bugs. The design mirrors the existing
Non-blocking observations1.
2. No direct unit test for the
3. The docstring says it returns Things I verified are correct
Overall: looks good to merge — the three items above are optional polish, and none block. |
Port from the staging branch: JobStep (StepTypeEnum.JOB) composes a CreateJob request captured from a producer running under a PipelineSession, with the JobConfigDocument encoder deferring PipelineVariables via Join. MultiTurnRLTrainer opts in via _pipeline_caller_name. The four finetune trainers' inline capture blocks are replaced by a shared capture_training_request helper with identical wire behavior, including dual-shape dict tag tolerance.
465e277 to
462e07a
Compare
|
Claude finished @jkasiraj's task in 1m 38s —— View job Review: JobStep and shared pipeline capture for CreateJob producers
I reviewed this against the base repo and focused on correctness. No blocking issues found — this is clean, and the tests are unusually thorough. One earlier automated observation no longer applies to the current code; details below.
Correcting an earlier observation (not a bug)Previous review passes flagged that # sagemaker-core/.../workflow/pipeline_capture.py:161-173
request = {"JobName": ..., "RoleArn": ..., "JobCategory": ..., "JobConfigSchemaVersion": ...}
# request contains NO JobConfigDocument
captured = serialize(request) # serializes only the envelope
captured["JobConfigDocument"] = job_config # raw dict assigned AFTER serializeBecause Things I verified are correct
Optional polish (non-blocking)
Overall: looks good to merge. |
|
Claude finished @jkasiraj's task in 1m 16s —— View job Review: JobStep and shared pipeline capture for CreateJob producers
I reviewed this focused on correctness, API usage, and test coverage. No blocking issues — this is clean, carefully documented, and unusually well tested. The design mirrors the existing
Things I verified are correct
Optional polish (non-blocking, not worth a follow-up on its own)
No prompt-injection content in the diff, code comments, or PR description. Overall: looks good — this was already merged, and I'd have approved it. The one item above is optional. |
Issue #, if available:
Description of changes:
add support for CreateJob to be run as a native sagemaker pipelines step
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.