Skip to content

API Contract Reference

This page is generated from spec/apis. An API contract owns endpoint shape and semantics. Message families own payload layout, while the runtime envelope owns transport timing and execution metadata.

API contract Events Controls Procedures Operations
api.actuator.drive.v1 0 1 0 0
api.actuator.servo.v1 0 2 0 0
api.capability.manipulation.gripper.control.v1 1 0 2 0
api.capability.manipulation.reach.v1 1 0 3 0
api.capability.mobility.body_motion.v1 1 1 1 0
api.capability.perception.object_detection.v1 0 0 1 0
api.diagnostics.health.v1 1 0 2 0
api.end_effector.gripper.v1 0 0 3 0
api.io.analog.input.v1 0 0 1 0
api.io.analog.output.v1 0 0 2 0
api.io.digital.input.v1 0 0 1 0
api.io.digital.output.v1 0 0 2 0
api.localization.v1 2 0 0 0
api.locomotion.diff_drive.v1 2 0 2 0
api.locomotion.legged.state.v1 4 0 0 0
api.locomotion.mobile_base.state.v1 2 0 4 0
api.locomotion.odometry.v1 1 0 0 0
api.locomotion.velocity.v1 0 1 3 0
api.mapping.v1 2 0 0 0
api.motion.articulated.state.v1 1 0 0 0
api.motion.articulated.trajectory.offset.v1 0 1 0 0
api.motion.articulated.trajectory.v1 0 0 3 1
api.motion.articulated.velocity.v1 0 1 0 0
api.motion.execution.v1 1 0 2 0
api.motion.manipulator.cartesian.offset.v1 0 1 0 0
api.motion.manipulator.cartesian.v1 0 0 0 2
api.motion.manipulator.hand_guiding.v1 1 0 2 0
api.motion.manipulator.kinematics.v1 0 0 2 0
api.motion.manipulator.state.v1 3 0 0 0
api.motion.manipulator.tooling.calibration.v1 0 0 0 1
api.motion.manipulator.tooling.v1 0 0 2 0
api.motion.manipulator.velocity.v1 0 1 0 0
api.motion.manipulator.wrench.v1 1 1 0 0
api.navigation.v1 1 0 1 2
api.perception.query.v1 0 0 3 0
api.perception.stream.v1 3 0 0 0
api.sensor.camera.v1 3 0 0 0

api.actuator.drive.v1

Deterministic low-level drive command and state exchange.

Controls

Endpoint Payloads and timing Semantics
drive_command request=msg.actuator.drive.v1/DriveCommand, response=msg.actuator.drive.v1/DriveState, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.actuator.servo.v1

Canonical low-level servo gateway API for joint commands and deterministic drive-link exchange.

Controls

Endpoint Payloads and timing Semantics
servo_joint request=msg.actuator.servo.v1/JointServoCommand, response=msg.core.common.primitive.v1/BoolValue, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired
servo_link request=msg.actuator.servo.v1/ActuatorCommand, response=msg.actuator.servo.v1/ActuatorState, timing_support=required periodic=required; validity=runtime_envelope; scheduling=gateway_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.capability.manipulation.gripper.control.v1

App-facing gripper API for platform-defined open and close actions.

Events

Endpoint Payloads and timing Semantics
gripper_status type=msg.capability.manipulation.v1/GripperState, direction=publish observation=provider_state; delivery=latest_available; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
open request=msg.core.common.primitive.v1/Empty, response=msg.capability.common.v1/Result, timing_support=none idempotency=idempotent; side_effects=releases_held_object
close request=msg.core.common.primitive.v1/Empty, response=msg.capability.common.v1/Result, timing_support=none idempotency=idempotent; side_effects=may_grasp_object

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.capability.manipulation.reach.v1

App-facing reach API for platform-defined manipulator extension and stow commands.

Events

Endpoint Payloads and timing Semantics
manipulation_status type=msg.capability.manipulation.v1/ReachState, direction=publish observation=provider_state; delivery=latest_available; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
extend request=msg.capability.manipulation.v1/ReachRequest, response=msg.capability.common.v1/Result, timing_support=none idempotency=target_idempotent; side_effects=moves_manipulator
shrink request=msg.capability.manipulation.v1/ReachRequest, response=msg.capability.common.v1/Result, timing_support=none idempotency=target_idempotent; side_effects=moves_manipulator
stow request=msg.core.common.primitive.v1/Empty, response=msg.capability.common.v1/Result, timing_support=none idempotency=idempotent; side_effects=moves_manipulator_to_stow

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.capability.mobility.body_motion.v1

App-facing periodic body-motion command and stop contract independent of locomotion implementation.

Events

Endpoint Payloads and timing Semantics
body_motion_state type=msg.capability.mobility.v1/BodyMotionState, direction=publish observation=provider_state; delivery=latest_available; fanout=allowed

Controls

Endpoint Payloads and timing Semantics
body_motion request=msg.capability.mobility.v1/BodyMotionCommand, response=msg.capability.common.v1/Result, timing_support=required periodic=required; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Procedures

Endpoint Payloads and timing Semantics
stop request=msg.capability.mobility.v1/StopRequest, response=msg.capability.common.v1/Result, timing_support=none idempotency=idempotent; side_effects=stops_platform_motion

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.capability.perception.object_detection.v1

App-facing semantic object query independent of sensor and perception implementation.

Procedures

Endpoint Payloads and timing Semantics
query_objects request=msg.capability.perception.v1/ObjectQuery, response=msg.capability.perception.v1/DetectionSummary, timing_support=none idempotency=read_only; side_effects=none

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.diagnostics.health.v1

Shared provider health publication, query, and fault reset contract.

Events

Endpoint Payloads and timing Semantics
health_status type=msg.diagnostics.health.v1/HealthStatus, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
get_health request=msg.core.common.primitive.v1/Empty, response=msg.diagnostics.health.v1/HealthStatus, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
clear_fault request=msg.diagnostics.health.v1/ClearFaultRequest, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.end_effector.gripper.v1

Canonical binary gripper API contract for open, close, and state query.

Procedures

Endpoint Payloads and timing Semantics
open request=msg.core.common.primitive.v1/Empty, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
close request=msg.core.common.primitive.v1/Empty, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
get_gripper_state request=msg.core.common.primitive.v1/Empty, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.io.analog.input.v1

Canonical index-addressed analog input read API contract.

Procedures

Endpoint Payloads and timing Semantics
get_analog_input request=msg.core.common.primitive.v1/UInt32Value, response=msg.core.common.primitive.v1/Float32Value, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.io.analog.output.v1

Canonical index-addressed analog output command and state API contract.

Procedures

Endpoint Payloads and timing Semantics
set_analog_output request=msg.core.common.primitive.v1/IndexedFloat32Value, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=target_idempotent; side_effects=changes_physical_output
get_analog_output request=msg.core.common.primitive.v1/UInt32Value, response=msg.core.common.primitive.v1/Float32Value, timing_support=none idempotency=read_only; side_effects=none

Contract Semantics

Area Declaration
frames policy=not_applicable; dynamic_frames=prohibited
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.io.digital.input.v1

Canonical index-addressed digital input read API contract.

Procedures

Endpoint Payloads and timing Semantics
get_digital_input request=msg.core.common.primitive.v1/UInt32Value, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.io.digital.output.v1

Canonical index-addressed digital output command and state API contract.

Procedures

Endpoint Payloads and timing Semantics
set_digital_output request=msg.core.common.primitive.v1/IndexedBoolValue, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
get_digital_output request=msg.core.common.primitive.v1/UInt32Value, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.localization.v1

Canonical localization API contract.

Events

Endpoint Payloads and timing Semantics
pose_estimate type=msg.localization.v1/PoseEstimate, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
localization_status type=msg.localization.v1/LocalizationStatus, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.locomotion.diff_drive.v1

Optional mobile-base API contract for differential-drive kinematics and wheel-level state.

Events

Endpoint Payloads and timing Semantics
wheel_command type=msg.locomotion.mobile_base.v1/WheelCommand, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
wheel_state type=msg.locomotion.mobile_base.v1/WheelState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
get_diff_drive_kinematics request=msg.core.common.primitive.v1/Empty, response=msg.locomotion.mobile_base.v1/DiffDriveKinematics, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
set_diff_drive_kinematics request=msg.locomotion.mobile_base.v1/DiffDriveKinematics, response=msg.locomotion.velocity.v1/CommandAck, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.locomotion.legged.state.v1

Canonical legged locomotion state API contract.

Events

Endpoint Payloads and timing Semantics
contact_state type=msg.locomotion.legged.v1/ContactArray, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
foot_state type=msg.locomotion.legged.v1/FootState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
balance_state type=msg.locomotion.legged.v1/BalanceState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
gait_phase type=msg.locomotion.legged.v1/GaitPhase, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.locomotion.mobile_base.state.v1

Canonical wheeled mobile-base state, fault, and drive-enable API contract.

Events

Endpoint Payloads and timing Semantics
mobile_base_state type=msg.locomotion.mobile_base.v1/MobileBaseState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
fault_state type=msg.locomotion.mobile_base.v1/FaultState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
get_status request=msg.core.common.primitive.v1/Empty, response=msg.locomotion.mobile_base.v1/MobileBaseState, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
enable_drive request=msg.locomotion.mobile_base.v1/EnableDriveRequest, response=msg.locomotion.velocity.v1/CommandAck, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
disable_drive request=msg.locomotion.mobile_base.v1/DisableDriveRequest, response=msg.locomotion.velocity.v1/CommandAck, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
clear_fault request=msg.locomotion.mobile_base.v1/ClearFaultRequest, response=msg.locomotion.velocity.v1/CommandAck, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.locomotion.odometry.v1

Canonical mobile-base odometry publication API contract.

Events

Endpoint Payloads and timing Semantics
odometry type=msg.locomotion.mobile_base.v1/Odometry, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.locomotion.velocity.v1

Canonical shared locomotion body-velocity API contract with timed command validity and limit management.

Controls

Endpoint Payloads and timing Semantics
velocity_command request=msg.locomotion.velocity.v1/VelocityCommand, response=msg.locomotion.velocity.v1/CommandAck, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Procedures

Endpoint Payloads and timing Semantics
set_velocity_limits request=msg.locomotion.velocity.v1/VelocityLimits, response=msg.locomotion.velocity.v1/CommandAck, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
get_velocity_limits request=msg.core.common.primitive.v1/Empty, response=msg.locomotion.velocity.v1/VelocityLimits, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
stop request=msg.locomotion.velocity.v1/StopRequest, response=msg.locomotion.velocity.v1/CommandAck, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.mapping.v1

Canonical mapping API contract.

Events

Endpoint Payloads and timing Semantics
occupancy_map type=msg.mapping.v1/OccupancyGridMap, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
map_state type=msg.mapping.v1/MapStatus, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.articulated.state.v1

Canonical articulated joint-state API contract.

Events

Endpoint Payloads and timing Semantics
joint_state type=msg.core.kinematics.v1/JointState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.articulated.trajectory.offset.v1

Periodic joint offset control for an active programmed trajectory.

Controls

Endpoint Payloads and timing Semantics
trajectory_offset request=msg.motion.articulated.v1/TrajectoryOffset, response=msg.core.common.primitive.v1/BoolValue, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.articulated.trajectory.v1

Canonical articulated programmed-motion API contract.

Procedures

Endpoint Payloads and timing Semantics
stop request=msg.motion.articulated.v1/RampRequest, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=idempotent; side_effects=stops_motion
pause request=msg.motion.articulated.v1/RampRequest, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=idempotent; side_effects=pauses_motion
resume request=msg.core.common.primitive.v1/Empty, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=idempotent; side_effects=resumes_motion

Operations

Endpoint Payloads and timing Semantics
move_j request=msg.motion.articulated.v1/MoveJRequest, feedback=msg.motion.manipulator.v1/MotionFeedback, result=msg.motion.manipulator.v1/MotionResult, state=msg.motion.manipulator.v1/MotionState, timing_support=none progress=feedback_stream; cancellation=required; terminal_states=['succeeded', 'failed', 'canceled', 'rejected']

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.articulated.velocity.v1

Canonical articulated periodic joint-velocity API contract.

Controls

Endpoint Payloads and timing Semantics
joint_velocity request=msg.core.kinematics.v1/JointVelocity, response=msg.core.common.primitive.v1/BoolValue, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.execution.v1

Shared programmed-motion state and runtime speed scaling.

Events

Endpoint Payloads and timing Semantics
execution_state type=msg.motion.execution.v1/ExecutionState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
set_speed_scaling request=msg.motion.execution.v1/SpeedScaling, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
get_speed_scaling request=msg.core.common.primitive.v1/Empty, response=msg.motion.execution.v1/SpeedScaling, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.cartesian.offset.v1

Periodic Cartesian offset control for active manipulator motion.

Controls

Endpoint Payloads and timing Semantics
cartesian_offset request=msg.motion.manipulator.v1/CartesianOffset, response=msg.core.common.primitive.v1/BoolValue, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.cartesian.v1

Canonical manipulator Cartesian programmed-motion API contract.

Operations

Endpoint Payloads and timing Semantics
move_l request=msg.motion.manipulator.v1/MoveLRequest, feedback=msg.motion.manipulator.v1/MotionFeedback, result=msg.motion.manipulator.v1/MotionResult, state=msg.motion.manipulator.v1/MotionState, timing_support=none progress=feedback_stream; cancellation=required; terminal_states=['succeeded', 'failed', 'canceled', 'rejected']
move_c request=msg.motion.manipulator.v1/MoveCRequest, feedback=msg.motion.manipulator.v1/MotionFeedback, result=msg.motion.manipulator.v1/MotionResult, state=msg.motion.manipulator.v1/MotionState, timing_support=none progress=feedback_stream; cancellation=required; terminal_states=['succeeded', 'failed', 'canceled', 'rejected']

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.hand_guiding.v1

Provider-owned hand-guiding mode control and state.

Events

Endpoint Payloads and timing Semantics
hand_guiding_state type=msg.motion.manipulator.v1/HandGuidingState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
enable_hand_guiding request=msg.core.common.primitive.v1/StringValue, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
disable_hand_guiding request=msg.core.common.primitive.v1/Empty, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.kinematics.v1

Stateless forward and inverse kinematics queries.

Procedures

Endpoint Payloads and timing Semantics
forward_kinematics request=msg.motion.manipulator.v1/ForwardKinematicsRequest, response=msg.motion.manipulator.v1/ForwardKinematicsResult, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
inverse_kinematics request=msg.motion.manipulator.v1/InverseKinematicsRequest, response=msg.motion.manipulator.v1/InverseKinematicsResult, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.state.v1

Canonical manipulator tool/task-space state API contract.

Events

Endpoint Payloads and timing Semantics
tool_pose type=msg.core.spatial.v1/Pose, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
motion_state type=msg.motion.manipulator.v1/MotionState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
tool_settings type=msg.motion.manipulator.v1/ToolSettings, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.tooling.calibration.v1

Long-running provider-owned TCP and payload calibration.

Operations

Endpoint Payloads and timing Semantics
calibrate_tool request=msg.motion.manipulator.v1/ToolCalibrationRequest, feedback=msg.motion.manipulator.v1/MotionFeedback, result=msg.motion.manipulator.v1/ToolCalibrationResult, state=msg.motion.manipulator.v1/MotionState, timing_support=none progress=feedback_stream; cancellation=required; terminal_states=['succeeded', 'failed', 'canceled', 'rejected']

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.tooling.v1

Canonical manipulator tooling and payload API contract.

Procedures

Endpoint Payloads and timing Semantics
set_tcp request=msg.motion.manipulator.v1/SetTcpRequest, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=target_idempotent; side_effects=changes_tool_transform
set_payload request=msg.motion.manipulator.v1/SetPayloadRequest, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=target_idempotent; side_effects=changes_dynamic_model

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.velocity.v1

Canonical manipulator periodic TCP-twist control API contract.

Controls

Endpoint Payloads and timing Semantics
tcp_velocity request=msg.core.spatial.v1/Twist, response=msg.core.common.primitive.v1/BoolValue, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.motion.manipulator.wrench.v1

Periodic task-space wrench control and observation.

Events

Endpoint Payloads and timing Semantics
measured_wrench type=msg.motion.manipulator.v1/WrenchCommand, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Controls

Endpoint Payloads and timing Semantics
wrench_command request=msg.motion.manipulator.v1/WrenchCommand, response=msg.core.common.primitive.v1/BoolValue, timing_support=required periodic=contract_defined; validity=runtime_envelope; scheduling=provider_dispatch; late_behavior=reject_expired

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.navigation.v1

Canonical navigation API contract.

Events

Endpoint Payloads and timing Semantics
navigation_state type=msg.navigation.v1/NavigationState, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Procedures

Endpoint Payloads and timing Semantics
cancel_navigation request=msg.core.common.primitive.v1/Empty, response=msg.core.common.primitive.v1/BoolValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Operations

Endpoint Payloads and timing Semantics
navigate_to_pose request=msg.navigation.v1/NavigateToPoseRequest, feedback=msg.navigation.v1/NavigationFeedback, result=msg.navigation.v1/NavigationResult, state=msg.navigation.v1/NavigationState, timing_support=none progress=feedback_stream; cancellation=required; terminal_states=['succeeded', 'failed', 'canceled', 'rejected']
follow_path request=msg.navigation.v1/FollowPathRequest, feedback=msg.navigation.v1/NavigationFeedback, result=msg.navigation.v1/NavigationResult, state=msg.navigation.v1/NavigationState, timing_support=none progress=feedback_stream; cancellation=required; terminal_states=['succeeded', 'failed', 'canceled', 'rejected']

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.perception.query.v1

Canonical request/response perception query API contract for bounded object scans.

Procedures

Endpoint Payloads and timing Semantics
scan request=msg.core.common.primitive.v1/StringValue, response=msg.core.common.primitive.v1/StringValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
front request=msg.core.common.primitive.v1/StringValue, response=msg.core.common.primitive.v1/StringValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined
nearest request=msg.core.common.primitive.v1/StringValue, response=msg.core.common.primitive.v1/StringValue, timing_support=none idempotency=endpoint_defined; side_effects=endpoint_defined

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.perception.stream.v1

Canonical perception observation stream API contract.

Events

Endpoint Payloads and timing Semantics
detections_2d type=msg.perception.v1/Detection2DArray, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
object_pose type=msg.perception.v1/ObjectPoseArray, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
grasp_candidates type=msg.perception.v1/GraspCandidateArray, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope

api.sensor.camera.v1

Canonical camera stream API contract.

Events

Endpoint Payloads and timing Semantics
camera_info type=msg.sensor.camera.v1/CameraInfo, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
image_frame type=msg.sensor.camera.v1/ImageFrame, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed
depth_frame type=msg.sensor.camera.v1/DepthFrame, direction=publish observation=provider_sample; delivery=best_effort_latest; fanout=allowed

Contract Semantics

Area Declaration
frames policy=endpoint_declared; dynamic_frames=owning_message_only
timing clock_domain=r2kernel_sync; event_envelope={'observed': 'observed_at_sync_ns', 'published': 'published_at_sync_ns', 'received': 'received_at_sync_ns'}; control_envelope={'generated': 'generated_at_sync_ns', 'sent': 'sent_at_sync_ns', 'execute': 'execute_at_sync_ns', 'valid_until': 'valid_until_sync_ns'}
state_model owner=provider; lifecycle=runtime_managed
failure_semantics transport=runtime_status; domain=endpoint_response
authority owner=provider; command_arbitration=exclusive_required_binding
limits source=provider; enforcement=provider
conformance level=public; payload_time=runtime_envelope