# Glossary Stream : Messages of one type on one topic, each stamped on its own clock. What a ROS 2 robot publishes. Frame : One sample of every key at one tick, as a flat `{key: array}` mapping. What a policy consumes and produces. Tick : One point on the frame clock. Ticks are `1 / fps` apart. Key : The name of one entry in a frame, such as `observation.state` or `action`. Source : One stream feeding a key. A key with several sources is a multi-source key. Channel : A stream's address: topic, message type, QoS. Timeline : The clock a stream is read on. Every channel has `receive`. A message type with a `std_msgs/Header` field named `header` also has `header`. Align : How a stream's samples land on ticks: `hold`, `asof` or `drop`, on a declared timeline. Select : Which fields of a message, in which order. Apply : Operators run on the selected values, forward when recording, inverse when serving. Contract : One YAML file per robot declaring every key, its sources, and the align, select and apply settings for each source. Episode : One recorded demonstration. One bag directory. Adapter : The package binding a learning framework to Rosetta. It registers a dataset writer and a policy runner under the framework's name. Warmup : The interval before every observation stream has delivered a sample. No frames are produced during warmup.