SterilityTestReviewUtility
Sterility Test Review
Vet veterinary veterinary vaccines animal health adjuvants aquaculture batch release CSV→JSON
Открыть подборкуОписание утилиты: Sterility Test Review
Sterility Test Review Utility — Ревью теста на стерильность
ℹ️ Утилита автоматизирует проверку результатов теста на стерильность согласно Ph. Eur. 2.6.1 и USP <71>:
• Результаты образца: Проверка отсутствия роста в средах TSB (аэробы/грибы) и FTG (анаэробы).
• Валидность системы: Положительные контроли должны показывать рост, отрицательные — отсутствие роста.
• Время инкубации: Минимум 14 дней.
• Статусы: PASS (Стерильно), FAIL (Рост обнаружен), INVALID (Ошибка теста).
⚠️ КРИТИЧНО:
• Статус FAIL требует немедленного запуска расследования OOS (Out of Specification).
• Статус INVALID означает, что результат нельзя использовать для выпуска серии, требуется перетестирование.
• Ошибки в контролях (например, отсутствие роста в положительном контроле) делают тест недействительным.
Использование:
SterilityTestReviewUtility.exe → демо-режим (вывод в консоль)
SterilityTestReviewUtility.exe input.csv output.json → оценка ваших данных
Формат input.csv:
BatchNumber,ProductName,TSB_Growth,FTG_Growth,Incubation_Days,PosControl_TSB_Growth,PosControl_FTG_Growth,NegControl_TSB_Growth,NegControl_FTG_Growth,Investigation_Status
Пример (0=No Growth, 1=Growth):
ST-001,WFI,0,0,14,1,1,0,0,None
— ЗАЧЕМ ЭТО НУЖНО?
Тест на стерильность является критическим тестом выпуска для всех парентеральных препаратов.
Он имеет вероятностную природу, поэтому строгое соблюдение условий валидности теста критически важно.
Автоматизация ревью исключает риск пропуска ошибок в_controls_ или неправильной интерпретации роста.
⚠️ КРИТИЧЕСКИ ВАЖНО:
• Асептика отбора проб: Большинство ложноположительных результатов связано с ошибками оператора при отборе проб.
• Среда TSB: Поддерживает рост аэробных бактерий и грибов.
• Среда FTG (Fluid Thioglycollate Medium): Поддерживает рост анаэробных бактерий.
• Инкубация: Проводится при 20-25°C (TSB) и 30-35°C (FTG) или в универсальных условиях.
Ключевые особенности утилиты:
• Автоматическое определение статуса (Pass/Fail/Invalid)
• Проверка валидности контролей
• Контроль длительности инкубации
• Генерация отчетов для микробиологической лаборатории и LIMS LabWare
• Соответствие требованиям GMP и Фармакопей
Критические параметры:
• TSB/FTG образца: 0 (Нет роста)
• Положительный контроль: 1 (Рост)
• Отрицательный контроль: 0 (Нет роста)
• Дни инкубации: ≥ 14
💡 Советы по использованию:
1. Интеграция: Данные должны поступать из микробиологического журнала или LIMS после завершения 14-дневного цикла.
2. Расследование: При статусе FAIL утилита указывает на необходимость расследования, но не проводит его.
3. Повторный тест: Если тест признан INVALID, разрешен повторный тест только после установления причины невалидности.
4. Документирование: Сохраняйте JSON-отчеты как доказательство проверки данных (Data Review).
⚠️ Особенность: В отличие от химических тестов, здесь результат "Отсутствие роста" является положительным результатом теста, но требует абсолютной уверенности в работоспособности системы (контролях).input.csv
BatchNumber,ProductName,TSB_Growth,FTG_Growth,Incubation_Days,PosControl_TSB_Growth,PosControl_FTG_Growth,NegControl_TSB_Growth,NegControl_FTG_Growth,Investigation_Status ST-2026-WFI-001,Water for Injection,0,0,14,1,1,0,0,None ST-2026-VAC-002,Vaccine Bulk,0,0,14,1,1,0,0,None ST-2026-FAIL-003,Antibiotic Solution,1,0,14,1,1,0,0,OOS_Investigation ST-2026-INV-004,Buffer Solution,0,0,14,0,1,0,0,None
URS & FS — спецификация пользователя и функциональная спецификация
Документ описывает контролируемый интерфейс и поведение утилиты SterilityTestReviewUtility для сценария Sterility Test Review Utility.
Предметные ограничения и критические параметры
Ниже приведены ключевые фрагменты исходного описания. Перед продуктивным применением пределы должны быть сверены с утверждённой спецификацией, регистрационным досье и локальными SOP.
- Sterility Test Review Utility — Ревью теста на стерильность
- ℹ️ Утилита автоматизирует проверку результатов теста на стерильность согласно Ph. Eur. 2.6.1 и USP <71>:
- • Статусы: PASS (Стерильно), FAIL (Рост обнаружен), INVALID (Ошибка теста).
- ⚠️ КРИТИЧНО:
- Тест на стерильность является критическим тестом выпуска для всех парентеральных препаратов.
- Он имеет вероятностную природу, поэтому строгое соблюдение условий валидности теста критически важно.
- ⚠️ КРИТИЧЕСКИ ВАЖНО:
- • Автоматическое определение статуса (Pass/Fail/Invalid)
- • Соответствие требованиям GMP и Фармакопей
- Критические параметры:
- • Дни инкубации: ≥ 14
URS — пользовательские требования
| ID | Требование | Критичность | Критерий приемки |
|---|---|---|---|
| URS-001 | Утилита должна принимать файл input.csv для Sterility Test Review Utility с заголовками, определёнными в контракте данных. | High | Файл обрабатывается без ручного изменения заголовков. |
| URS-002 | Утилита должна выполнять детерминированную оценку QC/ОКК без машинного обучения и без вероятностного принятия решения о соответствии. | High | При одинаковых входных данных, версии правил и конфигурации результат полностью воспроизводим. |
| URS-003 | Утилита должна валидировать обязательные поля, типы данных, диапазоны, единицы измерения и предметную правдоподобность значений. | High | Ошибки схемы, преобразования и диапазона явно отражаются в результате. |
| URS-004 | Утилита должна применять предметные пределы и правила из описания, утверждённой спецификации, регистрационного досье и локальных SOP. | High | Каждая проверка имеет результат PASS/WARNING/FAIL и понятное сообщение. |
| URS-005 | Утилита должна формировать output.json с машинно-читаемыми результатами, исходными значениями, предупреждениями, отказами и критическими находками. | High | JSON пригоден для LIMS/ELN/MES-интеграции и QA/QC review. |
| URS-006 | Утилита должна сохранять трассируемость между серией/образцом, входным файлом, применёнными правилами и итоговым статусом. | High | Выход содержит идентификаторы, список параметров и audit metadata. |
| URS-007 | Документация должна поддерживать подготовку IQ/OQ/PQ, CSV/CSA и обсуждение с инспекторами или внутренним QA. | Medium | URS, FS, контракт input/output и тестовые сценарии поставляются вместе с утилитой. |
| URS-008 | Утилита должна использоваться как decision-support инструмент QC, а не как замена утверждённым спецификациям и выпускному решению Qualified Person/QA. | Medium | В документации указан контроль change control и необходимость сверки пределов. |
Контракт input.csv
| # | Поле | Тип | Пример | Назначение |
|---|---|---|---|---|
| 1 | BatchNumber | string / controlled vocabulary | ST-2026-WFI-001 | Идентификатор серии/партии для трассируемости. |
| 2 | ProductName | string / controlled vocabulary | Water for Injection | Наименование продукта или проверяемой лекарственной формы. |
| 3 | TSB_Growth | flag / boolean | 0 | Контролируемый входной параметр для детерминированных QC-правил. |
| 4 | FTG_Growth | flag / boolean | 0 | Контролируемый входной параметр для детерминированных QC-правил. |
| 5 | Incubation_Days | integer / decimal | 14 | Временной параметр процесса, инкубации, хранения или анализа. |
| 6 | PosControl_TSB_Growth | string / controlled vocabulary | 1 | Контрольная точка/контрольный образец для валидности серии анализа. |
| 7 | PosControl_FTG_Growth | string / controlled vocabulary | 1 | Контрольная точка/контрольный образец для валидности серии анализа. |
| 8 | NegControl_TSB_Growth | string / controlled vocabulary | 0 | Контрольная точка/контрольный образец для валидности серии анализа. |
| 9 | NegControl_FTG_Growth | string / controlled vocabulary | 0 | Контрольная точка/контрольный образец для валидности серии анализа. |
| 10 | Investigation_Status | string / controlled vocabulary | None | Результат или статус, применяемый в итоговой классификации. |
BatchNumber,ProductName,TSB_Growth,FTG_Growth,Incubation_Days,PosControl_TSB_Growth,PosControl_FTG_Growth,NegControl_TSB_Growth,NegControl_FTG_Growth,Investigation_Status ST-2026-WFI-001,Water for Injection,0,0,14,1,1,0,0,None ST-2026-VAC-002,Vaccine Bulk,0,0,14,1,1,0,0,None ST-2026-FAIL-003,Antibiotic Solution,1,0,14,1,1,0,0,OOS_Investigation
Правила валидации входных данных
| ID | Поле | Правило | Критичность |
|---|---|---|---|
| VR-001 | BatchNumber | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | High |
| VR-002 | ProductName | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | High |
| VR-003 | TSB_Growth | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | High |
| VR-004 | FTG_Growth | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
| VR-005 | Incubation_Days | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
| VR-006 | PosControl_TSB_Growth | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
| VR-007 | PosControl_FTG_Growth | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
| VR-008 | NegControl_TSB_Growth | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
| VR-009 | NegControl_FTG_Growth | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
| VR-010 | Investigation_Status | Поле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме. | Medium |
FS — функциональная спецификация
| ID | Функция | Реализация |
|---|---|---|
| FS-001 | CLI execution | Поддержать режимы запуска: demo mode без аргументов и production mode input.csv output.json. |
| FS-002 | CSV import | Прочитать input.csv в UTF-8/CSV-совместимом формате, проверить наличие заголовка и ожидаемых колонок. |
| FS-003 | Schema validation | Проверить обязательные поля, количество колонок, неизвестные ключевые поля и пустые обязательные значения. |
| FS-004 | Type conversion | Преобразовать числовые, флаговые и текстовые значения; некорректный формат фиксировать как ошибку строки. |
| FS-005 | Domain rule engine | Применить правила для Sterility Test Review Utility, включая критические пределы из описания и утверждённой спецификации. |
| FS-006 | Status aggregation | Сформировать итоговый статус: FAIL при критическом отказе, WARNING при некритическом отклонении, PASS при соответствии. |
| FS-007 | JSON export | Записать output.json с детализацией проверок, исходными значениями, предупреждениями, отказами и critical findings. |
| FS-008 | Audit support | Сохранять структуру результата пригодной для review, расследования отклонений и воспроизведения расчёта. |
| FS-009 | Integration contract | Поддержать сценарий LIMS/ELN/MES → input.csv → utility → output.json → portal/admin review. |
| FS-010 | Error handling | Возвращать явные сообщения для отсутствующего файла, пустого CSV, неверной схемы, ошибки записи output.json и некорректного формата. |
Пример output.json
{
"utilityId": "sterilitytestreviewutility",
"utilityFolder": "SterilityTestReviewUtility",
"package": "Vet",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"processedAtUtc": "2026-06-10T00:00:00Z",
"checks": [
{
"parameter": "BatchNumber",
"value": "ST-2026-WFI-001",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-001"
},
{
"parameter": "ProductName",
"value": "Water for Injection",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-002"
},
{
"parameter": "TSB_Growth",
"value": "0",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-003"
},
{
"parameter": "FTG_Growth",
"value": "0",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-004"
},
{
"parameter": "Incubation_Days",
"value": "14",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-005"
},
{
"parameter": "PosControl_TSB_Growth",
"value": "1",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-006"
},
{
"parameter": "PosControl_FTG_Growth",
"value": "1",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-007"
},
{
"parameter": "NegControl_TSB_Growth",
"value": "0",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-008"
},
{
"parameter": "NegControl_FTG_Growth",
"value": "0",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-009"
},
{
"parameter": "Investigation_Status",
"value": "None",
"status": "PASS|WARNING|FAIL",
"message": "Deterministic rule-based check result",
"ruleReference": "FS-RULE-010"
}
],
"criticalFindings": [],
"warnings": [],
"audit": {
"inputHash": "sha256:<calculated at runtime>",
"rulesVersion": "<utility executable version>",
"documentation": "SterilityTestReviewUtility.documentation.html"
}
}
Матрица трассируемости
| URS | FS | Тест | Подтверждение |
|---|---|---|---|
| URS-001 | FS-001, FS-002 | OQ-001 | Проверить запуск и импорт валидного input.csv. |
| URS-002 | FS-005, FS-006 | OQ-004 | Повторить один и тот же набор данных и сравнить output.json. |
| URS-003 | FS-003, FS-004, FS-010 | OQ-002, OQ-003 | Проверить отсутствующие колонки и неверные типы. |
| URS-004 | FS-005, FS-006 | OQ-004, PQ-001 | Проверить критические отклонения по реальным/граничным данным. |
| URS-005 | FS-007, FS-009 | OQ-005 | Проверить JSON schema и пригодность для downstream-систем. |
| URS-006 | FS-008 | OQ-006 | Проверить наличие идентификаторов и audit metadata. |
| URS-007 | FS-008, FS-010 | IQ-001, OQ-007 | Проверить комплектность документации и control evidence. |
| URS-008 | FS-005, FS-008 | PQ-002 | Проверить review workflow и запрет автоматической замены QA-решения. |
IQ/OQ/PQ тестовые сценарии
| ID | Сценарий | Ожидаемый результат |
|---|---|---|
| IQ-001 | Проверить наличие executable, input.csv, документации и контрольной суммы. | Комплект поставки полон; версия зафиксирована. |
| OQ-001 | Валидная строка из примера input.csv. | PASS или допустимый WARNING согласно правилам. |
| OQ-002 | Удалить обязательную колонку из CSV. | Ошибка схемы или FAIL с указанием отсутствующей колонки. |
| OQ-003 | Внести нечисловое значение в числовое поле. | Ошибка преобразования типа с указанием строки/поля. |
| OQ-004 | Значение критического параметра вывести за предел. | FAIL и critical finding. |
| OQ-005 | Проверить структуру output.json. | Все обязательные секции присутствуют, JSON валиден. |
| OQ-006 | Проверить трассируемость серии/образца. | Идентификаторы входа и результатов совпадают. |
| PQ-001 | Проверить 3–5 реальных партий/образцов пользователя. | Результат подтверждён QC/QA review. |
| PQ-002 | Проверить workflow отклонения и ручного QA-решения. | Утилита поддерживает review, но не заменяет утверждённое решение. |
QA/QC и change control
- Не менять имена колонок без обновления валидатора, документации и тестового набора.
- Хранить
input.csv,output.json, версию исполняемого файла и контрольную сумму. - Перед продуктивным использованием провести IQ/OQ/PQ или эквивалентную CSV/CSA-проверку.
- Критические пределы должны быть сверены с утверждённой спецификацией, регистрационным досье и локальными SOP.
- Утилита предоставляет формализованный QC decision support, но окончательное решение выпуска остаётся за QA/QP и утверждёнными процедурами.
Входит в пакеты
Инфекционистика
Пакет QC-утилит для инфекционистики: антибактериальные, противовирусные, противогрибковые и противопаразитарные продукты, микробиология, стерильность, эндотоксины, вирусная безопасность, вакцинные release-checks.
ОткрытьVet — ветеринарные QC утилиты
Пакет Vet предназначен для ветеринарной фармацевтики и вакцин: адъюванты, антигены, аутогенные вакцины, аквакультура, корма/премиксы, антибактериальные и паразитарные препараты, стерильность и выпуск серии.
Открыть