LeucovorinQualityChecker

Leucovorin

antivirals API biologics dissolution essential medicines global market heavy metals impurities
Открыть подборку

Leucovorin Quality Checker — Витамин B9 аналог (Ph. Eur., USP)

ℹ️ Утилита проверяет содержание, фолиевую кислоту (окисление), удельное вращение, профиль растворения.
ℹ️ Не использует машинное обучение — только правила.
⚠️ КРИТИЧНО! Фолиевая кислота ≤0.5%. Удельное вращение [-18 до -26]. Растворение ≥80% за 30 мин!

Использование:
LeucovorinQualityChecker.exe → демо-режим
LeucovorinQualityChecker.exe input.csv output.json → оценка данных

Формат input.csv:
BatchNumber,Assay_Percent,pH_Value,Specific_Rotation,Folic_Acid_Percent,Desmethyl_Impurity_Percent,Total_Impurities_Percent,Loss_On_Drying_Percent,Residual_Solvent_Ethanol_ppm,Residual_Solvent_Methanol_ppm,Heavy_Metals_ppm,Dissolution_30min_Percent,Dissolution_60min_Percent,Weight_Variation_RSD,Friability_Percent,Microbial_Count_TAMC,Microbial_Count_TYMC,EColi_Detected,Salmonella_Detected

Пример:
LEV-SUB-2026-001,99.2,6.5,-22.0,0.2,0.1,0.5,0.3,500,300,6,0.0,0.0,0.0,0.0,20,5,0,0

— ЗАЧЕМ ЭТО НУЖНО?
Левкорор (Фолиновая кислота) — восстановленная форма витамина B9, используемая при дефиците фолата или как rescue-терапия после приема метотрексата/5-ФУ:
• Окислительная деградация: Левкорор легко окисляется до фолиевой кислоты (неактивной в данном контексте rescue-терапии). Контроль фолиевой кислоты критичен (≤0.5%).
• Хиральность: Молекула хиральна. Удельное вращение строго контролируется для подтверждения стереохимической чистоты (обычно от -18° до -26°).
• pH раствора: Критичен для стабильности молекулы. Диапазон 4.0–7.0 предотвращает гидролиз и окисление.
• Синтез может включать использование этанола и метанола.
⚠️ КРИТИЧЕСКИ ВАЖНО:
• Содержание: 97.0–103.0%
• pH (10 мг/мл р-р): 4.0–7.0
• Фолиевая кислота: ≤ 0.5% (продукт окисления)
• Дезметилированная примесь: ≤ 0.5%
• Сумма примесей: ≤ 1.5%
• Удельное вращение: от -18° до -26°
• Потеря при высушивании: ≤ 0.5%
• Метанол: ≤ 3000 ppm
• Тяжелые металлы: ≤ 10 ppm
• Растворение: ≥ 80% за 30 минут, ≥ 85% за 60 минут
• Микробиология: стандартные лимиты
⚠️ Особенность: Утилита адаптирована под проверку профиля растворения. Если данные по растворению отсутствуют (0), проверка пропускается (для субстанции). Для готовых форм отклонение от профиля растворения является критическим дефектом. Контроль фолиевой кислоты является приоритетом из-за риска потери терапевтической эффективности при rescue-терапии.

input.csv

BatchNumber,Assay_Percent,pH_Value,Specific_Rotation,Folic_Acid_Percent,Desmethyl_Impurity_Percent,Total_Impurities_Percent,Loss_On_Drying_Percent,Residual_Solvent_Ethanol_ppm,Residual_Solvent_Methanol_ppm,Heavy_Metals_ppm,Dissolution_30min_Percent,Dissolution_60min_Percent,Weight_Variation_RSD,Friability_Percent,Microbial_Count_TAMC,Microbial_Count_TYMC,EColi_Detected,Salmonella_Detected
LEV-SUB-2026-001,99.2,6.5,-22.0,0.2,0.1,0.5,0.3,500,300,6,0.0,0.0,0.0,0.0,20,5,0,0

URS & FS — пользовательские требования и функциональная спецификация

Этот документ описывает требования пользователя и функциональную спецификацию для утилиты контроля качества. Он предназначен для обсуждения внедрения, подготовки IQ/OQ и интеграции в контур ОКК/QC.

Утилита: LeucovorinQualityCheckerAPI / объект: LeucovorinКатегория: Global API expansion

1. Область применения

Утилита Leucovorin Quality Checker применяется для объекта Leucovorin. Источником истины для структуры входных данных является фактический input.csv; критерии контроля задаются исполняемым модулем и предметным описанием.

Утилита не использует машинное обучение; решение формируется детерминированными правилами.

Категории: Global API expansion

Теги: antivirals, API, biologics, dissolution, essential medicines, global market, heavy metals, impurities, microbiology, oncology, vitamins

2. Режимы запуска

LeucovorinQualityChecker.exe                            → демо-режим
LeucovorinQualityChecker.exe input.csv output.json      → оценка данных

3. Ключевые контролируемые области

  • количественное содержание / assay
  • чистота и примеси
  • растворение / распад
  • остаточные растворители
  • микробиология и патогены
  • тяжёлые металлы / элементные примеси
  • pH и физико-химические параметры

4. Предметные ограничения и критические параметры

  • ⚠️ КРИТИЧНО! Фолиевая кислота ≤0.5%. Удельное вращение [-18 до -26]. Растворение ≥80% за 30 мин!
  • Окислительная деградация: Левкорор легко окисляется до фолиевой кислоты (неактивной в данном контексте rescue-терапии). Контроль фолиевой кислоты критичен (≤0.5%).
  • ⚠️ КРИТИЧЕСКИ ВАЖНО:
  • Содержание: 97.0–103.0%
  • pH (10 мг/мл р-р): 4.0–7.0
  • Фолиевая кислота: ≤ 0.5% (продукт окисления)
  • Дезметилированная примесь: ≤ 0.5%
  • Сумма примесей: ≤ 1.5%
  • Удельное вращение: от -18° до -26°
  • Потеря при высушивании: ≤ 0.5%
  • Метанол: ≤ 3000 ppm
  • Тяжелые металлы: ≤ 10 ppm
  • Растворение: ≥ 80% за 30 минут, ≥ 85% за 60 минут
  • Микробиология: стандартные лимиты
  • ⚠️ Особенность: Утилита адаптирована под проверку профиля растворения. Если данные по растворению отсутствуют (0), проверка пропускается (для субстанции). Для готовых форм отклонение от профиля растворения является критическим дефектом. Контроль фолиевой кислоты является приоритетом из-за риска потери терапевтической эффективности при rescue-терапии.
Пределы, указанные в описании, должны быть сверены с актуальной утверждённой спецификацией, фармакопейной монографией и регистрационным досье перед продуктивным применением.

5. URS — пользовательские требования

IDТребованиеКритичностьКритерий приемки
URS-001Система должна принимать файл input.csv для Leucovorin с точным набором колонок, перечисленным в разделе «Контракт входных данных».HighФайл с корректным заголовком читается без ручного редактирования; отсутствие обязательной колонки приводит к FAIL/ошибке импорта.
URS-002Система должна обрабатывать запуск без аргументов в демонстрационном режиме и запуск с аргументами input.csv output.json для пользовательских данных.MediumОба сценария запуска дают предсказуемый результат или понятное сообщение об ошибке.
URS-003Система должна выполнять rule-based контроль по областям: количественное содержание / assay, чистота и примеси, растворение / распад, остаточные растворители, микробиология и патогены, тяжёлые металлы / элементные примеси, pH и физико-химические параметры.HighКаждый контролируемый параметр получает статус и сообщение; результат не зависит от скрытых Excel-формул или ML.
URS-004Система должна сохранять трассируемость между серией/партией, исходными значениями, применёнными правилами и итоговым вердиктом.HighВ выходе присутствуют идентификатор серии, исходные значения, статусы параметров и критические находки.
URS-005Система должна формировать машинно-читаемый output.json для LIMS/ELN/MES, batch record и QA/QC review.HighJSON содержит общий статус, массив проверок, предупреждения, отказы и ссылку на исходный файл.
URS-006Система должна поддерживать применение в валидационном пакете клиента: URS/FS, IQ/OQ-подготовка, проверка установки и операционных сценариев.HighДокумент, тестовые сценарии и воспроизводимый CSV/JSON-поток пригодны для аудита и внутреннего согласования.
URS-007Система должна явно отделять технические ошибки данных от предметных несоответствий спецификации.MediumОшибки схемы/типов не смешиваются с фармакопейными отклонениями и отображаются отдельно.

6. Контракт входных данных input.csv

Источник истины для схемы входа — фактический заголовок input.csv. Имена колонок технические и не переводятся.

#КолонкаТипЕд.ОписаниеПримерПравило контроля
1BatchNumberидентификаторas specifiedBatch NumberLEV-SUB-2026-001обязательное поле; используется для трассируемости серии/партии
2Assay_Percentдесятичное число%Assay %99.2число; сравнивается с пределом содержания/чистоты из спецификации или метода
3pH_Valueдесятичное числоpHp H Value6.5обязательное числовое значение; сравнение с правилом выполняет утилита
4Specific_Rotationдесятичное числоas specifiedSpecific Rotation-22.0обязательное числовое значение; сравнение с правилом выполняет утилита
5Folic_Acid_Percentдесятичное число%Folic Acid %0.2обязательное числовое значение; сравнение с правилом выполняет утилита
6Desmethyl_Impurity_Percentдесятичное число%Desmethyl Impurity %0.1число; сравнивается с индивидуальным или суммарным пределом примесей
7Total_Impurities_Percentдесятичное число%Total Impurities %0.5обязательное числовое значение; сравнение с правилом выполняет утилита
8Loss_On_Drying_Percentдесятичное число%Loss On Drying %0.3обязательное числовое значение; сравнение с правилом выполняет утилита
9Residual_Solvent_Ethanol_ppmдесятичное числоppmResidual Solvent Ethanol ppm500число; проверяется как остаточный растворитель по установленному пределу
10Residual_Solvent_Methanol_ppmдесятичное числоppmResidual Solvent Methanol ppm300число; проверяется как остаточный растворитель по установленному пределу
11Heavy_Metals_ppmдесятичное числоppmHeavy Metals ppm6число; проверяется как элементная/металлическая примесь
12Dissolution_30min_Percentдесятичное число%Dissolution 30min %0.0число; проверяется профиль высвобождения/распада согласно методу
13Dissolution_60min_Percentдесятичное число%Dissolution 60min %0.0число; проверяется профиль высвобождения/распада согласно методу
14Weight_Variation_RSDдесятичное числоas specifiedWeight Variation RSD0.0обязательное числовое значение; сравнение с правилом выполняет утилита
15Friability_Percentдесятичное число%Friability %0.0обязательное числовое значение; сравнение с правилом выполняет утилита
16Microbial_Count_TAMCдесятичное числоas specifiedMicrobial Count TAMC20число; сравнивается с микробиологическими пределами
17Microbial_Count_TYMCдесятичное числоas specifiedMicrobial Count TYMC5число; сравнивается с микробиологическими пределами
18EColi_Detectedлогический флаг0/1EColi Detected0значение должно быть допустимым флагом; для запрещённых микроорганизмов и роста обычно ожидается 0 / отсутствие
19Salmonella_Detectedлогический флаг0/1Salmonella Detected0значение должно быть допустимым флагом; для запрещённых микроорганизмов и роста обычно ожидается 0 / отсутствие

Пример CSV

BatchNumber,Assay_Percent,pH_Value,Specific_Rotation,Folic_Acid_Percent,Desmethyl_Impurity_Percent,Total_Impurities_Percent,Loss_On_Drying_Percent,Residual_Solvent_Ethanol_ppm,Residual_Solvent_Methanol_ppm,Heavy_Metals_ppm,Dissolution_30min_Percent,Dissolution_60min_Percent,Weight_Variation_RSD,Friability_Percent,Microbial_Count_TAMC,Microbial_Count_TYMC,EColi_Detected,Salmonella_Detected
LEV-SUB-2026-001,99.2,6.5,-22.0,0.2,0.1,0.5,0.3,500,300,6,0.0,0.0,0.0,0.0,20,5,0,0

7. FS — функциональная спецификация

IDФункцияОписание реализации
FS-001CLI entry pointИсполняемый файл LeucovorinQualityChecker.exe принимает режим демонстрации и режим обработки input.csv output.json.
FS-002CSV parserМодуль импорта читает CSV, проверяет заголовок, порядок/наличие колонок, количество значений и кодировку. Для десятичных значений ожидается точка.
FS-003Field conversionДля каждой колонки выполняется преобразование к ожидаемому типу: идентификатор, текст, десятичное число, дата/время или логический флаг.
FS-004Domain rule engineДля объекта Leucovorin применяются явные правила: диапазон, минимум, максимум, отсутствие запрещённого признака, полнота данных или расчётная проверка.
FS-005Criticality handlingКритичные нарушения формируют FAIL; некритичные отклонения и неполные данные формируют WARNING; соответствие всем правилам формирует PASS.
FS-006JSON writeroutput.json сохраняет общий статус, результаты по каждому параметру, исходные значения, предупреждения, отказы и диагностические сообщения.
FS-007Integration contractФормат CSV → JSON стабилен для вызова из LIMS/ELN/MES, планировщика задач или wrapper-сервиса.
FS-008Error handlingПри ошибке схемы, отсутствующем файле, нечисловом значении или невозможности записи JSON возвращается диагностируемая ошибка без тихого PASS.

8. Выходной контракт output.json

Выходной файл должен быть пригоден для автоматической обработки, аудита и сопоставления с исходной строкой input.csv.

{
  "utility": "LeucovorinQualityChecker",
  "api": "Leucovorin",
  "batchNumber": "LEV-SUB-2026-001",
  "overallStatus": "PASS|WARNING|FAIL",
  "checkedAtUtc": "2026-05-18T00:00:00Z",
  "checks": [
    {
      "parameter": "BatchNumber",
      "value": "LEV-SUB-2026-001",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Assay_Percent",
      "value": "99.2",
      "unit": "%",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "pH_Value",
      "value": "6.5",
      "unit": "pH",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Specific_Rotation",
      "value": "-22.0",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Folic_Acid_Percent",
      "value": "0.2",
      "unit": "%",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Desmethyl_Impurity_Percent",
      "value": "0.1",
      "unit": "%",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Total_Impurities_Percent",
      "value": "0.5",
      "unit": "%",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Loss_On_Drying_Percent",
      "value": "0.3",
      "unit": "%",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    }
  ],
  "criticalFindings": [],
  "sourceFile": "input.csv"
}

9. Тестовые сценарии OQ/PQ

IDСценарийОжидаемый результат
TC-001Валидный CSV с заголовком и строкой из примераВсе строки обработаны; результат содержит PASS/WARNING/FAIL и детализацию по параметрам.
TC-002Отсутствует обязательная колонка из input.csvИмпорт отклоняется или строка получает FAIL со ссылкой на схему.
TC-003Числовое поле содержит текст или пустое значениеФиксируется ошибка преобразования типа; результат не маскируется как PASS.
TC-004Параметр выходит за предел спецификации / критического лимитаДля критического параметра формируется FAIL; для некритического — WARNING согласно правилу.
TC-005Положительный патогенный/микробиологический флаг или превышение микробиологического лимитаФормируется критический FAIL с указанием параметра.
TC-006Недостаточное растворение или превышение времени распадаФормируется FAIL/WARNING согласно критичности метода.
TC-007Остаточный растворитель выше установленного пределаФормируется FAIL с указанием растворителя и измеренного значения.

10. QA/QC, CSV и управление изменениями

  • Перед применением на производстве клиент фиксирует версию исполняемого файла, контрольную сумму, версию спецификации/монографии, тестовый CSV, ожидаемый JSON и результаты IQ/OQ.
  • Нельзя менять имена колонок без обновления валидатора и тестовых сценариев.
  • Исходный CSV, output.json и версия утилиты должны храниться вместе как пакет доказательств.
  • Любое изменение правил контроля должно проходить change control и повторную проверку OQ-сценариев.

Входит в пакеты

Ревматология

Пакет для ревматологии: НПВС, глюкокортикостероиды, метотрексат, биологические препараты и вспомогательные проверки примесей/активности.

Открыть

World API Extension QC Suite

Расширенный пакет по 130 дополнительным востребованным API и биологическим продуктам, подготовленный как backlog для покрытия мирового рынка.

Открыть