From b6c6df03ee5ee36ebeceaf72e517c3e06eb78af8 Mon Sep 17 00:00:00 2001 From: Ethanfel Date: Wed, 1 Jul 2026 17:05:21 +0200 Subject: [PATCH] Cover scene default clothing seed axes --- tools/prompt_smoke.py | 58 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/tools/prompt_smoke.py b/tools/prompt_smoke.py index dae836e..0877661 100644 --- a/tools/prompt_smoke.py +++ b/tools/prompt_smoke.py @@ -16499,6 +16499,31 @@ def smoke_node_scene_chain_registration() -> None: wardrobe_trace = json.loads(scene).get("seed_trace", {}).get("wardrobe", {}) _expect(wardrobe_trace.get("seed") == 9981, "Scene Wardrobe seed options did not write seed trace") _expect(wardrobe_trace.get("axes") == ["clothing"], "Scene Wardrobe seed options should write clothing trace axes") + wardrobe_default_seed_options = nodes["SxCPSceneLayerSeedOptions"]().build( + "wardrobe", + "fixed", + 9982, + "none", + "same_for_all_rows", + "replace_layer", + )[0] + wardrobe_default_scene = nodes["SxCPSceneWardrobe"]().build( + seed_fixture_scene, + True, + "woman", + "A", + "full", + "simple black dress", + "fully nude", + "", + wardrobe_options=wardrobe_options, + seed_options=wardrobe_default_seed_options, + )[0] + wardrobe_default_trace = json.loads(wardrobe_default_scene).get("seed_trace", {}).get("wardrobe", {}) + _expect( + wardrobe_default_trace.get("axes") == ["clothing"], + "Scene Wardrobe default seed axis should resolve to clothing", + ) location_options = nodes["SxCPSceneLocationLayoutOptions"]().build( "replace", @@ -16721,6 +16746,39 @@ def smoke_node_scene_chain_registration() -> None: _expect(len(soft_clothing_items) > 1, "Softcore branch clothing reroll did not change softcore outfit") _expect(len(inherited_hard_clothing) > 1, "Softcore branch clothing reroll did not change inherited hard clothing state") _expect(len(soft_clothing_poses) == 1, "Softcore branch clothing reroll should keep softcore pose stable") + soft_default_seed_options = nodes["SxCPSceneLayerSeedOptions"]().build( + "softcore_branch", + "fixed", + 6681, + "none", + "same_for_all_rows", + "replace_layer", + )[0] + soft_default_pair = _soft_clothing_pair(6681, soft_default_seed_options) + soft_default_trace = ( + soft_default_pair.get("scene_chain", {}).get("softcore", {}).get("seed_trace", {}).get("softcore.softcore_branch", {}) + ) + soft_default_seed_config = ( + soft_default_pair.get("softcore_row", {}).get("seed_config") + if isinstance(soft_default_pair.get("softcore_row"), dict) + else {} + ) + _expect( + soft_default_trace.get("axes") == ["clothing", "pose", "role"], + "Scene softcore branch default seed axes should resolve to clothing, pose, and role", + ) + _expect( + soft_default_seed_config.get("clothing_seed") == 6681, + "Scene softcore branch default seed axis did not write clothing_seed", + ) + _expect( + soft_default_seed_config.get("pose_seed") == 6681 and soft_default_seed_config.get("role_seed") == 6681, + "Scene softcore branch default seed axis did not write pose and role seeds", + ) + _expect( + soft_default_seed_config.get("content_seed") != 6681, + "Scene softcore branch default seed axis should not write content_seed", + ) content_pose_seed_options = nodes["SxCPSceneLayerSeedOptions"]().build( "hardcore_branch", "fixed",