Skip to content

Latest commit

 

History

History
22 lines (15 loc) · 2.88 KB

File metadata and controls

22 lines (15 loc) · 2.88 KB
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

2.9.0 — 2026-08-18

Added

  • clinicaltrials_get_study_results gains outcomeLimit (1–100) and adverseEventLimit (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-study filtersApplied echoes the upstream total and the limit only when a cap actually trimmed a list. (#97)
  • clinicaltrials_find_eligible gains locationLimit (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. A locationSummary reports what was bounded, absent when nothing was dropped. (#100)

Changed

  • clinicaltrials://{nctId} now returns a bounded wrapper instead of the raw study — breaking. The payload is { nctId, study, resultsSummary?, filtersApplied, truncated, retrieval? }: study caps locations, secondary/other outcomes, and references at 50 each and drops resultsSection in favor of resultsSummary counts. A client reading the old shape's top-level protocol keys directly now gets undefined, and posted results data no longer appears in the payload at all — fetch the full lists with clinicaltrials_get_study_record and the results data with clinicaltrials_get_study_results, both named in retrieval whenever truncated is true. (#102)
  • The study-bounding logic shared by clinicaltrials_get_study_record and the clinicaltrials://{nctId} resource is now one helper (tools/utils/study-filters.ts) instead of two duplicated copies. (#102)

Fixed

  • clinicaltrials_find_eligible no longer hides an enrollable site behind a closer closed one — when none of a candidate's matched-tier sites is RECRUITING, its nearest recruiting site is now appended and flagged via locationSummary.nearestRecruitingSiteAdded. (#114)
  • formatRemainingStudyFields widens a colliding leaf label's window (e.g. Meshes[0] > Term shared by two different modules) until same-labelled leaves from different records part, instead of rendering them as if they were the same field. (#104)