fix(slurm): restore plugin activation boundary - #930
Conversation
|
|
Exact-head real one-node/one-GPU acceptance completed successfully.
No internal environment identifiers are included here; detailed evidence is retained privately. |
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
cccc66d to
c33eb0d
Compare
|
Post-restack exact-head real one-node/one-GPU acceptance also completed successfully. Plugin preflight, backend readiness, fresh-worker generation, 4/4 records with the plugin marker, and automatic winner publication all passed. Detailed environment evidence remains private. |
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
andreatnvidia
left a comment
There was a problem hiding this comment.
The updated regression now exercises the full plugin handoff through the default worker process, including installation, generation, and result publication. The activation boundary looks correct, and the original concern is covered. Looks good to me.
📋 Summary
Restore the client plugin activation boundary for Slurm generation. The runtime wrapper now starts the plugin-aware client worker in a fresh Python interpreter, so the verified dependency overlay is activated before plugin and Data Designer configuration modules are imported.
This is needed because the runtime wrapper has already imported Data Designer configuration modules before it reaches the client phase. Activating a dynamic plugin overlay later in that same interpreter cannot retroactively rebuild the already-imported configuration type registry. As a result, a valid plugin-provided column can pass scheduling and endpoint readiness but still be rejected when generation starts. A fresh worker interpreter makes overlay activation happen before the plugin and configuration imports that depend on it.
Post-#929 one-node acceptance established that:
Post-restack real one-node acceptance completed successfully: the plugin was installed and discovered, the model backend became ready, the fresh client worker generated all four requested records with the plugin-provided marker, and the winner was published automatically. The later review-response commit changes tests only, so the accepted runtime source tree is unchanged at the current head.
🔗 Related Issue
Post-#929 plugin activation regression; no separate issue.
🔄 Changes
ClientWorkerProcesscomponent that owns the fresh-interpreter contract without importing configuration, interface, plugin, or worker modules._clientthrough the default process component, verifies the generated plugin column, and verifies result/candidate publication.🧪 Testing
make testpasses (not run; Slurm-only change)make test-slurm: 1,430 passed after restacking on the latest shared basemake check-slurmmake test-slurm-wheel-installgit diff --check✅ Checklist