Skip to content

drug_chemical_conflate defaults to true on GET /get_normalized_nodes but false on POST #398

Description

@gaurav

GET /get_normalized_nodes declares drug_chemical_conflate: bool = fastapi.Query(True, ...) (node_normalizer/server.py:277), but the POST body model CurieList declares drug_chemical_conflate: bool = Field(False, ...) (node_normalizer/model/input.py:29-32).

So the same set of CURIEs normalized via GET and via POST can return different cliques, and nothing in the documentation or the OpenAPI schema warns about it.

v2.4.1 set DrugChemical conflation active by default (#347); it looks like only the GET path was updated.

Two things to decide:

  1. Which default is correct? Presumably True, to match GET and Minor changes to the API #347.
  2. Changing the POST default is a behaviour change for existing callers, so it probably wants a release note.

Also worth noting: CurieList.Config.schema_extra sets drug_chemical_conflate: True in its example, contradicting the declared default, and omits individual_types and include_taxa entirely.

Documented as a known divergence in documentation/API.md in the meantime.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions