{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://mujoco.local/contracts/lekiwi-language-task-v2.schema.json", "title": "LeKiwi language task v2", "$defs": { "Stamp": { "type": "object", "additionalProperties": false, "required": ["runId", "sceneRevision", "sequence", "planRevision", "requestId"], "properties": { "runId": { "type": "string", "minLength": 1, "maxLength": 128 }, "sceneRevision": { "type": "integer", "minimum": 0, "maximum": 1000000000 }, "sequence": { "type": "integer", "minimum": 0, "maximum": 1000000000 }, "planRevision": { "type": "integer", "minimum": 0, "maximum": 1000000000 }, "requestId": { "type": "string", "minLength": 1, "maxLength": 128 } } }, "Position": { "type": "array", "minItems": 3, "maxItems": 3, "items": { "type": "number", "minimum": -2, "maximum": 2 } }, "Observation": { "type": "object", "additionalProperties": false, "required": [ "version", "stamp", "source", "units", "frame", "time", "phase", "base", "joints", "opening", "tcp", "object", "goal", "evidence", "safety" ], "properties": { "version": { "const": "lekiwi-language-v2" }, "stamp": { "$ref": "#/$defs/Stamp" }, "source": { "const": "mujoco-ground-truth" }, "units": { "const": "SI" }, "frame": { "const": "world-z-up" }, "time": { "type": "number", "minimum": 0, "maximum": 1000000 }, "phase": { "enum": [ "stow", "approach", "open", "pregrasp", "descend", "close", "verify", "carry", "stop-base", "place", "release", "retreat", "settle" ] }, "base": { "type": "object", "additionalProperties": false, "required": ["position", "yaw"], "properties": { "position": { "$ref": "#/$defs/Position" }, "yaw": { "type": "number", "minimum": -3.142, "maximum": 3.142 } } }, "joints": { "type": "array", "minItems": 5, "maxItems": 5, "items": { "type": "number", "minimum": -3.2, "maximum": 3.2 } }, "opening": { "type": "number", "minimum": 0, "maximum": 1 }, "tcp": { "$ref": "#/$defs/Position" }, "object": { "type": "object", "additionalProperties": false, "required": ["id", "position", "speed"], "properties": { "id": { "const": "block" }, "position": { "$ref": "#/$defs/Position" }, "speed": { "type": "number", "minimum": 0, "maximum": 20 } } }, "goal": { "type": "object", "additionalProperties": false, "required": ["id", "position"], "properties": { "id": { "const": "placement" }, "position": { "$ref": "#/$defs/Position" } } }, "evidence": { "type": "object", "additionalProperties": false, "required": ["fingerForces", "supported", "onGoalSupport", "secure", "transported"], "properties": { "fingerForces": { "type": "array", "minItems": 2, "maxItems": 2, "items": { "type": "number", "minimum": 0, "maximum": 10000 } }, "supported": { "type": "boolean" }, "onGoalSupport": { "type": "boolean" }, "secure": { "type": "boolean" }, "transported": { "type": "number", "minimum": 0, "maximum": 10 } } }, "safety": { "type": "array", "maxItems": 8, "uniqueItems": true, "items": { "enum": [ "joint_velocity", "joint_stall", "base_unstable", "unreachable", "lost_grasp", "episode_timeout", "stalled", "none" ] } } } }, "Plan": { "type": "object", "additionalProperties": false, "required": ["version", "objectId", "goalId", "summary", "steps"], "properties": { "version": { "const": "lekiwi-language-v2" }, "objectId": { "const": "block" }, "goalId": { "const": "placement" }, "summary": { "type": "string", "minLength": 1, "maxLength": 512 }, "steps": { "type": "array", "minItems": 1, "maxItems": 13, "items": { "type": "object", "additionalProperties": false, "required": ["skill", "precondition", "onFailure"], "properties": { "skill": { "enum": [ "stow", "approach", "open", "pregrasp", "descend", "close", "verify", "carry", "stop-base", "place", "release", "retreat", "settle" ] }, "precondition": { "enum": [ "scene-ready", "base-stopped", "tcp-above", "aligned", "dual-contact", "verified-grasp", "transported", "supported", "released", "retreat", "arm-safe" ] }, "onFailure": { "enum": ["retry", "replan", "stop"] } } } } } }, "JevDecision": { "type": "object", "additionalProperties": false, "required": [ "version", "choice", "grasp", "diagnosis", "recovery", "noul", "score", "reason" ], "properties": { "version": { "const": "lekiwi-language-v2" }, "choice": { "enum": [ "stow", "approach", "open", "pregrasp", "descend", "close", "verify", "carry", "stop-base", "place", "release", "retreat", "settle", "stop" ] }, "grasp": { "enum": ["secure", "empty", "slipping", "uncertain"] }, "diagnosis": { "enum": ["none", "empty", "slipping", "misaligned", "unreachable", "stalled", "uncertain"] }, "recovery": { "enum": ["continue", "retry", "replan", "stop"] }, "noul": { "enum": ["allow", "deny", "uncertain"] }, "score": { "enum": ["poor", "partial", "good", "excellent", "unavailable"] }, "reason": { "enum": ["none", "unsafe", "insufficient_evidence", "tracking_error", "verified_progress"] } } }, "SkillResult": { "type": "object", "additionalProperties": false, "required": ["version", "skill", "status", "code", "evidenceSequence"], "properties": { "version": { "const": "lekiwi-language-v2" }, "skill": { "enum": [ "stow", "approach", "open", "pregrasp", "descend", "close", "verify", "carry", "stop-base", "place", "release", "retreat", "settle" ] }, "status": { "enum": ["running", "completed", "failed"] }, "code": { "enum": [ "none", "joint_velocity", "joint_stall", "base_unstable", "unreachable", "lost_grasp", "episode_timeout", "alignment_timeout", "empty_grasp", "grasp_unverified", "transport_unverified", "placement_unsupported", "release_blocked", "placement_unverified", "navigation_timeout", "controller_error" ] }, "evidenceSequence": { "type": "integer", "minimum": 0, "maximum": 1000000000 } } }, "Command": { "type": "object", "additionalProperties": false, "required": [ "version", "action", "value", "summary", "objectId", "targetId", "position", "supportId" ], "properties": { "version": { "const": "lekiwi-language-v2" }, "action": { "enum": ["move", "turn", "pick_place", "stop", "clarify"] }, "value": { "type": "number", "minimum": -180, "maximum": 180 }, "summary": { "type": "string", "minLength": 1, "maxLength": 200 }, "objectId": { "enum": ["block", "none"] }, "targetId": { "enum": ["A", "B", "coordinates", "none"] }, "position": { "type": "array", "minItems": 0, "maxItems": 3, "items": { "type": "number", "minimum": -2, "maximum": 2 } }, "supportId": { "enum": ["source", "table", "none"] } } }, "SceneContext": { "type": "object", "additionalProperties": false, "required": ["version", "sceneId", "source", "units", "frame", "object", "base", "yaw"], "properties": { "version": { "const": "lekiwi-language-v2" }, "sceneId": { "const": "lekiwi-language-scene-v2" }, "source": { "const": "mujoco-ground-truth" }, "units": { "const": "SI" }, "frame": { "const": "world-z-up" }, "object": { "$ref": "#/$defs/Position" }, "base": { "$ref": "#/$defs/Position" }, "yaw": { "type": "number", "minimum": -3.142, "maximum": 3.142 } } } } }