Skip to content

A locus tag is not read as a gene name, so a component covered by one reports as missing #301

Description

@realmarcin

Third review pass on #297.

gene_names() reads geneName and synonyms only:

value = (gene.get("geneName") or {}).get("value")
names += [s["value"] for s in gene.get("synonyms") or [] if s.get("value")]

UniProt also carries orderedLocusNames and orfNames, and several components
declare exactly those. attachment_organelle#hmw3_terminal_button declares
hmw3 and mpn452; the accession it already holds, Q50360, is gene hmw3 with
ordered locus MPN_452. So mpn452 is covered by the entry already on the
component, and --gaps reports it as NO_REVIEWED_ENTRY.

Four rows affected today: mpn309, mpn310, mpn452, and the same shape
elsewhere.

Why this was not fixed in #297

Making the report read locus names while the seeder does not would
recreate the report/seeder divergence #298 was filed for. Making both read them
changes what the seeder will match on, which is a real semantic change — a
locus tag identifies an entry, but matching on one is a different claim from
matching on a gene name, and it deserves its own canary and its own PR.

Excluding them may also be deliberate: gene_names() is the exact-match recheck
that stops the adapter trusting UniProt's looser search, and every name it accepts
widens that. Worth deciding explicitly rather than by extension.

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