task_symbolic__clock__time_order_label¶
1) Identity¶
- Domain:
symbolic - Scene id:
clock - Scene:
clock - Task id:
task_symbolic__clock__time_order_label - Objective: choose the option card that lists four clock labels from earliest to latest.
Program Contract¶
Program: clock.time_order_label(scene=clock, scope=four_labeled_analog_clocks_with_six_order_options, output=option_label)
Candidate set: the six numbered answer cards.
Operands: the four labeled analog clock times and the candidate label order shown on each answer card.
Operation: read the four clock times and select the unique card whose order is earliest to latest in the 12-hour cycle, with 12 before 1.
Output binding: answer is the selected numbered option label.
Annotation witnesses: one bbox marking the correct answer card.
Query ids: single.
Reasoning Operations¶
Families: ranking
2) Scene + Task Contract¶
- Public branch metadata:
query_id - Supported public
query_id:single - Supported non-semantic visual axes:
scene_variant:classic|minimal|outlinestyle_variant:accented|marker|studioaccent_color_name: shared symbolic clock colorsanswer_gt.type:string- Answer schema: one option label from
1through6. annotation_gt.type:bbox- Annotation schema:
bbox;[x0, y0, x1, y1]for the correct option card only. - Scene contract:
- the top row contains exactly four analog clocks labeled
A..D, - the bottom panel contains exactly six numbered answer cards,
- each answer card lists one candidate ordering of the four clock labels,
- exactly one card matches the earliest-to-latest order,
- all visible clock times are distinct and separated by the configured comparison gap.
3) Prompt Contract¶
- Bundle:
symbolic_clock_v1 scene_key:clocktask_key:clock_time_order_label_query- Query prompt key:
time_order_label - Required slots:
- scene:
object_description - answer output:
json_output_contract_answer_only,answer_hint,json_example_answer_only - answer+annotation mode:
json_output_contract,annotation_hint,answer_hint,json_example - Modes:
answer_only,answer_and_annotation
4) Annotation + Trace Contract¶
- Prompt-facing annotation is a single bbox for the correct answer card.
- Clock-face bboxes are trace metadata only and are not prompt-facing annotation.
projected_annotationincludesbboxandpixel_bbox.render_maprecords clock bboxes, option-card bboxes, the correct label, and the correct option bbox.execution_tracerecords shown times, the true label order, all candidate option orders, the correct option label, and resolved visual axes.
5) Determinism + Tests¶
- Deterministic sampling/rendering from
instance_seed. - Answers and annotation come from the finalized rendered clock and option panel.
- Behavior/trace/prompt tests:
tests/test_symbolic_clock_compare_tasks.py - Contract/build tests:
tests/test_symbolic_clock_compare_contracts.py