SterilityTestReviewUtility

Sterility Test Review

Vet veterinary veterinary vaccines animal health adjuvants aquaculture batch release CSV→JSON
Open selection

Utility description: Sterility Test Review

Sterility Test Review Utility — Sterility Test Review

ℹ️  Utility automates the verification of sterility test results according to Ph. Eur. 2.6.1 and USP <71>:
     • Sample Results: Check for absence of growth in TSB (aerobes/fungi) and FTG (anaerobes) media.
     • System Validity: Positive controls must show growth, negative controls must show no growth.
     • Incubation Time: Minimum 14 days.
     • Statuses: PASS (Sterile), FAIL (Growth detected), INVALID (Test error).

⚠️  CRITICAL: 
     • FAIL status requires immediate initiation of OOS (Out of Specification) investigation.
     • INVALID status means the result cannot be used for batch release, retesting is required.
     • Control errors (e.g., no growth in positive control) render the test invalid.

Usage:
  SterilityTestReviewUtility.exe                            → demo mode (console output)
  SterilityTestReviewUtility.exe input.csv output.json      → evaluate your data

Input format:
BatchNumber,ProductName,TSB_Growth,FTG_Growth,Incubation_Days,PosControl_TSB_Growth,PosControl_FTG_Growth,NegControl_TSB_Growth,NegControl_FTG_Growth,Investigation_Status

Example (0=No Growth, 1=Growth):
  ST-001,WFI,0,0,14,1,1,0,0,None

— WHY IS THIS NEEDED?
Sterility testing is a critical release test for all parenteral products.
It is probabilistic in nature, so strict adherence to test validity conditions is critically important.
Automation of review eliminates the risk of missing control errors or misinterpreting growth.

⚠️  CRITICAL:
• Aseptic Sampling: Most false-positive results are due to operator errors during sampling.
• TSB Medium: Supports growth of aerobic bacteria and fungi.
• FTG Medium (Fluid Thioglycollate Medium): Supports growth of anaerobic bacteria.
• Incubation: Performed at 20-25°C (TSB) and 30-35°C (FTG) or in universal conditions.

Key features:
• Automatic status determination (Pass/Fail/Invalid)
• Control validity check
• Incubation duration control
• Generation of reports for microbiology lab and LIMS LabWare
• Compliance with GMP and Pharmacopoeia requirements

Critical parameters:
• Sample TSB/FTG: 0 (No growth)
• Positive Control: 1 (Growth)
• Negative Control: 0 (No growth)
• Incubation Days: ≥ 14

💡 Usage tips:
1. Integration: Data should come from microbiological log or LIMS after completion of the 14-day cycle.
2. Investigation: For FAIL status, utility indicates need for investigation but does not perform it.
3. Retesting: If test is deemed INVALID, retesting is allowed only after establishing the cause of invalidity.
4. Documentation: Save JSON reports as evidence of Data Review.

⚠️ Note: Unlike chemical tests, here the result "No growth" is a positive test result, but it requires absolute confidence in system functionality (controls).

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 — User Requirements and Functional Specification

This document describes the controlled interface and behaviour of SterilityTestReviewUtility for Sterility Test Review Utility.

Domain limits and critical parameters

Key fragments from the source description are shown below. Before production use, limits must be verified against the approved specification, registration dossier and local SOPs.
  • ℹ️ Utility automates the verification of sterility test results according to Ph. Eur. 2.6.1 and USP <71>:
  • • System Validity: Positive controls must show growth, negative controls must show no growth.
  • ⚠️ CRITICAL:
  • Sterility testing is a critical release test for all parenteral products.
  • It is probabilistic in nature, so strict adherence to test validity conditions is critically important.
  • • Compliance with GMP and Pharmacopoeia requirements
  • Critical parameters:
  • • Incubation Days: ≥ 14

URS — User Requirements Specification

IDRequirementCriticalityAcceptance criterion
URS-001The utility shall accept an input.csv file for Sterility Test Review Utility with headers defined in the data contract.HighThe file is processed without manual header editing.
URS-002The utility shall perform deterministic QC evaluation without machine learning and without probabilistic conformance decisions.HighIdentical input data, rule version and configuration produce reproducible results.
URS-003The utility shall validate mandatory fields, data types, ranges, units and domain plausibility.HighSchema, conversion and range errors are explicitly reported.
URS-004The utility shall apply domain limits and rules from the description, approved specification, registration dossier and local SOPs.HighEach check has PASS/WARNING/FAIL and a clear message.
URS-005The utility shall generate output.json with machine-readable results, source values, warnings, failures and critical findings.HighJSON is suitable for LIMS/ELN/MES integration and QA/QC review.
URS-006The utility shall preserve traceability between batch/sample, input file, applied rules and final status.HighOutput contains identifiers, checked parameters and audit metadata.
URS-007The documentation shall support IQ/OQ/PQ, CSV/CSA and review by internal QA or inspectors.MediumURS, FS, input/output contract and test scenarios are supplied with the utility.
URS-008The utility shall be used as a QC decision-support tool and not as a substitute for approved specifications and QA/QP release decision.MediumDocumentation states change control and limit-verification expectations.

input.csv contract

#FieldTypeSamplePurpose
1BatchNumberstring / controlled vocabularyST-2026-WFI-001Batch or lot identifier used for traceability.
2ProductNamestring / controlled vocabularyWater for InjectionProduct or dosage-form name under evaluation.
3TSB_Growthflag / boolean0Controlled input parameter for deterministic QC rules.
4FTG_Growthflag / boolean0Controlled input parameter for deterministic QC rules.
5Incubation_Daysinteger / decimal14Time parameter for process, incubation, storage or analytical workflow.
6PosControl_TSB_Growthstring / controlled vocabulary1Control point/control sample for assay run validity.
7PosControl_FTG_Growthstring / controlled vocabulary1Control point/control sample for assay run validity.
8NegControl_TSB_Growthstring / controlled vocabulary0Control point/control sample for assay run validity.
9NegControl_FTG_Growthstring / controlled vocabulary0Control point/control sample for assay run validity.
10Investigation_Statusstring / controlled vocabularyNoneResult/status used in final classification.
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

Input validation rules

IDFieldRuleCriticality
VR-001BatchNumberThe field shall match an approved dictionary or accepted string representation.High
VR-002ProductNameThe field shall match an approved dictionary or accepted string representation.High
VR-003TSB_GrowthThe field shall match an approved dictionary or accepted string representation.High
VR-004FTG_GrowthThe field shall match an approved dictionary or accepted string representation.Medium
VR-005Incubation_DaysThe field shall match an approved dictionary or accepted string representation.Medium
VR-006PosControl_TSB_GrowthThe field shall match an approved dictionary or accepted string representation.Medium
VR-007PosControl_FTG_GrowthThe field shall match an approved dictionary or accepted string representation.Medium
VR-008NegControl_TSB_GrowthThe field shall match an approved dictionary or accepted string representation.Medium
VR-009NegControl_FTG_GrowthThe field shall match an approved dictionary or accepted string representation.Medium
VR-010Investigation_StatusThe field shall match an approved dictionary or accepted string representation.Medium

FS — Functional Specification

IDFunctionImplementation
FS-001CLI executionSupport execution modes: demo mode without arguments and production mode input.csv output.json.
FS-002CSV importRead input.csv in UTF-8/CSV-compatible format and validate header and expected columns.
FS-003Schema validationCheck mandatory fields, column count, unknown key fields and empty mandatory values.
FS-004Type conversionConvert numeric, flag and text values; invalid format is recorded as a row-level error.
FS-005Domain rule engineApply rules for Sterility Test Review Utility, including critical limits from the description and approved specification.
FS-006Status aggregationProduce final status: FAIL for critical failure, WARNING for non-critical deviation, PASS for conformance.
FS-007JSON exportWrite output.json with detailed checks, source values, warnings, failures and critical findings.
FS-008Audit supportKeep result structure suitable for review, deviation investigation and calculation reproduction.
FS-009Integration contractSupport the scenario LIMS/ELN/MES → input.csv → utility → output.json → portal/admin review.
FS-010Error handlingReturn explicit messages for missing file, empty CSV, invalid schema, output write failure and invalid format.

Example 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"
  }
}

Traceability matrix

URSFSTestEvidence
URS-001FS-001, FS-002OQ-001Verify execution and import of valid input.csv.
URS-002FS-005, FS-006OQ-004Repeat the same dataset and compare output.json.
URS-003FS-003, FS-004, FS-010OQ-002, OQ-003Verify missing columns and invalid types.
URS-004FS-005, FS-006OQ-004, PQ-001Verify critical deviations on real/boundary data.
URS-005FS-007, FS-009OQ-005Verify JSON schema and downstream-system suitability.
URS-006FS-008OQ-006Verify identifiers and audit metadata.
URS-007FS-008, FS-010IQ-001, OQ-007Verify documentation completeness and control evidence.
URS-008FS-005, FS-008PQ-002Verify review workflow and no replacement of QA decision.

IQ/OQ/PQ test scenarios

IDScenarioExpected result
IQ-001Verify executable, input.csv, documentation and checksum availability.Delivery set is complete; version is recorded.
OQ-001Valid sample row from input.csv.PASS or acceptable WARNING according to rules.
OQ-002Remove a mandatory CSV column.Schema error or FAIL with missing-column reference.
OQ-003Place a non-numeric value into a numeric field.Type-conversion error with row/field reference.
OQ-004Set a critical parameter outside the limit.FAIL and critical finding.
OQ-005Verify output.json structure.All mandatory sections are present and JSON is valid.
OQ-006Verify batch/sample traceability.Input and result identifiers match.
PQ-001Verify 3–5 real user batches/samples.Result is confirmed by QC/QA review.
PQ-002Verify deviation workflow and manual QA decision.Utility supports review but does not replace approved decision.

QA/QC and change control

  • Do not rename columns without updating validator, documentation and test set.
  • Retain input.csv, output.json, executable version and checksum.
  • Before production use, perform IQ/OQ/PQ or equivalent CSV/CSA verification.
  • Critical limits shall be verified against the approved specification, registration dossier and local SOPs.
  • The utility provides structured QC decision support; final release decision remains with QA/QP and approved procedures.

Included in packages

Infectious Diseases QC Suite

QC utility package for infectious diseases: antibacterial, antiviral, antifungal and antiparasitic products, microbiology, sterility, endotoxins, viral safety and vaccine release checks.

Open

Vet — Veterinary QC Utilities

Vet is designed for veterinary pharmaceuticals and vaccines: adjuvants, antigens, autogenous vaccines, aquaculture, feed/premixes, antimicrobial and antiparasitic products, sterility and batch release.

Open