Red flags - RubinLab/epad-ws GitHub Wiki

  • EPADUploadZipWatcher doesn't seem to be working. But it is in PipelineFactory
  • UserProjectService checks if it is a segmentation by checking if the modality is SEG whereas QueueAndWatcherManager uses PixelMedUtils's isDicomSegmentationObject which checks the SOPClassUID tag to see if it is SegmentationStorage. This will cause different behavior if we support SurfaceSegmentation objects.
  • No one sets dicomSeriesProcessingState of SeriesPipelineState to COMPLETE or ERROR, it is set to NEW at first and IN_PIPELINE in process and then removed from pipeline.
  • DicomImageDescription has DicomSeriesProcessingState. No one sets or use it, just constructor setting to new. The class is image description, holding series state doesn't make sense anyway.
  • getStudyProcessingStatus in DefaultEpadOperations will return the status of the last series not cumulative!
  • ImageCheckHandler puts the pipeline unprocessed dicoms with patient name REPROCESS when it calls addDICOMFileToPNGGeneratorPipeline in verifyImageGeneration and FixSeriesImages
  • getAttributesFromDICOMFiles in TiffMasksDSOConverter triggers fixing instance number when the same instance number is present in multiple images in a series. There is a note trigger logic in default dcm4chee operations is last-first+1!=size

?? If UseEPADUsersProjects is false, XnatSeriesWatcher doesn't add study to project.