A module to track animal-related configuration would be useful to agilize experiments. A short term solution would be to extend the current default picker with a more opinionated logic on how to fetch and validate a full session of a given animal. Alternatively, this could ideally be handled by a centralized data base structure.
Requirements: (Mostly derived from VrForaging but in theory applicable to other pipelines)
- We need to be able to store JSON documents (bonus for other asset types?)
- From a rig_id (
aibs_rig_id and a task (task_name), grab rig configuration (or potentially multiple if available)
- List multiple task configuration files (these would be used as defaults if needed)
- From an animal id, return a task_configuration (
task_logic.json or a CurriculumState, both of which are sufficient to grab a task_name).
- From an animal id, return a experimental schedule: e.g. Experimenter,
aibs_rig_id, TimeOfDay, etc...
- From a given rig configuration instance, grab a rig.json (aind-data-schema)
- Need an API to read and write to the collection. Ideally Python, but bonus if also C#.
- Ideally would store all the documents ever written/updates
A module to track animal-related configuration would be useful to agilize experiments. A short term solution would be to extend the current default picker with a more opinionated logic on how to fetch and validate a full session of a given animal. Alternatively, this could ideally be handled by a centralized data base structure.
Requirements: (Mostly derived from VrForaging but in theory applicable to other pipelines)
aibs_rig_idand a task (task_name), grab rig configuration (or potentially multiple if available)task_logic.jsonor aCurriculumState, both of which are sufficient to grab atask_name).aibs_rig_id, TimeOfDay, etc...