Skip to content

23 interaction participants are deliberately absent from taxonomy, shielded from the gate only by scope: COMMUNITY_LEVEL #319

Description

@realmarcin

Found reviewing PR #316. A curation-policy question, not a code defect.

UNKNOWN_SOURCE/UNKNOWN_TARGET are error-severity (they gate), and are suppressed only when the interaction carries scope: COMMUNITY_LEVEL. Schema makes scope optional with ifabsent: string(PAIRWISE).

Scanning the KB: 23 interaction participants across 17 records name organisms deliberately absent from taxonomy — hosts (Medicago truncatula (host legume), Arabidopsis thaliana, Lactuca sativa (lettuce host)), pathogens (Rhizoctonia solani, Aeromonas hydrophila), and umbrella placeholders (anode, three-species model community). Every one escapes the gate solely because its interaction is COMMUNITY_LEVEL.

Verified: deleting the scope key from the one interaction in Rice_Duckweed_Bacillus_SynCom.yaml yields 2 error findings and exit 3 — a red build on a record that is otherwise correct.

Arguably the gate is behaving correctly (a PAIRWISE edge to a non-member is dangling). But it means the gate has a 23-case blast radius behind a single optional key, and the underlying question is unresolved: should hosts and antagonists be taxonomy members? #307's counter-selection proposal asks the mirror-image question about excluded candidates, and its recommendation there was "no".

Worth deciding deliberately rather than discovering via a red build.

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