task_puzzles__cube_net__opposite_face_label¶
Summary¶
- Domain:
puzzles - Scene id:
cube_net - Task id:
task_puzzles__cube_net__opposite_face_label - Objective contract: choose the option matching the face opposite the marked face after folding.
Program Contract¶
Program: select_option(folded_cube_net.opposite_face, reference=marked_face); scene=cube_net; scope=opposite_face_label
Candidate set: the visible cube-net faces, face colors/labels, marked face or edge, and labeled candidate options inside the opposite_face_label objective scope.
Operands: visible scene state and prompt-bound operands named by folded_cube_net, opposite_face, reference, marked_face, cube_net, opposite_face_label.
Operation: evaluate select_option over the candidate set using the visible states, constraints, transforms, comparisons, counts, paths, or option-selection rules encoded in the program expression; generation enforces a unique final answer.
Output binding: answer uses the option_letter schema; generation binds a unique final answer.
Annotation witnesses: annotation uses the bbox schema; the prompt/annotation contract defines the minimal visual witnesses.
Query ids: single.
Reasoning Operations¶
Families: transformation
Query Contract¶
- Public query id:
single - The task always asks for the folded-cube face opposite the marked reference face.
- Net rotation, style, face labels, and option order are render/generation axes, not query ids.
Answer And Annotation¶
- Answer type:
option_letter - Annotation schema:
bbox - Annotation box is the image-pixel box for the selected option card.
- The marked reference face is already visible in the image and is not part of the annotation.
Implementation¶
- Registered class:
trace_tasks.tasks.puzzles.cube_net.opposite_face_label.PuzzlesCubeNetOppositeFaceLabelTask - Prompt bundle:
src/trace_tasks/resources/prompts/puzzles/cube_net/puzzles_cube_net_v1.json - Scene config:
src/trace_tasks/resources/configs/domains/puzzles/cube_net.yaml