Docs
Fixture Contribution Guide
Reduced fixtures help BDS support real cycler exports without asking users to share full private experiments. A good fixture is the smallest file that still reproduces detection, parsing, unit conversion, current-sign, or validation behavior.
Fixture Contribution Guide
Reduced fixtures help BDS support real cycler exports without asking users to share full private experiments. A good fixture is the smallest file that still reproduces detection, parsing, unit conversion, current-sign, or validation behavior.
What To Keep
- Keep the original header rows, units, delimiter, worksheet name, and encoding whenever possible.
- Keep the columns needed to reproduce the problem, especially time, voltage, current, status/step type, cycle, step, capacity, energy, temperature, and any vendor-specific metadata rows that affect parsing.
- Keep enough rows to show the behavior. Five to twenty rows is often enough; use more only when the bug depends on a repeated cycle, a step transition, or a sampling gap.
- If the current sign is important, keep at least one charge row and one discharge row, plus the source status column if it exists.
What To Remove
- Remove or replace cell IDs, customer names, project names, operator names, sample names, serial numbers, barcodes, file paths, and comments that reveal confidential work.
- Remove long procedure descriptions unless the parser needs those rows to find the data table.
- Remove most measurement rows after confirming the reduced file still fails or still demonstrates the requested mapping.
- Replace proprietary values with simple representative values only when doing so does not change units, signs, headers, step transitions, or parser behavior.
How To Submit
- Run
bds explain <file> --texton the reduced file. - Confirm the reduced file still shows the same detection, conversion, or validation behavior as the original.
- Open a cycler import issue and paste the
bds explainoutput. - Attach the reduced file if policy allows it.
- State clearly whether the file may be added to public regression tests under
tests/fixtures.
If the file cannot be shared publicly, include the header row, cycler model, software/export version, sheet name, current sign convention, and a short description of the expected columns.