Filter atlas clothing restore foreground cues

This commit is contained in:
2026-07-01 01:03:54 +02:00
parent b7381b9d51
commit a340def000
2 changed files with 116 additions and 0 deletions
+74
View File
@@ -8665,6 +8665,10 @@ def smoke_pov_oral_position_routes() -> None:
"clothing state:" not in clothing_only_top_prompt,
f"Krea2 POV Prompt Restore clothing-only final prompt leaked raw clothing label: {clothing_only_top_prompt}",
)
_expect(
"pov foreground clothing cue" not in clothing_only_top_prompt,
f"Krea2 POV Prompt Restore clothing-only final prompt should not add a second POV clothing/body cue: {clothing_only_top_prompt}",
)
_expect(
not any(str(detail).lower() in clothing_only_top_prompt for detail in clothing_only_details),
f"Krea2 POV Prompt Restore clothing-only final prompt should not dump raw clothing_detail: {clothing_only_top_prompt}",
@@ -8816,6 +8820,76 @@ def smoke_pov_oral_position_routes() -> None:
_expect(term in side_body_prompt, f"Side-profile oral Krea prompt missing {term!r}: {side_body_prompt}")
_expect("side-phone" not in side_body_prompt, f"Side-profile oral Krea prompt drifted into non-POV side-phone wording: {side_body_prompt}")
side_body_clothing_config = sxcp_nodes.NODE_CLASS_MAPPINGS["SxCPKrea2POVOralFilter"]().build(
"replace",
"",
include_blowjob_side_profile_oral=True,
)[0]
side_body_clothing_config = sxcp_nodes.NODE_CLASS_MAPPINGS["SxCPKrea2POVPromptRestore"]().build(
True,
False,
False,
False,
True,
side_body_clothing_config,
)[0]
side_body_clothing_pair = pb.build_insta_of_pair(
row_number=1,
start_index=1,
seed=3730,
ethnicity="any",
figure="random",
no_plus_women=False,
no_black=False,
trigger=Trigger,
prepend_trigger_to_prompt=True,
options_json=_insta_options(
softcore_camera_mode="from_camera_config",
hardcore_camera_mode="from_camera_config",
camera_detail="compact",
hardcore_clothing_continuity="partially_removed",
),
character_cast=_character_cast(pov_man=True),
hardcore_position_config=side_body_clothing_config,
location_config=_coworking_location_config(),
hardcore_camera_config=_orbit_camera(
horizontal_angle=45,
vertical_angle=0,
zoom=7.5,
subject_focus="action",
),
)
side_body_problem_clothing = (
"Clothing state: Woman A's denim shorts are pulled aside or removed below the hips; "
"button-down shirt tied at the waist, a fitted bralette remain visible from the same outfit; "
"POV foreground clothing cue: a casual shirt with belt open and pants partly lowered, "
"appearing as the viewer's hands, forearms, sleeves, or torso edge."
)
side_body_clothing_pair["hardcore_clothing_state"] = side_body_problem_clothing
side_body_clothing_pair["hardcore_row"]["hardcore_clothing_state"] = side_body_problem_clothing
side_body_clothing_krea = krea_formatter.format_krea2_prompt("", metadata_json=_json(side_body_clothing_pair), target="hardcore")
side_body_clothing_prompt = _expect_text(
"pov_oral_side_profile_body_line_restore_clothing.krea_prompt",
side_body_clothing_krea.get("krea_prompt"),
80,
).lower()
_expect(
"pov side-profile oral body-line position" in side_body_clothing_prompt,
"Side-profile oral clothing restore lost the atlas body-line pose",
)
_expect(
"pov foreground clothing cue" not in side_body_clothing_prompt,
f"Side-profile oral clothing restore should not add a second POV foreground clothing cue: {side_body_clothing_prompt}",
)
_expect(
"denim shorts" not in side_body_clothing_prompt and "below the hips" not in side_body_clothing_prompt,
f"Side-profile oral clothing restore should not expose hidden lower-body clothing: {side_body_clothing_prompt}",
)
_expect(
"button-down shirt tied at the waist" in side_body_clothing_prompt and "fitted bralette" in side_body_clothing_prompt,
f"Side-profile oral clothing restore should preserve visible upper outfit continuity: {side_body_clothing_prompt}",
)
sitting_pair = pb.build_insta_of_pair(
row_number=1,
start_index=1,