Task Summary
The two samplers, Split, and If, Dummy and Sleep still have no standalone form. A workflow built out of them exports a script of commented placeholders.
Each implements generateStandaloneCode, returning the pandas that does what its executor does. The samplers and Split need more than that. They decide per row whether to keep it, so which rows survive is fixed by the exact sequence java.util.Random produces. Seeding Python's own generator, or numpy's, with the same seed selects a different set, and the script would then report a different sample than the workflow it came from. The generator is transcribed instead, in a helper the three share.
Step 11c in #8325.
Task Summary
The two samplers, Split, and If, Dummy and Sleep still have no standalone form. A workflow built out of them exports a script of commented placeholders.
Each implements
generateStandaloneCode, returning the pandas that does what its executor does. The samplers and Split need more than that. They decide per row whether to keep it, so which rows survive is fixed by the exact sequencejava.util.Randomproduces. Seeding Python's own generator, or numpy's, with the same seed selects a different set, and the script would then report a different sample than the workflow it came from. The generator is transcribed instead, in a helper the three share.Step 11c in #8325.