stop_reason=refusal on legitimate regulatory document classification of public clinical trial protocols

Resolved 💬 2 comments Opened Mar 6, 2026 by LittleHubOnThePrairie Closed Mar 10, 2026

Summary

claude-sonnet-4-6 returns stop_reason=refusal with empty response.content when classifying sections of publicly available clinical trial protocols (ClinicalTrials.gov) against ICH E6(R3) Appendix B taxonomy. The task is document indexing — the model outputs only a numeric similarity score (0.0-1.0) in JSON. No medical advice, treatment recommendations, or patient-facing content is generated.

Use Case

Regulatory document transformation pipeline for ICH E6(R3) GCP compliance:

  1. Extracts sections from clinical trial protocol PDFs from ClinicalTrials.gov (public domain)
  2. Classifies each section against ICH Appendix B categories using LLM similarity scorer
  3. Assembles structured protocol template for regulatory review

The LLM only outputs {"score": 0.85, "rationale": "one sentence"} — a document-to-taxonomy similarity score.

Reproduction

Protocol NCT03963895 (Phase 2, E-WE thrombin in ESRD/hemodialysis). Three sections deterministically refused:

  • 8.2.1.1 Pharmacokinetics (nonclinical PK data) — 3/3 refused
  • 8.2.2.2 Pharmacodynamic Data (clinical PD biomarker data) — 2/3 refused
  • 12.1 Treatments Administered (drug formulation, dosing table) — 3/3 refused

Same code on NCT02856802 (migraine study) works for all sections. Three system prompt variations tested — all fail for these sections.

9 of 12 sections succeed (toxicology, safety data, dose selection, risk/benefit all work fine).

Impact

Blocks Claude for ICH E6(R3) regulatory document processing. PK, PD, and treatment sections are mandatory in every clinical trial protocol. These are publicly registered protocols — no medical advice is generated.

Expected

Model should process all sections of public clinical trial protocols for document classification tasks.

Environment

  • Model: claude-sonnet-4-6
  • SDK: anthropic Python
  • Content: ClinicalTrials.gov NCT03963895

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗