Add scene choice board node

This commit is contained in:
2026-06-28 02:09:30 +02:00
parent 509960a699
commit e434bd66ad
5 changed files with 716 additions and 0 deletions
+34
View File
@@ -8956,6 +8956,7 @@ def smoke_node_scene_chain_registration() -> None:
"SxCPHardcoreBranchOptions",
"SxCPSceneOutput",
"SxCPScenePairOutput",
"SxCPChoiceBoard",
]
for node_name in required_nodes:
_expect(node_name in sxcp_nodes.NODE_CLASS_MAPPINGS, f"{node_name} missing from node registry")
@@ -9245,6 +9246,39 @@ def smoke_node_scene_chain_registration() -> None:
content_hard_seed_config.get("pose_seed") == 8899 and content_hard_seed_config.get("role_seed") == 8899,
"Hardcore branch content_pose reroll did not reach hardcore pose and role seeds",
)
choice_board_node = nodes["SxCPChoiceBoard"]()
choice_board_output = choice_board_node.build(
json.dumps(content_pair),
"hardcore_position_current",
"",
"",
"auto",
"auto",
"Woman A",
"",
"",
)
choice_result = choice_board_output["result"]
position_config = json.loads(choice_result[2])
board_json = json.loads(choice_result[4])
_expect(position_config.get("enabled"), "Choice Board did not emit active hardcore position config")
_expect(board_json.get("choices"), "Choice Board did not expose resolved choice rows")
location_board_output = choice_board_node.build(
json.dumps(content_pair),
"none",
"fixed private test location with repeated room anchors",
"",
"auto",
"auto",
"Woman A",
"",
"",
)
location_config = json.loads(location_board_output["result"][0])
_expect(
location_config.get("scene_entries", [{}])[0].get("prompt") == "fixed private test location with repeated room anchors",
"Choice Board did not convert location override into a replace location config",
)
def smoke_node_builder_registration() -> None: