RadiolysisStabilityChecker
Radiolysis Stability Checker
Описание утилиты: Radiolysis Stability Checker
Radiolysis Stability Checker — Оценка стабильности РФП ℹ️ Прогнозирует снижение РХЧ из-за авторадиолиза на основе активности, объема и времени. ℹ️ Учитывает наличие радиопротекторов (аскорбат, этанол). Использование: RadiolysisStabilityChecker.exe → демо-режим RadiolysisStabilityChecker.exe input.csv output.json → расчет Формат input.csv: BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide Пример: LU177-STAB-001,Lu-177-DOTATATE,7400.0,5.0,99.5,true,Ascorbic,10.0,2026-05-20T08:00:00,2026-05-20T16:00:00,Lu-177 — ЗАЧЕМ ЭТО НУЖНО? При высокой удельной активности радиофармпрепараты подвержены радиолизу — саморазрушению под действием собственного излучения. • Прогнозирование: Утилита оценивает, насколько упадет радиохимическая чистота (РХЧ) к моменту инъекции или конца срока годности. • Факторы риска: Высокая концентрация активности (МБк/мл), отсутствие радиопротекторов, длительное время хранения. • Альфа-излучатели (Ac-225): Обладают высокой ЛПЭ (линейной передачей энергии), вызывая быстрый радиолиз даже при низких активностях. • Радиопротекторы: Аскорбиновая кислота, гентизиновая кислота или этанол значительно замедляют деградацию. ⚠️ ВАЖНО: • Модель является упрощенной. Реальная кинетика радиолиза сложна и зависит от многих факторов (pH, примеси, материал флакона). • Используйте этот инструмент для предварительной оценки и планирования логистики. • Всегда подтверждайте РХЧ экспериментально (ТСХ/ВЭЖХ) перед введением пациенту.
input.csv
BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide LU177-STAB-001,Lu-177-DOTATATE,7400.0,5.0,99.5,true,Ascorbic,10.0,2026-05-20T08:00:00,2026-05-20T16:00:00,Lu-177 AC225-STAB-001,Ac-225-PSMA,10.0,1.0,98.0,false,None,0.0,2026-05-20T08:00:00,2026-05-20T12:00:00,Ac-225
URS & FS — пользовательские требования и функциональная спецификация
1. Область применения
Документ описывает требования и функциональное поведение утилиты RadiolysisStabilityChecker для контроля: Radiolysis Stability Checker. Утилита предназначена для ОКК/QC и использует детерминированные правила, а не машинное обучение.
2. Режимы запуска
RadiolysisStabilityChecker.exe— демонстрационный режим или справка.RadiolysisStabilityChecker.exe input.csv output.json— обработка пользовательских данных и запись результата.
3. Ключевые предметные ограничения
- BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide
- • Прогнозирование: Утилита оценивает, насколько упадет радиохимическая чистота (РХЧ) к моменту инъекции или конца срока годности.
- ⚠️ ВАЖНО:
- • Модель является упрощенной. Реальная кинетика радиолиза сложна и зависит от многих факторов (pH, примеси, материал флакона).
4. URS — пользовательские требования
| ID | Требование | Критичность | Критерий приемки |
|---|---|---|---|
| URS-001 | Утилита должна принимать input.csv с точными заголовками, указанными в контракте данных. | High | Файл обрабатывается без ручного изменения заголовков. |
| URS-002 | Утилита должна проверять обязательность, типы данных, диапазоны, единицы и критические фармацевтические/радиохимические пределы. | High | Для каждой строки формируется статус PASS/WARNING/FAIL. |
| URS-003 | Утилита должна выявлять критические отклонения, связанные с радионуклидной/радиохимической чистотой, примесями, свободным радионуклидом, pH, эндотоксинами и стерильностью, если такие поля присутствуют. | High | Критическое отклонение приводит к FAIL или явному critical finding. |
| URS-004 | Утилита должна формировать output.json с машинно-читаемыми результатами, исходными значениями, предупреждениями и отказами. | High | JSON пригоден для LIMS/ELN/MES-интеграции и QA/QC review. |
| URS-005 | Утилита не должна использовать машинное обучение для решения о соответствии. | Medium | Решение основано на заданных правилах и порогах. |
| URS-006 | Утилита должна сохранять трассируемость между номером серии, входными значениями, примененными правилами и итоговым статусом. | High | Выход содержит идентификатор серии и перечень проверенных параметров. |
| URS-007 | Документация должна поддерживать подготовку IQ/OQ и инспекционное обсуждение FDA/EMA/Росздравнадзора или локального регулятора. | Medium | URS/FS и тестовые сценарии доступны вместе с утилитой. |
5. Контракт input.csv
| # | Поле | Тип | Пример | Назначение |
|---|---|---|---|---|
| 1 | BatchNumber | string | LU177-STAB-001 | Идентификатор серии/партии. |
| 2 | Radiopharmaceutical | string | Lu-177-DOTATATE | Тип продукта/радиофармпрепарата; влияет на интерпретацию контроля. |
| 3 | Initial_Activity_MBq | decimal | 7400.0 | Активность радиофармацевтического материала или готового продукта. |
| 4 | Volume_mL | decimal | 5.0 | Контролируемый входной параметр из input.csv. |
| 5 | Initial_RCP_Percent | decimal | 99.5 | Контролируемый входной параметр из input.csv. |
| 6 | Has_Radioprotector | decimal | true | Контролируемый входной параметр из input.csv. |
| 7 | Radioprotector_Type | string | Ascorbic | Контролируемый входной параметр из input.csv. |
| 8 | Radioprotector_Concentration_mM | decimal | 10.0 | Контролируемый входной параметр из input.csv. |
| 9 | EOS_Time_ISO | decimal | 2026-05-20T08:00:00 | Контролируемый входной параметр из input.csv. |
| 10 | Check_Time_ISO | decimal | 2026-05-20T16:00:00 | Контролируемый входной параметр из input.csv. |
| 11 | Radionuclide | decimal | Lu-177 | Контролируемый входной параметр из input.csv. |
BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide LU177-STAB-001,Lu-177-DOTATATE,7400.0,5.0,99.5,true,Ascorbic,10.0,2026-05-20T08:00:00,2026-05-20T16:00:00,Lu-177 AC225-STAB-001,Ac-225-PSMA,10.0,1.0,98.0,false,None,0.0,2026-05-20T08:00:00,2026-05-20T12:00:00,Ac-225
6. FS — функциональная спецификация
| ID | Функция | Реализация |
|---|---|---|
| FS-001 | CSV import | Прочитать input.csv в UTF-8/CSV-совместимом формате, проверить наличие заголовка и ожидаемых колонок. |
| FS-002 | Schema validation | Проверить обязательные поля и количество колонок; сообщить о неизвестных или отсутствующих ключевых полях. |
| FS-003 | Type conversion | Преобразовать числовые, флаговые и текстовые значения; некорректный формат фиксировать как ошибку строки. |
| FS-004 | Rule engine | Применить предметные правила для Radiolysis Stability Checker, включая критические пределы из описания утилиты. |
| FS-005 | Status aggregation | Сформировать итоговый статус: FAIL при критическом отказе, WARNING при некритическом отклонении, PASS при соответствии. |
| FS-006 | JSON export | Записать output.json с детализацией проверок, исходными значениями, предупреждениями и critical findings. |
| FS-007 | Audit support | Сохранять структуру результата пригодной для review, расследования отклонений и подготовки IQ/OQ. |
7. Пример output.json
{
"utilityId": "radiolysis-stability-checker",
"api": "Radiolysis Stability Checker",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "LU177-STAB-001",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radiopharmaceutical",
"value": "Lu-177-DOTATATE",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Initial_Activity_MBq",
"value": "7400.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Volume_mL",
"value": "5.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Initial_RCP_Percent",
"value": "99.5",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Has_Radioprotector",
"value": "true",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radioprotector_Type",
"value": "Ascorbic",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radioprotector_Concentration_mM",
"value": "10.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
}
],
"criticalFindings": []
}8. OQ/PQ тестовые сценарии
| ID | Сценарий | Ожидаемый результат |
|---|---|---|
| OQ-001 | Валидная строка из примера | PASS или допустимый WARNING согласно правилам. |
| OQ-002 | Отсутствует обязательная колонка | Ошибка схемы или FAIL. |
| OQ-003 | Нечисловое значение в числовом поле | Ошибка преобразования типа. |
| OQ-004 | Значение критического параметра за пределом | FAIL и critical finding. |
| PQ-001 | Реальная серия/партия пользователя | Согласованный результат review с сохранением input.csv и output.json. |
9. QA/QC и change control
- Не менять имена колонок без обновления валидатора.
- Хранить input.csv, output.json, версию исполняемого файла и контрольную сумму.
- Перед продуктивным использованием провести IQ/OQ/PQ или эквивалентную CSV/CSA-проверку.
- Критические радиофармацевтические пределы должны быть сверены с утверждённой спецификацией и локальными SOP.
Входит в пакеты
PetRad2: расширенный радиофармацевтический QC-пакет
Подборка новых утилит для контроля радионуклидов, таргетной альфа-терапии, удельной активности, радиолиза и предварительных дозиметрических расчётов.
ОткрытьРадиология
Пакет для радиологии и диагностической визуализации: радиофармпрепараты, PET/SPECT, контрастные вещества, йодсодержащие и гадолиниевые препараты, а также проверки частиц, стерильности и эндотоксинов.
ОткрытьRPH: объединённый радиофармацевтический QC-пакет
RPH объединяет PetRad, PetRad2 и PetRad3 в один обзорный пакет для PET/SPECT, терапевтических радионуклидов, генераторов, меченых соединений, расчётов распада, стерильности, эндотоксинов и радиохимической/радионуклидной чистоты.
Открыть