Sanitize hard pair scene continuity

This commit is contained in:
2026-06-27 15:36:57 +02:00
parent bb7df8ad77
commit d0f2670d9c
5 changed files with 61 additions and 5 deletions
+17 -2
View File
@@ -169,6 +169,10 @@ def body_exposure_scene_text(scene: Any) -> str:
(r",?\s*\blingerie visible nearby\b", ""),
(r"\boutfit racks\b", "mirror shelves"),
(r"\bcostume racks\b", "mirror shelves"),
(r"\bshoe shelves\b", "side shelves"),
(r"\bshoes visible\b", "body placement visible"),
(r"\bbag and shoes visible\b", "nearby floor edge visible"),
(r"\bshoes and bag visible\b", "nearby floor edge visible"),
(r"\bhanging outfits\b", "hanging fabric"),
(r"\bclothing hooks\b", "wall hooks"),
(r"\boutfit-check\b", "creator-shot"),
@@ -433,6 +437,17 @@ def resolve_hardcore_pair_clothing_result(
if str(part or "").strip()
]
hard_clothing_state = "; ".join(hard_clothing_parts)
scene_cleanup_terms = (
"body is fully exposed",
"bare skin unobstructed",
"body is partly exposed",
"lower body is clear",
"upper body are clear",
"pulled aside",
"removed below the hips",
"pants and underwear are pulled down",
)
hard_clothing_lower = hard_clothing_state.lower()
return HardcorePairClothingRoute(
access_flags=access_flags,
woman_access=woman_access,
@@ -440,8 +455,8 @@ def resolve_hardcore_pair_clothing_result(
hardcore_clothing_state=hard_clothing_state,
hardcore_clothing_sentence=f"{hard_clothing_state}. " if hard_clothing_state else "",
requires_body_exposure_scene=(
"body is fully exposed" in hard_clothing_state.lower()
or "bare skin unobstructed" in hard_clothing_state.lower()
any(access_flags.values())
or any(term in hard_clothing_lower for term in scene_cleanup_terms)
),
)