AutomatedExtractionRunChecker

Automated Extraction Run

Liquid Biopsy жидкостная биопсия cfDNA ctDNA CTC exosomes NGS qPCR
Открыть подборку

Описание утилиты: Automated Extraction Run

Automated Extraction Run Checker — Контроль автоматической экстракции

ℹ️  Утилита выполняет комплексную проверку качества процессов автоматической экстракции нуклеиновых кислот согласно ISO 15189 и рекомендациям производителей оборудования:
     • Аппаратный контроль: Выявление ошибок роботизированных манипуляторов и проблем с магнитными стержнями.
     • Объем элюата: Проверка соответствия финального объема заданному протоколу.
     • Эффективность процесса: Анализ значений Ct внутренних контролей экстракции (MS2, Phocine Herpesvirus и др.).
     • Выход продукта: Оценка концентрации выделенной ДНК/РНК.

⚠️  ВАЖНО: 
     • Автоматическая экстракция минимизирует человеческий фактор, но требует строгого мониторинга расходных материалов.
     • Ингибиторы ПЦР, попавшие в элюат, могут привести к ложноотрицательным результатам downstream-тестов.

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

Формат input.csv:
RunID,PositionID,SampleType,KitName,ElutionVolume_uL,MinElutionVol_uL,RobotError,Control_Ct_Value,Max_Control_Ct,Yield_ng_uL

Пример:
  RUN-001,A1,Patient,Kit X,50,45,false,28.5,35,15.0

📍 Область применения (Usage Where):
     • Молекулярная диагностика: Контроль подготовки проб перед ПЦР.
     • Геномные исследования: Подготовка библиотек для NGS.
     • Лабораторный менеджмент: Мониторинг производительности и брака оборудования.
     • Валидация методов: Сравнение эффективности разных наборов для экстракции.

— ЗАЧЕМ ЭТО НУЖНО?
Качество экстракции напрямую определяет чувствительность всего диагностического теста.
Потеря материала или наличие ингибиторов на этом этапе невозможно исправить позже.
Автоматизированный чекер позволяет быстро отбраковать неудачные запуски до начала дорогостоящей амплификации.

⚠️  КРИТИЧЕСКИ ВАЖНО:
• Robot Error: Любая ошибка манипулятора требует повторного запуска образца.
• Control Ct: Значение выше порогового указывает на неэффективный лизис или ингибирование.
• Elution Volume: Недостаточный объем приводит к завышенной концентрации, но потере общего количества молекул.
• Cross-contamination: Следите за позициями негативных контролей.

Ключевые особенности утилиты:
• Построчный анализ логов экстрактора
• Интеграция параметров качества (Ct, Yield, Volume)
• Автоматическая маркировка неудачных позиций
• Генерация отчетов для журналов оборудования
• Поддержка различных типов китов и протоколов

Критические параметры:
• Elution Volume: ≥ Min Limit
• Control Ct: ≤ Max Limit
• Robot Status: No Error
• Yield: ≥ Min Limit

💡 Советы по использованию:
1. Калибровка пипеток: Регулярно проверяйте точность дозирования жидкостей роботом.
2. Расходники: Используйте только сертифицированные наконечники с фильтрами.
3. Контроли: Включайте как минимум один негативный и один позитивный контроль экстракции в каждый запуск.
4. Обслуживание: Следуйте графику чистки магнитных стержней и UV-облучения.
5. Документирование: Сохраняйте отчеты как часть первичных данных лаборатории.

⚠️ Примечание: Данная утилита является инструментом технического контроля процесса экстракции. Она не заменяет последующий количественный анализ (qPCR/ddPCR), но гарантирует пригодность образца для него.

input.csv

RunID,PositionID,SampleType,KitName,ElutionVolume_uL,MinElutionVol_uL,RobotError,Control_Ct_Value,Max_Control_Ct,Yield_ng_uL
RUN-2026-EXT-001,A1,Patient,MagMAX Viral Kit,50,45,false,28.5,35,15.0
RUN-2026-EXT-001,A2,NegCtrl,MagMAX Viral Kit,50,45,false,0,35,0.1
RUN-2026-EXT-001,B1,Patient,MagMAX Viral Kit,48,45,false,29.1,35,12.5
RUN-2026-EXT-002,A1,Patient,QIAamp DNA Mini,40,45,true,0,35,0

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

Документ описывает контролируемый интерфейс и поведение утилиты AutomatedExtractionRunChecker для сценария Automated Extraction Run Checker.

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

Ниже приведены ключевые фрагменты исходного описания. Перед продуктивным применением пределы должны быть сверены с утверждённой спецификацией, регистрационным досье и локальными SOP.
  • ℹ️ Утилита выполняет комплексную проверку качества процессов автоматической экстракции нуклеиновых кислот согласно ISO 15189 и рекомендациям производителей оборудования:
  • ⚠️ ВАЖНО:
  • Качество экстракции напрямую определяет чувствительность всего диагностического теста.
  • ⚠️ КРИТИЧЕСКИ ВАЖНО:
  • Критические параметры:
  • • Elution Volume: ≥ Min Limit
  • • Control Ct: ≤ Max Limit
  • • Yield: ≥ Min Limit

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

IDТребованиеКритичностьКритерий приемки
URS-001Утилита должна принимать файл input.csv для Automated Extraction Run Checker с заголовками, определёнными в контракте данных.HighФайл обрабатывается без ручного изменения заголовков.
URS-002Утилита должна выполнять детерминированную оценку QC/ОКК без машинного обучения и без вероятностного принятия решения о соответствии.HighПри одинаковых входных данных, версии правил и конфигурации результат полностью воспроизводим.
URS-003Утилита должна валидировать обязательные поля, типы данных, диапазоны, единицы измерения и предметную правдоподобность значений.HighОшибки схемы, преобразования и диапазона явно отражаются в результате.
URS-004Утилита должна применять предметные пределы и правила из описания, утверждённой спецификации, регистрационного досье и локальных SOP.HighКаждая проверка имеет результат PASS/WARNING/FAIL и понятное сообщение.
URS-005Утилита должна формировать output.json с машинно-читаемыми результатами, исходными значениями, предупреждениями, отказами и критическими находками.HighJSON пригоден для LIMS/ELN/MES-интеграции и QA/QC review.
URS-006Утилита должна сохранять трассируемость между серией/образцом, входным файлом, применёнными правилами и итоговым статусом.HighВыход содержит идентификаторы, список параметров и audit metadata.
URS-007Документация должна поддерживать подготовку IQ/OQ/PQ, CSV/CSA и обсуждение с инспекторами или внутренним QA.MediumURS, FS, контракт input/output и тестовые сценарии поставляются вместе с утилитой.
URS-008Утилита должна использоваться как decision-support инструмент QC, а не как замена утверждённым спецификациям и выпускному решению Qualified Person/QA.MediumВ документации указан контроль change control и необходимость сверки пределов.

Контракт input.csv

#ПолеТипПримерНазначение
1RunIDstring / controlled vocabularyRUN-2026-EXT-001Контролируемый входной параметр для детерминированных QC-правил.
2PositionIDstring / controlled vocabularyA1Контролируемый входной параметр для детерминированных QC-правил.
3SampleTypestring / controlled vocabularyPatientИдентификатор образца или лабораторной пробы.
4KitNamestring / controlled vocabularyMagMAX Viral KitКонтролируемый входной параметр для детерминированных QC-правил.
5ElutionVolume_uLdecimal50Объём/доза; используется для расчёта нагрузки, предела или выпуска.
6MinElutionVol_uLdecimal45Контролируемый входной параметр для детерминированных QC-правил.
7RobotErrorstring / controlled vocabularyfalseКонтролируемый входной параметр для детерминированных QC-правил.
8Control_Ct_Valuedecimal28.5Контрольная точка/контрольный образец для валидности серии анализа.
9Max_Control_Ctdecimal35Контрольная точка/контрольный образец для валидности серии анализа.
10Yield_ng_uLdecimal15.0Контролируемый входной параметр для детерминированных QC-правил.
RunID,PositionID,SampleType,KitName,ElutionVolume_uL,MinElutionVol_uL,RobotError,Control_Ct_Value,Max_Control_Ct,Yield_ng_uL
RUN-2026-EXT-001,A1,Patient,MagMAX Viral Kit,50,45,false,28.5,35,15.0
RUN-2026-EXT-001,A2,NegCtrl,MagMAX Viral Kit,50,45,false,0,35,0.1
RUN-2026-EXT-001,B1,Patient,MagMAX Viral Kit,48,45,false,29.1,35,12.5

Правила валидации входных данных

IDПолеПравилоКритичность
VR-001RunIDПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.High
VR-002PositionIDПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.High
VR-003SampleTypeПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.High
VR-004KitNameПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-005ElutionVolume_uLПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-006MinElutionVol_uLПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-007RobotErrorПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-008Control_Ct_ValueПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-009Max_Control_CtПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-010Yield_ng_uLПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium

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

IDФункцияРеализация
FS-001CLI executionПоддержать режимы запуска: demo mode без аргументов и production mode input.csv output.json.
FS-002CSV importПрочитать input.csv в UTF-8/CSV-совместимом формате, проверить наличие заголовка и ожидаемых колонок.
FS-003Schema validationПроверить обязательные поля, количество колонок, неизвестные ключевые поля и пустые обязательные значения.
FS-004Type conversionПреобразовать числовые, флаговые и текстовые значения; некорректный формат фиксировать как ошибку строки.
FS-005Domain rule engineПрименить правила для Automated Extraction Run Checker, включая критические пределы из описания и утверждённой спецификации.
FS-006Status aggregationСформировать итоговый статус: FAIL при критическом отказе, WARNING при некритическом отклонении, PASS при соответствии.
FS-007JSON exportЗаписать output.json с детализацией проверок, исходными значениями, предупреждениями, отказами и critical findings.
FS-008Audit supportСохранять структуру результата пригодной для review, расследования отклонений и воспроизведения расчёта.
FS-009Integration contractПоддержать сценарий LIMS/ELN/MES → input.csv → utility → output.json → portal/admin review.
FS-010Error handlingВозвращать явные сообщения для отсутствующего файла, пустого CSV, неверной схемы, ошибки записи output.json и некорректного формата.

Пример output.json

{
  "utilityId": "automatedextractionrunchecker",
  "utilityFolder": "AutomatedExtractionRunChecker",
  "package": "LiquidBiopsy",
  "overallStatus": "PASS|WARNING|FAIL",
  "sourceFile": "input.csv",
  "processedAtUtc": "2026-06-10T00:00:00Z",
  "checks": [
    {
      "parameter": "RunID",
      "value": "RUN-2026-EXT-001",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-001"
    },
    {
      "parameter": "PositionID",
      "value": "A1",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-002"
    },
    {
      "parameter": "SampleType",
      "value": "Patient",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-003"
    },
    {
      "parameter": "KitName",
      "value": "MagMAX Viral Kit",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-004"
    },
    {
      "parameter": "ElutionVolume_uL",
      "value": "50",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-005"
    },
    {
      "parameter": "MinElutionVol_uL",
      "value": "45",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-006"
    },
    {
      "parameter": "RobotError",
      "value": "false",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-007"
    },
    {
      "parameter": "Control_Ct_Value",
      "value": "28.5",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-008"
    },
    {
      "parameter": "Max_Control_Ct",
      "value": "35",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-009"
    },
    {
      "parameter": "Yield_ng_uL",
      "value": "15.0",
      "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": "AutomatedExtractionRunChecker.documentation.html"
  }
}

Матрица трассируемости

URSFSТестПодтверждение
URS-001FS-001, FS-002OQ-001Проверить запуск и импорт валидного input.csv.
URS-002FS-005, FS-006OQ-004Повторить один и тот же набор данных и сравнить output.json.
URS-003FS-003, FS-004, FS-010OQ-002, OQ-003Проверить отсутствующие колонки и неверные типы.
URS-004FS-005, FS-006OQ-004, PQ-001Проверить критические отклонения по реальным/граничным данным.
URS-005FS-007, FS-009OQ-005Проверить JSON schema и пригодность для downstream-систем.
URS-006FS-008OQ-006Проверить наличие идентификаторов и audit metadata.
URS-007FS-008, FS-010IQ-001, OQ-007Проверить комплектность документации и control evidence.
URS-008FS-005, FS-008PQ-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 и преданалитического контроля жидкостной биопсии: cfDNA/ctDNA, CTC, EV/exosomes, метилирование, NGS/qPCR/ddPCR, контроль образцов, контаминации, чувствительности и отчётности.

Открыть