| summary | clinicaltrials://{nctId} now returns a bounded wrapper instead of the raw study (breaking); get_study_results and find_eligible gain new caps; find_eligible no longer hides an enrollable site behind a closed one; remaining-field labels disambiguate on collision |
|---|---|
| breaking | true |
| security | false |
clinicaltrials_get_study_resultsgainsoutcomeLimit(1–100) andadverseEventLimit(1–500) — full-mode-only caps on outcome measures and the serious/other adverse-event lists, applied once before both output channels render. A per-studyfiltersAppliedechoes the upstream total and the limit only when a cap actually trimmed a list. (#97)clinicaltrials_find_eligiblegainslocationLimit(1–500, default 10) and now returns only the sites matching a candidate's requested location at the narrowest tier that matched (city, else state, else country), instead of every site the study has ever registered worldwide. AlocationSummaryreports what was bounded, absent when nothing was dropped. (#100)
clinicaltrials://{nctId}now returns a bounded wrapper instead of the raw study — breaking. The payload is{ nctId, study, resultsSummary?, filtersApplied, truncated, retrieval? }:studycaps locations, secondary/other outcomes, and references at 50 each and dropsresultsSectionin favor ofresultsSummarycounts. A client reading the old shape's top-level protocol keys directly now getsundefined, and posted results data no longer appears in the payload at all — fetch the full lists withclinicaltrials_get_study_recordand the results data withclinicaltrials_get_study_results, both named inretrievalwhenevertruncatedis true. (#102)- The study-bounding logic shared by
clinicaltrials_get_study_recordand theclinicaltrials://{nctId}resource is now one helper (tools/utils/study-filters.ts) instead of two duplicated copies. (#102)
clinicaltrials_find_eligibleno longer hides an enrollable site behind a closer closed one — when none of a candidate's matched-tier sites isRECRUITING, its nearest recruiting site is now appended and flagged vialocationSummary.nearestRecruitingSiteAdded. (#114)formatRemainingStudyFieldswidens a colliding leaf label's window (e.g.Meshes[0] > Termshared by two different modules) until same-labelled leaves from different records part, instead of rendering them as if they were the same field. (#104)