Skip to content

load_all function gives error when trying to run qc #124

Description

@arjunsridhar12345

When trying to run qc / load all of the data streams, get the following error:

File c:\Users\arjun.sridhar\source\repos\dynamic-foraging-processing\.venv\Lib\site-packages\aind_behavior_dynamic_foraging\data_qc\suite.py:32, in make_qc_runner(dataset)
     30 def make_qc_runner(dataset: contract.Dataset) -> qc.Runner:
     31     _runner = qc.Runner()
---> [32](file:///C:/Users/arjun.sridhar/source/repos/dynamic-foraging-processing/.venv/Lib/site-packages/aind_behavior_dynamic_foraging/data_qc/suite.py:32)     dataset.load_all(strict=False)
     33     exclude: list[contract.DataStream] = []
     34     rig: AindDynamicForagingRig = dataset["Behavior"]["InputSchemas"]["Rig"].data

File c:\Users\arjun.sridhar\source\repos\dynamic-foraging-processing\.venv\Lib\site-packages\contraqctor\contract\base.py:424, in DataStream.load_all(self, strict)
    422 if stream is None:
    423     continue
--> [424](file:///C:/Users/arjun.sridhar/source/repos/dynamic-foraging-processing/.venv/Lib/site-packages/contraqctor/contract/base.py:424) stream.load_all(strict=strict)
    425 if stream.has_error and strict:
    426     cast(_typing.ErrorOnLoad, stream.data).raise_from_error()

File c:\Users\arjun.sridhar\source\repos\dynamic-foraging-processing\.venv\Lib\site-packages\contraqctor\contract\base.py:424, in DataStream.load_all(self, strict)
    422 if stream is None:
    423     continue
--> [424](file:///C:/Users/arjun.sridhar/source/repos/dynamic-foraging-processing/.venv/Lib/site-packages/contraqctor/contract/base.py:424) stream.load_all(strict=strict)
...
--> [551](file:///C:/Users/arjun.sridhar/source/repos/dynamic-foraging-processing/.venv/Lib/site-packages/contraqctor/contract/base.py:551)     raise ValueError("Data must be a list of DataStreams.")
    552 self._update_data_stream_mapping()
    553 return self

ValueError: Data must be a list of DataStreams.

Here's an example session (this is uploaded to code ocean), but seem to get the same error running locally and in code ocean: https://codeocean.allenneuraldynamics.org/data-assets/89e9efd0-c14f-4417-bdc1-fd76d1cad797/behavior_845023_2026-06-17_19-41-02

Very uneducated guess is that there might be some streams defined in the contract that are not present in the current datasets (mainly the HarpLickometerLeft and HarpLickometerRight) but not really sure if that would cause this error.

I'm on contraqctor version 0.5.8, but could be some dependency thing I have wrong.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions