Cover POV scene profile foreground policy

This commit is contained in:
2026-06-27 18:00:08 +02:00
parent 8c012ee560
commit 727aea6307
+44
View File
@@ -786,6 +786,49 @@ def smoke_camera_scene_single() -> None:
_expect("bag" not in custom_composition_text.lower() and "shoes" not in custom_composition_text.lower(), "custom inline profile composition leaked unrelated props") _expect("bag" not in custom_composition_text.lower() and "shoes" not in custom_composition_text.lower(), "custom inline profile composition leaked unrelated props")
def smoke_scene_camera_adapter_pov_profile_policy() -> None:
parsed_camera = {
"camera_mode": "standard",
"camera_detail": "compact",
"orbit_direction": "front-right quarter view",
"orbit_elevation_label": "elevated shot",
"orbit_distance_label": "medium shot",
"custom_camera_prompt": "front-right quarter view, elevated shot, medium shot",
}
for profile in scene_camera_adapters.SCENE_CAMERA_PROFILES:
key = str(profile.get("key") or "")
foreground = str(profile.get("foreground") or "")
non_pov = _expect_text(
f"scene_camera_adapter_pov_profile_policy.{key}.non_pov",
scene_camera_adapters.scene_camera_directive(
"",
parsed_camera,
pov_labels=[],
subject_kind="couple",
profile_key=key,
),
40,
)
pov = _expect_text(
f"scene_camera_adapter_pov_profile_policy.{key}.pov",
scene_camera_adapters.scene_camera_directive(
"",
parsed_camera,
pov_labels=["Man A"],
subject_kind="couple",
profile_key=key,
),
40,
)
_expect(foreground and foreground in non_pov, f"{key} non-POV scene directive lost profile foreground anchor")
_expect(foreground not in pov, f"{key} POV scene directive reused profile foreground anchor as viewer-side text")
_expect("from POV" in pov, f"{key} POV scene directive lost POV marker")
_expect(
"lower foreground is reserved for POV body or hand cues" in pov,
f"{key} POV scene directive lost lower-foreground body-cue reservation",
)
def smoke_row_camera_policy() -> None: def smoke_row_camera_policy() -> None:
row = { row = {
"prompt": "A generated adult prompt. Composition: vertical office-lobby walking composition. Avoid: low quality.", "prompt": "A generated adult prompt. Composition: vertical office-lobby walking composition. Avoid: low quality.",
@@ -8339,6 +8382,7 @@ SMOKE_CASES: list[tuple[str, Callable[[], None]]] = [
("builtin_single_woman", smoke_builtin_single), ("builtin_single_woman", smoke_builtin_single),
("builtin_couple_metadata", smoke_builtin_couple_metadata), ("builtin_couple_metadata", smoke_builtin_couple_metadata),
("camera_scene_single", smoke_camera_scene_single), ("camera_scene_single", smoke_camera_scene_single),
("scene_camera_adapter_pov_profile_policy", smoke_scene_camera_adapter_pov_profile_policy),
("row_camera_policy", smoke_row_camera_policy), ("row_camera_policy", smoke_row_camera_policy),
("config_route_location_theme", smoke_config_route_location_theme), ("config_route_location_theme", smoke_config_route_location_theme),
("builder_prompt_route_policy", smoke_builder_prompt_route_policy), ("builder_prompt_route_policy", smoke_builder_prompt_route_policy),