OpenGATE integration: europepmc authors fix + retrieval CI gate - #7
Merged
Conversation
…ubmed) search_europepmc returned authors as a single joined string while search_pubmed returns string[]. Downstream consumers (and OpenGATE's retrieval scorer, which asserts authors is a non-empty array of strings) rely on the array shape. formatEuropePmcResult now splits authorString into an array. Surfaced by wiring the tool into OpenGATE retrieval-fidelity checks. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Exercises the built server through OpenGATE's retrieval scorer against hand-verified anchors, gating parse regressions. Online (hits live NCBI/Europe PMC), so it runs on release + workflow_dispatch + weekly — not every push. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Wires PubCrawl into OpenGATE's retrieval-fidelity gate, and fixes an output inconsistency that wiring surfaced.
Changes
fix(europepmc)—search_europepmcreturnedauthorsas a single joined string whilesearch_pubmedreturnsstring[].formatEuropePmcResultnow splitsauthorStringinto an array, so author lists are uniform across the literature tools. Type + tests updated (62 tests pass, lint + build clean). Logged under[Unreleased]→ next release is v2.5.0.ci— adds.github/workflows/opengate.yml: runs OpenGATE'sretrievalscorer against the freshly-built server (points the adapter atdist/index.js, so it gates the code being released, not the published npm). Triggers on release + manual dispatch + weekly — not every PR, since it calls live NCBI / Europe PMC APIs; the offlinelint → test → buildgate inbuild.ymlstays on every push.Why the fix matters
OpenGATE's retrieval scorer asserts
authorsis a non-empty array of strings. On the first live run the Europe PMC case correctly failed the array invariant; after this fix it passes at fidelity 1.0 across both PubMed and Europe PMC. Verification found and fixed a real inconsistency — the point of the gate.Pairs with opengate#1 (the adapter + gold case).