Skip to content

Conversation

@CodyCBakerPhD
Copy link
Collaborator

Now that the BEP is officially submitted in a somewhat frozen state I can finally go through and update things

@CodyCBakerPhD CodyCBakerPhD requested a review from asmacdo January 21, 2026 18:10
@CodyCBakerPhD CodyCBakerPhD self-assigned this Jan 21, 2026
@CodyCBakerPhD CodyCBakerPhD added enhancement New feature or request minor Increment the minor version when merged labels Jan 21, 2026
@codecov
Copy link

codecov bot commented Jan 21, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.48%. Comparing base (76689e8) to head (8cd551c).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #278      +/-   ##
==========================================
+ Coverage   84.12%   84.48%   +0.35%     
==========================================
  Files          36       36              
  Lines        1392     1424      +32     
==========================================
+ Hits         1171     1203      +32     
  Misses        221      221              
Flag Coverage Δ
unittests 84.48% <100.00%> (+0.35%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/nwb2bids/bids_models/_channels.py 91.15% <100.00%> (+0.49%) ⬆️
src/nwb2bids/bids_models/_electrodes.py 91.86% <100.00%> (+0.61%) ⬆️
src/nwb2bids/bids_models/_probes.py 95.40% <100.00%> (+1.37%) ⬆️
src/nwb2bids/testing/_mocks/_tutorials.py 73.84% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@CodyCBakerPhD CodyCBakerPhD changed the title Updated to latest BEP Updated model fields to the latest BEP32 state Jan 21, 2026
@CodyCBakerPhD
Copy link
Collaborator Author

After this is merged I'll get started on the conversion gallery to give side-by-side comparison to BEP32 examples

@CodyCBakerPhD
Copy link
Collaborator Author

@asmacdo If you could look at this when you get a chance - towards the goal of restoring validation % to BIDS-Dandisets

Copy link
Member

@asmacdo asmacdo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I compared this with the BEP32 PR spec and it mostly looks good.

time_reference_channel is the only comment that I'd consider blocking.

Also, I like the comments with units, maybe some others could benefit as well? I'll leave it to your judgement if any of these are actually useful.

_channels.py:

  • low_cutoff - # in Hz
  • high_cutoff - # in Hz
  • sampling_frequency - # in Hz
  • time_offset - # in seconds

_electrodes.py:

  • x - # in um (probe-relative) or coordsystem units
  • y - # in um (probe-relative) or coordsystem units
  • z - # in um (probe-relative) or coordsystem units

_probes.py:

  • AP - # in mm
  • ML - # in mm
  • DV - # in mm
  • AP_angle - # in degrees
  • ML_angle - # in degrees
  • depth - # in mm
  • rotation_angle - # in degrees

channel_name=(
f"ch{channel_name.values[0]}"
name=(
f"ch{channel_name.values[0].zfill(3)}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably pedantic, but if there were a non-numeric channel name, should we still do this? ie "A1" -> "ch0A1"? Should we validate that its only digits? And is 3 digits enough to be future proof?

Copy link
Collaborator Author

@CodyCBakerPhD CodyCBakerPhD Jan 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fair enough in the first case of the ternary

The second case however, is guaranteed to be an integer, and zfill 3 simply matches the convention of the BEP examples (beyond that number of digits can happen in modern multi-probe Neuropixels, but I think at that point it looks fine, e.g., ch1024)

time_reference_channels: str | None = None
ground: str | None = None
# recording_mode: str | None = None # TODO: icephys only
recording_mode: str | None = None
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IIUC this is only meaninful in icephys, should we keep some comment?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are many fields which are subtly used in only one or the other; these are expressed or inferred below in the initializer from NWB contents but not validated outside that

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(So I'd rather not leave comments and do something more formal in a follow-up if that is something you feel strongly about checking)

@github-project-automation github-project-automation bot moved this to In Progress in nwb2bids Roadmap Jan 22, 2026
@CodyCBakerPhD
Copy link
Collaborator Author

Also, I like the comments with units, maybe some others could benefit as well? I'll leave it to your judgement if any of these are actually useful.

There will be another round when additional metadata is exposed and I will check all of those kinds of fields then

@CodyCBakerPhD CodyCBakerPhD requested a review from asmacdo January 22, 2026 22:36
@CodyCBakerPhD CodyCBakerPhD merged commit 84ce669 into main Jan 23, 2026
29 checks passed
@CodyCBakerPhD CodyCBakerPhD deleted the update-bep branch January 23, 2026 02:32
@github-project-automation github-project-automation bot moved this from In Progress to Done in nwb2bids Roadmap Jan 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request minor Increment the minor version when merged

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants