Skip to content

The tool catalogue lists non-tools: instruments, language names and extraction artefacts #49

Description

@lfnothias

Noticed while resolving licences in #43. Of the 909 entries in tools_index.json, a substantial share are not software with a licence, and some are not tools at all.

Three classes are detectable by shape, and together they are a lower bound of 54 entries:

shape count examples
a descriptive phrase rather than a name (5+ words) 35 Agilent 1290 Infinity UHPLC system, asari MassGrid class (build_grid_sample_wise, add_sample, ...)
a dotted module path 10 massdash.loaders.ResultsLoader, massdash.peakPickers.MRMTransitionGroupPicker
a bare URL 9 github.com/bittremieux/cosine_neutral_loss, github.com/HassounLab/ESP

Beyond those, the catalogue holds entries that are shaped like names but are not tools in the sense the collection means: C++, Bioconductor, Docker, .NET Framework, stats, Anaconda. And it holds vendor hardware and proprietary products — Agilent MassHunter, Agilent 6550 iFunnel Q-TOF mass spectrometer — which are real, describable, and worth keeping, but have no repository to resolve a licence from.

Why it matters now

They are all license_tier: unknown, alongside genuinely unresolved software. unknown is a correct statement about each of them, but for different reasons, and lumping them together is the same conflation the tier split fixed on the other axis:

  • a module path or a bare URL is an extraction defect and should not be a catalogue entry;
  • an instrument has no software licence, so the tier is not merely unknown but inapplicable;
  • vendor software is genuinely restricted once identified, and saying so is more useful than unknown;
  • unresolved software is the only class where a lookup would help, and it is the only one Record each tool's own repository, and resolve its licence from it #43's follow-up work can act on.

A count of "713 unknown" therefore overstates how much licence resolution is left to do, and understates how much catalogue cleaning is.

Suggested direction

  1. Drop entries whose name is a module path or a bare URL — these are extraction defects with no downstream value.
  2. Decide whether instruments belong in a tool catalogue. If they do, they need a state that says the licence question does not apply, rather than borrowing unknown.
  3. Identify vendor products and tier them restricted, which is what they are.
  4. Only then is the residual unknown count a measure of outstanding licence work.

Step 2 is a governance decision and belongs with a maintainer; steps 1 and 3 are mechanical once it is made.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions