task_illustrations__park_playground__jigsaw_arrangement_label¶
Summary¶
- Domain:
illustrations - Scene id:
park_playground - Implementation source scene:
park_playground - Implementation source:
src/trace_tasks/tasks/illustrations/park_playground/jigsaw_arrangement_label.py
Task Contract¶
Renders a park/playground source illustration, cuts it into a profile-aware tile grid, and shows four lettered complete arrangements of those tiles. Exactly one option preserves the original row-major tile order. The model selects the option letter for the correct arrangement.
Program Contract¶
Program: select_option(match_jigsaw_arrangement(tile_set, arrangement_options, correct_order=row_major)); scene=park_playground; scope=jigsaw_arrangement_label
Candidate set: the visible illustrated scene objects, people, regions, tiles, patches, labels, and option panels inside the jigsaw_arrangement_label objective scope.
Operands: visible scene state and prompt-bound operands named by match_jigsaw_arrangement, tile_set, arrangement_options, correct_order, row_major, park_playground, jigsaw_arrangement_label.
Operation: evaluate select_option over the candidate set using the visible illustrated objects, regions, layout relationships, counts, patch/tile transforms, or option-selection constraints encoded in the program expression; generation enforces a unique final answer.
Output binding: answer uses the option_letter schema; one of the visible option letters A through D.
Annotation witnesses: annotation uses the bbox schema; the prompt/annotation contract defines the minimal visual witnesses.
Query ids: single.
Reasoning Operations¶
Families: transformation, matching
Query Branches¶
| Query id | Program schema |
|---|---|
single |
select_option(match_jigsaw_arrangement(tile_set, arrangement_options, correct_order=row_major)); scene=park_playground; scope=jigsaw_arrangement_label |
Program Metadata¶
- Program signatures:
selection.option_match - Base program contract:
select_option(match_jigsaw_arrangement(tile_set, arrangement_options, correct_order=row_major)); scene=park_playground; scope=jigsaw_arrangement_label - Parameter axes:
person_count,equipment_count,source_size,canvas_profile - Arguments:
tile_set: semantic_role; allowedprofile_aware_park_playground_tiles; sourceprogram_schema_concretearrangement_options: semantic_role; allowedA_D_lettered_tile_arrangements; sourceprogram_schema_concretecorrect_order: operation_parameter; allowedrow_major; sourceprogram_schema_concrete- Argument metadata status:
curated - Supported query ids:
single
Answer Contract¶
- Answer schema:
option_letter - Generator
answer_gt.type:option_letter - The answer value is one of the visible option letters
AthroughD.
Annotation Contract¶
- Annotation schema:
bbox - Generator
annotation_gt.type:bbox - Annotation contains exactly one bbox: the final-image pixel box around the selected jigsaw arrangement option image.
- Do not include the option label badge, all options, source-scene objects, or context-only regions.
Prompt And Trace Requirements¶
- Prompt text must come from
src/trace_tasks/resources/prompts/illustrations/park_playground/illustrations_park_playground_v0.json. - Render randomness, sampled park setting/style, source scene counts, option-label font, option permutations, selected option, and verifier payloads must be explicit in the instance trace.
- Source panels are accepted only when every source tile has enough visual detail to avoid flat-background jigsaw options.
- The selected option bbox, answer label, option permutations, and source tile boxes must all come from the same
compose_jigsaw_arrangement_optionsexecution trace.