## genomoncology/biomcp — v0.8.21…v0.8.22

_454+ commits._

### Features
- **Merge Add executable spec coverage for get disease clinical_features section** (99f70df)
- **Merge Add behavioral CTGov intervention-alias and shell-safety ratchets to trial spec** (3b7f34c)
- **design: land failing assertions for add-behavioral-ctgov-intervention-alias-and-shell-safety-ratchets-to-trial-spec** (b034509)
- **Merge Add executable-spec coverage for ambiguous research-code drug fallback** (d19d463)
- **Add executable-spec coverage for ambiguous research-code drug fallback** (79b40c2)
- **Merge Add global src/cli line-cap ratchet with allowlist** (72ad5de)
- **Add global src/cli line-cap ratchet with allowlist** (843e7a3)
- **Merge Add benchmark runtime-wiring ratchet so structure tests also prove CLI reachability** (ae54cb7)
- **Add benchmark runtime-wiring ratchet so structure tests also prove CLI reachability** (0df57f5)
- **Merge Add OLS4 disease/discover parallel-isolation contract to absorb FAQ #14** (3f1bb04)
- **Add OLS4 disease/discover parallel-isolation contract to absorb FAQ #14** (6c3c46f)
- **Merge Add gene-all warm-budget assertion to spec/entity/gene.md** (77dd62f)
- **Add gene-all warm-budget assertion to spec/entity/gene.md** (8770204)

### Fixes
- **review: relax trivia and fix syntactic red for 362-consolidated-architecture-docs-parity-sweep-after-348** (3bdc1c2)
- **review: relax trivia and fix syntactic red for 363-harden-biomcp-ci-against-stale-binary-fallback-in-repo-local-verification** (2c950f9)
- **review: relax trivia and fix syntactic red for honor-retry-after-on-authenticated-semantic-scholar-retries** (a4a8e7c)
- **review: relax trivia and fix syntactic red for 365-expose-semantic-scholar-auth-and-degradation-status-in-article-search** (34708da)
- **review: relax trivia and fix syntactic red for 351-reconcile-get-trial-help-examples-with-declared-flags-and-pin-example-option-list-consistency** (b151ff5)
- **review: relax trivia and fix syntactic red for 358-add-executable-spec-coverage-for-get-disease-clinical-features-section** (d51c709)
- **review: relax trivia and fix syntactic red for 357-add-behavioral-ctgov-intervention-alias-and-shell-safety-ratchets-to-trial-spec** (8e21014)
- **review: relax trivia and fix syntactic red for 355-replace-update-command-short-literal-and-exact-marker-checks-with-structural-behavioral-ratchets** (05a1a75)
- **review: relax trivia and fix syntactic red for 353-decide-and-pin-custom-validation-exit-code-policy-with-integration-test-coverage** (d542bd1)
- **review: relax trivia and fix syntactic red for 354-pin-cbioportal-study-download-stall-and-idle-timeout-policy-with-mock-server-contract-test** (74646bb)
- **Merge Fix MCP stdio no-input guidance classifier and pin behavior with regression test** (c2dfaaa)
- **Fix MCP stdio no-input guidance classifier and pin behavior with regression test** (adf38d8)
- **review: relax trivia and fix syntactic red for 350-fix-mcp-stdio-no-input-guidance-classifier-and-pin-behavior-with-regression-test** (da3d2f3)
- **design: land failing assertions for 350-fix-mcp-stdio-no-input-guidance-classifier-and-pin-behavior-with-regression-test** (070212c)
- **review: relax trivia and fix syntactic red for 352-pin-biomcp-json-list-contract-with-executable-parseability-or-documented-exception-ratchet** (0978a9e)
- **review: relax trivia and fix syntactic red for 347-decompose-residual-over-cap-src-cli-files-under-global-ratchet** (7c2809f)
- **review: relax trivia and fix syntactic red for 342-preserve-ctgov-intervention-aliases-in-trial-next-command-suggestions** (105bb75)
- **Merge Mark src/cli/benchmark/ as internal regression harness in code** (19126a6)
- **Mark src/cli/benchmark/ as internal regression harness in code** (f8ef621)
- **review: relax trivia and fix syntactic red for 331-fail-biomcp-update-closed-when-release-checksum-sidecar-is-missing** (8659cc4)
- **Merge Fix WikiPathways nextest parallel flake blocking release gate** (e7fe487)
- **Fix WikiPathways nextest parallel flake blocking release gate** (a3b72c7)
- **Merge Fix OLS4 underscore IDs in disease discover fallback** (b08cbd1)
- **Fix OLS4 underscore IDs in disease discover fallback** (25081e2)
- **Merge Fix uv project-build hang in make check so local release-gate completes** (42dfe59)
- **review: relax trivia and fix syntactic red for 325-decompose-benchmark-run-rs-and-score-rs-into-benchmark-subtrees** (3dcf2a6)
- **review: relax trivia and fix syntactic red for 324-split-article-cli-tests-rs-into-domain-sidecars-under-src-cli-article-tests** (95306f5)
- **review: relax trivia and fix syntactic red for 323-decompose-list-rs-into-src-cli-list-grouped-surface-modules** (fec8060)
- **review: relax trivia and fix syntactic red for decompose-skill-rs-into-src-cli-skill-submodules** (31fe06c)
- **review: relax trivia and fix syntactic red for 321-decompose-suggest-rs-into-src-cli-suggest-submodules** (6d61751)
- **review: relax trivia and fix syntactic red for 320-decompose-health-rs-into-src-cli-health-submodules** (c7a3c9e)
- **review: relax trivia and fix syntactic red for 319-decompose-search-all-rs-into-src-cli-search-all-submodules** (1b444f3)

### Backend
- **Merge Polish v0.8.22 documentation gaps after release-readiness sweep** (499fb4d)
- **Polish v0.8.22 documentation gaps after release-readiness sweep** (10dff2a)
- **Merge Prepare and publish BioMCP v0.8.22 after final readiness tickets** (7a9406a)
- **Harden v0.8.22 CI release gates** (fdd4b9e)
- **Prepare BioMCP v0.8.22 release** (9b6d67b)
- **Merge Consolidated architecture docs parity sweep after 348** (dbf4c7b)
- **code-review: stale-doc — align diagnostic docs contract with design** (b936d86)
- **code: align architecture docs parity for ticket 362** (208029c)
- **design: land failing assertions for consolidated-architecture-docs-parity-sweep-after-348** (4f9c0a1)
- **Merge Harden biomcp-ci against stale binary fallback in repo-local verification** (21372cc)
- **Harden biomcp-ci against stale binary fallback in repo-local verification** (029be9c)
- **design: land failing assertions for harden-biomcp-ci-stale-binary-fallback** (9f5636a)
- **Merge Honor Retry-After on authenticated Semantic Scholar retries** (8c9d58c)
- **Honor Retry-After on authenticated Semantic Scholar retries** (9ce28d0)
- **code-review: stale-doc — align Semantic Scholar retry contract docs** (9977bc6)
- **design: land failing assertions for honor-retry-after-on-authenticated-semantic-scholar-retries** (2103237)
- **Merge Expose Semantic Scholar auth and degradation status in article search** (e56ae3a)
- **verify: preserve healthy article markdown spacing** (2f529cb)
- **code-review: collateral-damage — format Rust source** (c322640)
- **design: land failing assertions for expose-semantic-scholar-auth-status** (5fe7eb1)
- **Merge Architect Semantic Scholar timeout and credential propagation contract** (368fb02)
- **Architect Semantic Scholar timeout and credential propagation contract** (3bc2f48)
- **Merge Reconcile get trial help examples with declared flags and pin example/option-list consistency** (af748fb)
- **Reconcile get trial help examples with declared flags and pin example/option-list consistency** (94a71ba)
- **code-review: stale-doc — align source-page contract with trial example order** (ccecd40)
- **design: land failing assertions for reconcile-get-trial-help-examples** (792ec92)
- **verify: refresh clinical-features spec coverage docs** (287d981)
- **Merge Replace update-command short-literal and exact-marker checks with structural behavioral ratchets** (0a631dd)
- **Replace update-command short-literal and exact-marker checks with structural behavioral ratchets** (c6d6e9d)
- **design: land failing assertions for 355-replace-update-command-short-literal-and-exact-marker-checks-with-structural-behavioral-ratchets** (f9466c7)
- **Merge Decide and pin custom-validation exit code policy with integration test coverage** (16b510a)
- **Decide and pin custom-validation exit code policy with integration test coverage** (3895653)
- **design: land failing assertions for decide-and-pin-custom-validation-exit-code-policy** (49e2e21)
- **Merge Pin cBioPortal study download stall and idle timeout policy with mock-server contract test** (eece35e)
- **Pin cBioPortal study download stall and idle timeout policy with mock-server contract test** (7187a73)
- **design: land failing assertions for 354-pin-cbioportal-study-download-stall-and-idle-timeout-policy-with-mock-server-contract-test** (726b623)
- **Merge Pin biomcp --json list contract with executable parseability or documented exception ratchet** (2c35f8e)
- **Pin biomcp --json list contract with executable parseability or documented exception ratchet** (e326f66)
- **code-review: weak-assertion — require literal gene entity in list JSON contract** (aacbe66)
- **code-review: collateral-damage — use python3 in JSON list spec ratchet** (5701606)
- **design: land failing assertions for pin-biomcp-json-list-contract** (3cc9b6d)
- **Merge Decompose residual over-cap src/cli files under global ratchet** (c31c2a9)
- **Decompose residual over-cap src/cli files under global ratchet** (53bb4b7)
- **design: land failing assertions for 347-decompose-residual-over-cap-src-cli-files-under-global-ratchet** (95c5cf0)
- **Merge Behavioral rewrite of Graves apostrophe shell-safe assertions in spec/surface/cli.md** (72a67f5)
- **Behavioral rewrite of Graves apostrophe shell-safe assertions in spec/surface/cli.md** (e5eb17e)
- **Merge Polish embedded BioMCP skill how-tos with verified multi-step examples** (9d82f51)
- **Polish embedded BioMCP skill how-tos with verified multi-step examples** (88bc9ff)
- **Merge Rewrite UMLS-stripped discover spec assertions to cover degraded-mode behavior** (cf5cc73)
- **Rewrite UMLS-stripped discover spec assertions to cover degraded-mode behavior** (1d0fba9)
- **Merge Preserve CTGov intervention aliases in trial next-command suggestions** (57b688b)
- **verify: escape source-derived next-command shell metacharacters** (882f5f1)
- **code-review: collateral-damage — restore validation gates** (0149dea)
- **code: preserve CTGov intervention aliases in trial suggestions** (aea99f1)
- **design: land failing assertions for preserve-ctgov-intervention-aliases-in-trial-next-command-suggestions** (b89eb34)
- **Merge Pin biomcp --json version contract: emit JSON or document plain-text exception** (267e701)
- **Pin biomcp --json version contract: emit JSON or document plain-text exception** (4e47906)
- **Merge Refresh stale cli-decomposition-2026.md after benchmark and CLI decompose tickets** (d8e9ca7)
- **Refresh stale cli-decomposition-2026.md after benchmark and CLI decompose tickets** (302efbe)
- **Merge Fail biomcp update closed when release checksum sidecar is missing** (443a4d3)
- **Fail biomcp update closed when release checksum sidecar is missing** (084262d)
- **code-review: stale-doc — remove obsolete checksum policy marker** (f021438)
- **design: land failing assertions for 331-fail-biomcp-update-closed-when-release-checksum-sidecar-is-missing** (cfd8bd5)
- **Merge Make BioMCP spec-pr self-contained for March kickoff** (017c2c4)
- **Make BioMCP spec-pr self-contained for March kickoff** (a05bf36)
- **Merge Decide and document benchmark CLI ownership: public command or internal harness** (867c8ba)
- **Decide and document benchmark CLI ownership: public command or internal harness** (c14856d)
- **Merge Resolve gene all-section warm-budget xdist flake before release cut** (80c4ca8)
- **Resolve gene all-section warm-budget xdist flake before release cut** (feb19d8)
- **Avoid uv project builds in local gates** (7dd551b)
- **Merge Make protein ComplexPortal spec deterministic** (7865dc8)
- **Make protein ComplexPortal spec deterministic** (ed9a536)
- **Merge Decompose benchmark run.rs and score.rs into benchmark subtrees** (9df9e57)
- **code-review: validation-gap — compile benchmark sidecar tests** (ade4035)
- **code: decompose benchmark run and score modules** (ca9865f)
- **design: land failing assertions for decompose-benchmark-run-rs-and-score-rs-into-benchmark-subtrees** (eafc05f)
- **Merge Document DISGENET_API_KEY UMLS_API_KEY ONCOKB_TOKEN in architecture API key table** (a7216fa)
- **Document DISGENET_API_KEY UMLS_API_KEY ONCOKB_TOKEN in architecture API key table** (9d3b8a2)
- **Merge Decompose list.rs into src/cli/list/ grouped surface modules** (911463d)
- **Merge branch 'main' into march/323-decompose-list-rs-into-src-cli-list-grouped-surface-modules** (efddeb2)
- **Decompose list.rs into src/cli/list/ grouped surface modules** (f728c0b)
- **Merge Split article CLI tests.rs into domain sidecars under src/cli/article/tests/** (2c127de)
- **Split article CLI tests.rs into domain sidecars under src/cli/article/tests/** (2c0ebcf)
- **design: land failing assertions for split-article-cli-tests-rs-into-domain-sidecars-under-src-cli-article-tests** (db4d636)
- **design: land failing assertions for 323-decompose-list-rs-into-src-cli-list-grouped-surface-modules** (12ac2ee)
- **Merge Decompose skill.rs into src/cli/skill/ submodules** (e7df491)
- **Decompose skill.rs into src/cli/skill/ submodules** (f670cb6)
- **design: land failing assertions for decompose-skill-rs-into-src-cli-skill-submodules** (987ff94)
- **Merge Decompose suggest.rs into src/cli/suggest/ submodules** (88fc993)
- **Decompose suggest.rs into src/cli/suggest/ submodules** (0b5de1b)
- **design: land failing assertions for decompose-suggest-rs-into-src-cli-suggest-submodules** (581cf10)
- **Merge Decompose health.rs into src/cli/health/ submodules** (4952370)
- **Decompose health.rs into src/cli/health/ submodules** (0ec03fd)
- **design: land failing assertions for decompose-health-rs-into-src-cli-health-submodules** (d676808)
- **Merge Decompose search_all.rs into src/cli/search_all/ submodules** (0ba73a6)
- **Decompose search_all.rs into src/cli/search_all/ submodules** (cd5734a)
- **design: land failing assertions for decompose-search-all-rs-into-src-cli-search-all-submodules** (c781a7e)
- **Merge Warn when biomcp-ci falls back to system biomcp binary** (8e3a913)
- **Warn when biomcp-ci falls back to system biomcp binary** (716f9d7)
- **Merge Reconcile SKILL.md diagnostic content to standard surface template** (34ce91e)
- **Reconcile SKILL.md diagnostic content to standard surface template** (53be7fc)
- **Merge Make drug alias resolution bidirectional research-code to INN** (405ebae)
- **verify: relax dead UMLS assertions in discover spec** (4efe1ee)
- **code: implement discovery-backed sparse-hit rescue for research-code resolution** (07e29d2)

### Chore
- **build: expose Semantic Scholar source status in article search** (a6046c2)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/genomoncology/biomcp?utm_source=github-action)._