Corrects metadata - #154
Conversation
- Fix motorized_stage travel_unit from CM to MM - Restructure motorized_stage and solenoid valves into LickSpoutAssembly with left/right LickSpouts including capacitive lick sensors (Janelia) - Add Tube mouse platform (mouse_tube_foraging, 3.0 cm diameter) - Add LightEmittingDiode IR LED (Thorlabs M810L5, 810 nm) - Add Enclosure (Behavior enclosure, 54x54x54 cm, AIND) - Update connections to reference new solenoid names (Solenoid Left/Right)
- Fix mouse_platform_name from 'tube' to 'mouse_tube_foraging' to match instrument component name - Add curriculum_status to StimulusEpoch from trainer_state.stage.name
There was a problem hiding this comment.
Pull request overview
Updates the dynamic foraging metadata mapper to better align exported Instrument and Acquisition metadata with the underlying rig/session semantics (including more explicit device modeling and training-stage metadata).
Changes:
- Restructures Instrument components to model a lick spout assembly (with solenoids/sensors), mouse tube platform, IR LED, and enclosure metadata, and updates related BehaviorBoard connections.
- Adds
curriculum_statustoStimulusEpochderived fromtrainer_state.stage. - Updates
mouse_platform_nameto match the new instrument tube component name.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| workspace/aind_behavior_dynamic_foraging_metadata_mapper/src/aind_behavior_dynamic_foraging_metadata_mapper/instrument.py | Expands/adjusts instrument component modeling (lick spout assembly, tube, LED, enclosure) and updates connection target names. |
| workspace/aind_behavior_dynamic_foraging_metadata_mapper/src/aind_behavior_dynamic_foraging_metadata_mapper/acquisition.py | Adds curriculum stage status to stimulus epoch and aligns mouse platform name with instrument component. |
Suppressed comments (1)
workspace/aind_behavior_dynamic_foraging_metadata_mapper/src/aind_behavior_dynamic_foraging_metadata_mapper/instrument.py:361
- The
notesstring starts with a leading space, which is likely unintended and will carry into exported metadata.
notes=" (v1v2 upgrade): Scale is width/length/height",
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| LickSpout( | ||
| name="Left lick spout", | ||
| manufacturer=Organization.OTHER, | ||
| notes=" (v1v2 upgrade): 'manufacturer' field was missing, defaulting to 'Other'.", |
There was a problem hiding this comment.
|
Here are some files generated to help evaluate. Here are issues addresses Issue #173:
Issue #172:
Issue #137:
Issue #175
|
|
@jasonyslee @rachelstephlee for visibility |
Addresses #172 #173 metadata issues