Skip to content

chore: Record ASM molecular weight gap and fix release status typo - #1271

Merged
nathan-stender merged 1 commit into
mainfrom
chore/small-cleanups-asm-gaps-marker-and-typo
Sep 23, 2026
Merged

nathan-stender merged 1 commit into
mainfrom
chore/small-cleanups-asm-gaps-marker-and-typo

Conversation

@nathan-stender

Copy link
Copy Markdown
Collaborator

Summary

Two small cleanups from a TODO sweep of the repo. No behavior change — comments, one prose typo, and the generated table that mirrors it.

1. Record the ASM molecular weight gap with the tracked convention

The Agilent OpenLab CDS GPC/SEC support added in #1269 reports the molecular weight averages (Mn, Mw, Mz, Mz+1, Mv, Mp, PD) as peak custom information, because ASM has no molecular weight concept at any level — not on the peak, not on the processed data document, nowhere. That was the right call, but the reason was only written as prose, so it didn't turn up in a git grep "TODO(ASM gaps)" alongside the other nine tracked gaps in the repo.

This adds the marker where the affected fields are defined. Note that every existing TODO(ASM gaps) lives in a schema mapper; this one can't, because the liquid chromatography mapper passes Peak.custom_info straight through and has no molecular-weight-specific line to annotate. The parser's constants file is where the substitution actually happens.

2. Fix "signifcant" -> "significant"

In the parser maturation level descriptions in get_table_contents(), plus the generated SUPPORTED_INSTRUMENT_SOFTWARE.adoc (regenerated with hatch run scripts:update-instrument-table, which changed only that line — no other drift).

Testing

  • hatch run lint — clean (ruff, black, mypy: no issues in 795 source files)
  • hatch run test_all.py3.10:pytest tests/ -q — 1520 passed

tests/parser_factory_test.py::test_table_contents asserts the checked-in .adoc matches the generated table, so the two typo fixes have to land together — and that test passing confirms they did.

Deliberately not included

The same sweep turned up items that need a decision rather than a mechanical edit, so they're left alone:

  • jsonschema < 4.18.0 pin (pyproject.toml) — the TODO(nstender) there wants refs stripped from schemas before use to work around a performance regression. Confirmed as still needed, not touching it.
  • 4x TODO(switch-statement) — all say "use switch statement once Benchling can use 3.10 syntax". requires-python = ">=3.10" here suggests this is unblocked, but the wording refers to a Benchling-internal constraint, so it needs one confirmation from someone who'd know before the conversions are worth making.
  • 3x duplicated "should we move this inside of measurements?" in the tapestation and nanodrop parsers — a structural question about where the data belongs, not a cleanup.
  • 4x NaN-handling TODOs across agilent_gen5, cfxmaestro, softmax_pro, and appbio_quantstudio — these look like they want a shared helper, which overlaps with open PR fix: Luminex xPONENT - report NaN assay bead counts as NaN via error document #1268 (it defines get_bead_count_error locally in the Luminex parser). Worth settling as one design decision while that PR is open.

🤖 Generated with Claude Code

Two small cleanups:

- Mark the missing molecular weight concept in ASM with the repo's
  `TODO(ASM gaps)` convention. The Agilent OpenLab CDS GPC/SEC work added in
  #1269 reports Mn/Mw/Mz/Mz+1/Mv/Mp/PD as peak custom information because ASM
  has no molecular weight concept at any level, but the workaround was only
  described in prose, so it did not show up in a `TODO(ASM gaps)` grep along
  with the other tracked gaps.
- Fix "signifcant" -> "significant" in the parser maturation level
  descriptions, and regenerate SUPPORTED_INSTRUMENT_SOFTWARE.adoc.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@nathan-stender
nathan-stender merged commit 77748ee into main Sep 23, 2026
9 checks passed
@nathan-stender
nathan-stender deleted the chore/small-cleanups-asm-gaps-marker-and-typo branch September 23, 2026 20:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants