viewer-vigilance-kit

Release support for a medical imaging viewer: public vigilance monitoring (openFDA MAUDE, openFDA recalls, BfArM field safety notices) plus a tested minimal DICOM viewer core with a release-candidate gate. Code, tests and workflows: https://github.com/pavanyadava007/viewer-vigilance-kit

Not a medical device, not validated for clinical use. Every number on this page is produced by a script in the repository and saved to results/*.json. Labels used for evaluation are agency weak labels, not hand labels.

Viewer core: rendered examples

CT (pydicom CT_small): zoom 2.5, pan, W 400 L 40, measurement in mm
CT (pydicom CT_small): zoom 2.5, pan, W 400 L 40, measurement in mm
Synthetic axial phantom, slice 3: 52 rows x 0.8 mm = 41.6 mm
Synthetic axial phantom, slice 3: 52 rows x 0.8 mm = 41.6 mm
Synthetic sagittal phantom: labels H/F/A/P from ImageOrientationPatient
Synthetic sagittal phantom: labels H/F/A/P from ImageOrientationPatient
MR (pydicom MR_small): window from WindowCenter/WindowWidth tags
MR (pydicom MR_small): window from WindowCenter/WindowWidth tags
CT with contrast x2 and brightness +50 from the default window
CT with contrast x2 and brightness +50 from the default window
MONOCHROME1 ramp: displayed inverted
MONOCHROME1 ramp: displayed inverted

Test suite strength: planted viewer defects

15 realistic viewer bugs, switched on one at a time; a tier "catches" a defect if any of its tests fail. The same author wrote defects and tests (see caveat in the README).

TierTests runDefects caughtCatch rate
Smoke only60/150%
Smoke + unit4215/15100%
Smoke + unit + golden5915/15100%
Golden only (extra view)1715/15100%
Planted defectWhat it doesFailing tests: smoke / unit tier / full / golden only
ignore_rescale_interceptRescale Intercept ignored (CT values off by +1024 HU)0 / 5 / 10 / 5
rescale_in_storage_dtyperescale done in uint16 storage dtype, negative HU wrap around0 / 2 / 4 / 2
swap_pixel_spacingrow and column PixelSpacing swapped in measurements0 / 2 / 3 / 1
measurement_ignores_spacingdistance reported in pixels instead of mm0 / 2 / 4 / 2
flip_lr_letterpatient x axis mapped to R instead of L in orientation labels0 / 4 / 10 / 6
top_bottom_labels_swappedtop and bottom orientation labels swapped0 / 2 / 9 / 7
sort_by_filenameseries sorted by file name instead of slice position0 / 4 / 7 / 3
sort_by_z_onlyseries sorted by z coordinate instead of position along the normal0 / 1 / 2 / 1
window_off_by_onewindow uses width instead of width-1 and centre instead of centre-0.50 / 3 / 8 / 5
multivalue_window_ignoredmulti-valued WindowCenter/Width ignored, falls back to min/max0 / 2 / 6 / 4
ignore_monochrome1MONOCHROME1 images not inverted0 / 1 / 2 / 1
contrast_invertedcontrast factor widens the window instead of narrowing it0 / 1 / 3 / 2
zoom_about_originzoom anchored at the top-left corner instead of the image centre0 / 2 / 4 / 2
pan_sign_flippedpan moves the image opposite to the drag direction0 / 1 / 3 / 2
vertical_flip_renderrendered rows written bottom-up0 / 3 / 9 / 6

72 collected test items (51 test functions): 6 smoke, 36 unit, 17 golden, 13 vigilance-monitor tests. 16 requirements, all traced: True.

Vigilance monitor: sources

FDA product codes (verified via openFDA classification)

CodeOfficial name (openFDA classification)RegulationClassVerified
LLZSystem, Image Processing, Radiological21 CFR 892.20502yes
LMDSystem, Digital Image Communications, Radiological21 CFR 892.20201yes
LMBDevice, Digital Image Storage, Radiological21 CFR 892.20101yes
PGYDisplay, Diagnostic Radiology21 CFR 892.20502yes
QIHAutomated Radiological Image Processing Software21 CFR 892.20502yes

Evaluation corpus

Corpus fetched on 2026-10-05.

SourceQuery windowItemsItem dates
FDA_MAUDEdate_received 2025-10-05 to 2026-10-054832025-10-06 to 2026-08-31
FDA_RECALLevent_date_initiated 2024-10-05 to 2026-10-05532024-10-10 to 2026-07-31
BFARM_FSNlist pages 1-10 (50 per page)5002026-02-05 to 2026-10-02
Product codeMAUDE reportsRecall records
LLZ42652
LMD510
LMB30
PGY00
QIH31

Duplicates removed: 0.

Tagger vs agency weak labels

BfArM: rule flag on the notice title vs the agency's Produktgruppe. MAUDE: category rules on the narrative vs FDA product_problems terms. 50/50 split by id hash; rules tuned on dev only.

BfArM notices 2026-02-05 to 2026-10-02; text = notice title (product + manufacturer).

Weak label (agency Produktgruppe)SplitnPositivesPrecisionRecallF1
A: Radiologische Technikdev249150.2500.4000.308
A: Radiologische Techniktest251180.3530.3330.343
A: Radiologische Technikall500330.2930.3640.324
B: A + Med. Datenverarbeitung (Software) + Ultraschalltechnikdev249350.5420.3710.441
B: A + Med. Datenverarbeitung (Software) + Ultraschalltechniktest251400.6470.2750.386
B: A + Med. Datenverarbeitung (Software) + Ultraschalltechnikall500750.5850.3200.414

MAUDE reports 2025-10-06 to 2026-08-31: 483 reports, 424 with narrative text. Tagger reads the narrative only; label = FDA product_problems terms mapped to categories (vigil/weak_labels.yaml).

CategoryTest positivesTest precisionTest recallDev positivesDev precisionDev recall
image_display460.3700.217490.4620.245
wrong_patient30.2500.33310.0000.000
measurement30.2501.00050.2000.400
orientation_laterality10.0000.00000.000n/a
data_loss50.0560.20010.0000.000
performance_freeze110.0950.18270.1180.286
interoperability580.5890.569480.5580.500
cybersecurity210.9410.762270.9230.889
micro, test1480.4230.446
micro, dev1380.4640.464

Weekly digest sample

First run on 2026-10-05 (empty state, so every item in the window is new).

SourceItemsItem dates
FDA_MAUDE1082026-07-07 to 2026-08-31
FDA_RECALL112026-06-19 to 2026-07-31
BFARM_FSN202026-09-22 to 2026-10-02

Items flagged viewer/imaging relevant: 125.

Digest 2026-10-05

Period: MAUDE date_received 2026-07-07 to 2026-10-05; recalls initiated 2026-06-07 to 2026-10-05; BfArM RSS (latest 20 notices). Only items not reported in an earlier run (state: first run).

Counts per source

SourceNew itemsViewer/imaging relevant
FDA_MAUDE108108
FDA_RECALL1111
BFARM_FSN206

Relevant items per category

CategoryFDA_MAUDEFDA_RECALLBFARM_FSN
cybersecurity300
data_loss500
image_display490
interoperability900
measurement130
performance_freeze100
untagged8806
wrong_patient180

Relevant items (recalls, then FSNs, then MAUDE; max 40)

DateSourceManufacturerProductCode / groupTagsLink
2026-07-31FDA_RECALLGE HealthcareCentricity Enterprise Archive V2, V3, and V4, software produLLZimage_display, wrong_patientopen
2026-07-31FDA_RECALLGE HealthcareEnterprise Archive V8, software product for receiving, archiLLZimage_display, wrong_patientopen
2026-07-31FDA_RECALLGE HealthcareCentricity PACS V2, V3, V4, V6, V7, software product is inteLLZimage_display, wrong_patientopen
2026-07-31FDA_RECALLGE HealthcareCentricity PACS Server V7, intended for managing digital medLLZimage_display, wrong_patientopen
2026-07-31FDA_RECALLGE HealthcareWorkflow Core Services V8, intended to provide set of servicLLZimage_display, wrong_patientopen
2026-07-31FDA_RECALLGE HealthcareCore Services Hub V8, a set of backend services including CrLLZimage_display, wrong_patientopen
2026-07-22FDA_RECALLMerge Healthcare, Inc.Merge PACS and Merge OrthoPACS, medical imaging diagnostic wLLZimage_display, measurementopen
2026-07-22FDA_RECALLFUJIFILM Healthcare Americas CorporationFUJIFILM Synapse PACS software v7.4.310; radiological imageLLZmeasurementopen
2026-06-30FDA_RECALLMerge Healthcare, Inc.Merge PACS, medical imaging diagnostic workstationLLZimage_display, wrong_patientopen
2026-06-30FDA_RECALLMerge Healthcare, Inc.Merge OrthoPACS, medical imaging diagnostic workstationLLZimage_display, wrong_patientopen
2026-06-19FDA_RECALLBoston Scientific CorporationBoston Scientific TheraSphere 360 Y-90 Management Platform,LLZmeasurementopen
2026-10-01BFARM_FSNPhilips Medical Systems Nederland B.V.Spectral CT; Spectral CT China; Spectral CT 7600; Spectral CRadiologische Technik - Computertomografen-open
2026-10-01BFARM_FSNMedtronic IncCareLink SmartSync Platform (iOS) (Common App, Host, DeviceAktive implantierbare medizinische Geräte - D-open
2026-09-28BFARM_FSNSiemens Healthcare GmbH Advanced TherapiArtis icono and Artis phenoRadiologische Technik - Röntgendiagnostik f.-open
2026-09-23BFARM_FSNMirion Technologies (Capintec), Inc.Captus 4000e Thyroid Uptake SystemRadiologische Technik - Geräte für die nuklea-open

Generated by viewer-vigilance-kit. Rule-based triage aid only; every item needs manual review against the source record.

Source: https://github.com/pavanyadava007/viewer-vigilance-kit (MIT). Author: Pavan Yadava Annappa.