Filter incompatible SDXL route tags
This commit is contained in:
@@ -4604,7 +4604,30 @@ def smoke_sdxl_tag_policy() -> None:
|
||||
_expect(deps.axis_value_tags is sdxl_tag_policy.axis_value_tags, "SDXL route deps lost axis-value tag policy")
|
||||
_expect(deps.camera_tags is sdxl_tag_policy.camera_tags, "SDXL route deps lost camera tag policy")
|
||||
_expect(deps.explicit_tags is sdxl_tag_policy.explicit_tags, "SDXL route deps lost explicit tag policy")
|
||||
_expect(
|
||||
deps.filter_incompatible_route_tags is sdxl_tag_policy.filter_incompatible_route_tags,
|
||||
"SDXL route deps lost route-family tag filter",
|
||||
)
|
||||
_expect(deps.softcore_pair_tags is sdxl_tag_policy.softcore_pair_tags, "SDXL route deps lost softcore pair tag policy")
|
||||
mouth_nearby_tags = sdxl_tag_policy.explicit_tags(
|
||||
"missionary penetration with mouth close to the ear",
|
||||
1.29,
|
||||
)
|
||||
_expect("penetration" in mouth_nearby_tags, "SDXL explicit tags lost penetration signal")
|
||||
_expect("oral sex" not in mouth_nearby_tags, "SDXL explicit tags should not treat nearby mouth wording as oral")
|
||||
outercourse_filtered_tags = sdxl_tag_policy.filter_incompatible_route_tags(
|
||||
["outercourse", "penis licking", "oral sex", "penetration"],
|
||||
_fixture_hardcore_row(
|
||||
action_family="outercourse",
|
||||
position_family="outercourse",
|
||||
position_key="penis_licking",
|
||||
position_keys=["penis_licking"],
|
||||
),
|
||||
)
|
||||
_expect("outercourse" in outercourse_filtered_tags, "SDXL route filter removed matching outercourse tag")
|
||||
_expect("penis licking" in outercourse_filtered_tags, "SDXL route filter removed specific outercourse key")
|
||||
_expect("oral sex" not in outercourse_filtered_tags, "SDXL route filter kept incompatible oral tag")
|
||||
_expect("penetration" not in outercourse_filtered_tags, "SDXL route filter kept incompatible penetration tag")
|
||||
|
||||
stale_character_row = {
|
||||
"prompt": "Characters: 99-year-old adult man, stale body, stale skin, stale hair, stale eyes.",
|
||||
@@ -4731,6 +4754,28 @@ def smoke_sdxl_tag_routes() -> None:
|
||||
).as_text()
|
||||
for required in ("(naked:1.29)", "pussy", "penis", "penetration"):
|
||||
_expect(required in metadata_tags, f"SDXL row tags lost structured explicit metadata tag: {required}")
|
||||
outercourse_noise_row = _fixture_hardcore_row(
|
||||
item="penis-licking outercourse position with tongue along the penis shaft",
|
||||
pose="configured outercourse pose",
|
||||
role_graph="Woman A bends low while her tongue runs along Man A's penis shaft.",
|
||||
source_role_graph="Woman A bends low while her tongue runs along Man A's penis shaft.",
|
||||
item_axis_values={
|
||||
"position": "penis-licking outercourse position",
|
||||
"outer_act": "tongue along the penis shaft",
|
||||
},
|
||||
action_family="outercourse",
|
||||
position_family="outercourse",
|
||||
position_key="penis_licking",
|
||||
position_keys=["penis_licking"],
|
||||
)
|
||||
outercourse_noise_tags = sdxl_tag_routes.row_core_tags_result(
|
||||
sdxl_tag_routes.SDXLRowTagRequest(outercourse_noise_row, 1.29),
|
||||
deps,
|
||||
).as_text()
|
||||
_expect("outercourse" in outercourse_noise_tags, "SDXL outercourse row lost matching family tag")
|
||||
_expect("penis licking" in outercourse_noise_tags, "SDXL outercourse row lost specific position key")
|
||||
_expect("oral sex" not in outercourse_noise_tags, "SDXL outercourse row kept incompatible oral tag")
|
||||
_expect("penetration" not in outercourse_noise_tags, "SDXL outercourse row kept incompatible penetration tag")
|
||||
|
||||
pair = pb.build_insta_of_pair(
|
||||
row_number=1,
|
||||
|
||||
Reference in New Issue
Block a user