diff --git a/compress_pipeline.cwl b/compress_pipeline.cwl
index cd5d8c0c86beb6844bc72e53a391554b4423d245..8d9de30a7779bf831b14890c1f23bdd5204f08a9 100644
--- a/compress_pipeline.cwl
+++ b/compress_pipeline.cwl
@@ -1,155 +1,169 @@
-class: Workflow
+#!/usr/bin/env cwl-runner
+
 cwlVersion: v1.2
+class: Workflow
 label: compress_pipeline
 
+requirements:
+- class: StepInputExpressionRequirement
+- class: InlineJavascriptRequirement
+- class: MultipleInputFeatureRequirement
+
 inputs:
-  - id: flag_autocorrelation
-    type: boolean?
+- id: flag_autocorrelation
+  type: boolean?
+- id: is_long_baseline
+  type: boolean?
+- id: msin
+  type: Directory
+
+outputs:
+- id: inspect
+  type: File
+  outputSource:
+  - inspect_step/inspect_file
+- id: logfile
+  type: File[]
+  outputSource:
+  - dppp/logfile
+- id: compressed
+  type: File
+  outputSource:
+  - compress/compressed
+- id: ingest
+  type: Any
+  outputSource:
+  - format_ingest/ingest
+- id: applied_fixes
+  type: string[]
+  outputSource:
+  - identify_issues/issue_list
+- id: unfixable_issues
+  type: string[]
+  outputSource:
+  - identify_issues/unfixable_issues
+- id: is_raw
+  type: boolean
+
+steps:
+- id: identify_issues
+  in:
+  - id: msin
+    source: msin
   - id: is_long_baseline
-    type: boolean?
+    source: is_long_baseline
+  run: steps/identify_issues.cwl
+  out:
+  - issue_list
+  - is_raw
+  - unfixable_issues
+  - msout
+- id: fix_ai_2013
+  in:
   - id: msin
-    type: Directory
-outputs:
-  - id: inspect
-    outputSource:
-      - inspect_step/inspect_file
-    type: 'File'
+    source: identify_issues/msout
+  - id: apply
+    valueFrom: $(self.includes("FIX_ANTENNA_TABLE"))
+    source: identify_issues/issue_list
+  run: steps/fix_antenna_information_2013.cwl
+  out:
+  - id: msout
+- id: fix_weight_issue
+  in:
+  - id: msin
+    source:
+    - fix_ai_2013/msout
+  - id: apply
+    valueFrom: $(self.includes("FIX_WEIGHT_SPECTRUM"))
+    source: identify_issues/issue_list
+  run: steps/fix_weightissue_flagging.cwl
+  out:
+  - id: msout
+- id: fix_ai_2015
+  in:
+  - id: msin
+    source:
+    - fix_weight_issue/msout
+  - id: apply
+    valueFrom: $(self.includes("FIX_BROKEN_TILES"))
+    source: identify_issues/issue_list
+  run: steps/fix_antenna_information_2015.cwl
+  out:
+  - id: msout
+- id: fix_baselines
+  in:
+  - id: msin
+    source:
+    - fix_ai_2015/msout
+  - id: apply
+    valueFrom: $(self.includes("FIX_STATION_ADDER"))
+    source: identify_issues/issue_list
+  run: steps/fix_long_baselines.cwl
+  out:
+  - id: msout
+- id: extract_sip_meta
+  in:
+  - id: msin
+    source: dppp/msout
+  - id: compressed_file
+    source: compress/compressed
+  run: steps/extract_sip_meta.cwl
+  out:
+  - id: ingest
+- id: dppp
+  in:
+  - id: parset
+    source: define_parset/output
+  - id: msin
+    source:
+    - fix_baselines/msout
+  - id: msout_name
+    valueFrom: $("COMPRESSED_" + self.basename)
+    source: fix_baselines/msout
+  - id: writefullresflag
+    default: true
+  - id: storagemanager
+    default: Dysco
+  - id: databitrate
+    default: 10
+  run: steps/DPPP.cwl
+  out:
+  - id: msout
   - id: logfile
-    outputSource:
-      - dppp/logfile
-    type: File[]
-  - id: compressed
-    outputSource:
-      - compress/compressed
-    type: File
+- id: format_ingest
+  in:
+  - id: metadata
+    source: extract_sip_meta/ingest
+  - id: output_name
+    default: compressed
+  - id: file_name
+    valueFrom: $(self.basename)
+    source: compress/compressed
+  run: steps/format_ingest.cwl
+  out:
   - id: ingest
-    outputSource:
-      - format_ingest/ingest
-    type: Any
-  - id: applied_fixes
-    type: string[]
-    outputSource:
-      - identify_issues/issue_list
-    
-steps:
-  - id: identify_issues
-    run: steps/identify_issues.cwl
-    in:
-      - id: msin
-        source: msin
-      - id: is_long_baseline
-        source: is_long_baseline
-    out:
-      - issue_list
-      - msout
-  - id: fix_ai_2013
-    run: steps/fix_antenna_information_2013.cwl
-    in:
-      - id: msin
-        source: identify_issues/msout
-      - id: apply
-        source: identify_issues/issue_list
-        valueFrom: $(self.includes("FIX_ANTENNA_TABLE"))
-    out:
-      - id: msout
-  - id: fix_weight_issue
-    run: steps/fix_weightissue_flagging.cwl
-    in:
-      - id: msin
-        source:
-          - fix_ai_2013/msout
-      - id: apply
-        source: identify_issues/issue_list
-        valueFrom: $(self.includes("FIX_WEIGHT_SPECTRUM"))
-    out:
-      - id: msout
-  - id: fix_ai_2015
-    run: steps/fix_antenna_information_2015.cwl
-    in:
-      - id: msin
-        source:
-          - fix_weight_issue/msout
-      - id: apply
-        source: identify_issues/issue_list
-        valueFrom: $(self.includes("FIX_BROKEN_TILES"))
-    out:
-      - id: msout
-  - id: fix_baselines
-    run: steps/fix_long_baselines.cwl
-    in:
-      - id: msin
-        source:
-          - fix_ai_2015/msout
-      - id: apply
-        source: identify_issues/issue_list
-        valueFrom: $(self.includes("FIX_STATION_ADDER"))
-    out:
-      - id: msout
-  - id: extract_sip_meta
-    in:
-      - id: msin
-        source: dppp/msout
-      - id: compressed_file
-        source: compress/compressed
-    out:
-      - id: ingest
-    run: steps/extract_sip_meta.cwl
-  - id: dppp
-    in:
-      - id: parset
-        source: define_parset/output
-      - id: msin
-        source:
-          - fix_baselines/msout
-      - id: msout_name
-        source: fix_baselines/msout
-        valueFrom: '$("COMPRESSED_" + self.basename)'
-      - id: writefullresflag
-        default: true
-      - id: storagemanager
-        default: Dysco
-      - id: databitrate
-        default: 10
-    out:
-      - id: msout
-      - id: logfile
-    run: steps/DPPP.cwl
-  - id: format_ingest
-    in:
-      - id: metadata
-        source: extract_sip_meta/ingest
-      - id: output_name
-        default: compressed
-      - id: file_name
-        source: compress/compressed
-        valueFrom: $(self.basename)
-    out:
-      - id: ingest
-    run: steps/format_ingest.cwl
-  - id: define_parset
-    in:
-      - id: flag_autocorrelation
-        source: flag_autocorrelation
-    out:
-      - id: output
-    run: steps/define_parset.cwl
-    label: define_parset
-  - id: compress
-    in:
-      - id: directory
-        source: dppp/msout
-    out:
-      - id: compressed
-    run: steps/compress.cwl
-    label: compress
-  - id: inspect_step
-    in: 
-      - id: msin
-        source: dppp/msout
-    out:
-      - inspect_file
-    run: steps/create_inspect_dataset.cwl
-requirements:
-  - class: StepInputExpressionRequirement
-  - class: InlineJavascriptRequirement
-  - class: MultipleInputFeatureRequirement
+- id: define_parset
+  label: define_parset
+  in:
+  - id: flag_autocorrelation
+    source: flag_autocorrelation
+  - id: is_raw
+    source: identify_issues/is_raw
+  run: steps/define_parset.cwl
+  out:
+  - id: output
+- id: compress
+  label: compress
+  in:
+  - id: directory
+    source: dppp/msout
+  run: steps/compress.cwl
+  out:
+  - id: compressed
+- id: inspect_step
+  in:
+  - id: msin
+    source: dppp/msout
+  run: steps/create_inspect_dataset.cwl
+  out:
+  - inspect_file
diff --git a/download_and_compress_pipeline.cwl b/download_and_compress_pipeline.cwl
index fb549c5ddf3cdee7bc9ee3f824fc6c1c01bd40bb..841bc0b56f7a83b3cf2988937c3728c4b7f98c65 100644
--- a/download_and_compress_pipeline.cwl
+++ b/download_and_compress_pipeline.cwl
@@ -1,94 +1,103 @@
-class: Workflow
+#!/usr/bin/env cwl-runner
+
 cwlVersion: v1.2
+class: Workflow
 label: download_and_compress_pipeline
+
+requirements:
+- class: ScatterFeatureRequirement
+- class: SubworkflowFeatureRequirement
+- class: StepInputExpressionRequirement
+- class: InlineJavascriptRequirement
+
 inputs:
+- id: flag_autocorrelation
+  type: boolean?
+- id: surls
+  type: string[]
+- id: is_long_baseline
+  type: boolean
+
+outputs:
+- id: compressed
+  type: File[]
+  outputSource:
+  - compress/compressed
+- id: logfile
+  type:
+    type: array
+    items:
+      type: array
+      items: File
+  outputSource:
+  - compress/logfile
+- id: ingest
+  type: Any[]
+  outputSource:
+  - compress/ingest
+- id: quality
+  type: Any
+  outputSource:
+  - format_quality_metrics/formatted_quality
+- id: inspect
+  type: File
+  outputSource:
+  - combine/inspect_file
+
+steps:
+- id: fetch_data
+  label: fetch_data
+  in:
+  - id: surl_link
+    source: surls
+  scatter:
+  - surl_link
+  run: steps/fetch_data.cwl
+  out:
+  - id: uncompressed
+- id: compress
+  in:
+  - id: msin
+    source: fetch_data/uncompressed
   - id: flag_autocorrelation
-    type: boolean?
-  - id: surls
-    type: 'string[]'
+    source: flag_autocorrelation
   - id: is_long_baseline
-    type: boolean
-outputs:
+    source: is_long_baseline
+  scatter:
+  - msin
+  run: ./compress_pipeline.cwl
+  out:
   - id: compressed
-    outputSource:
-      - compress/compressed
-    type: File[]
+  - id: inspect
   - id: logfile
-    outputSource:
-      - compress/logfile
-    type:
-      type: array
-      items:
-        type: array
-        items: File
   - id: ingest
-    outputSource:
-      - compress/ingest
-    type: Any[]
-  - id: quality
-    type: Any
-    outputSource:
-      - format_quality_metrics/formatted_quality
+  - id: applied_fixes
+  - id: unfixable_issues
+- id: combine
+  in:
+  - id: inputs
+    source: compress/inspect
+  run: steps/combine_inspect_dataset.cwl
+  out:
+  - inspect_file
+- id: extract_metrics
+  in:
   - id: inspect
-    type: File
-    outputSource:
-      - combine/inspect_file
-steps:
-  - id: fetch_data
-    in:
-      - id: surl_link
-        source: surls
-    out:
-      - id: uncompressed
-    run: steps/fetch_data.cwl
-    label: fetch_data
-    scatter:
-      - surl_link
-  - id: compress
-    in:
-      - id: msin
-        source: fetch_data/uncompressed
-      - id: flag_autocorrelation
-        source: flag_autocorrelation
-      - id: is_long_baseline
-        source: is_long_baseline
-    scatter:
-      - msin
-    out:
-      - id: compressed
-      - id: inspect
-      - id: logfile
-      - id: ingest
-      - id: applied_fixes
-    run: ./compress_pipeline.cwl
-  - id: combine
-    in:
-    - id: inputs
-      source: compress/inspect
-    out:
-    - inspect_file
-    run: steps/combine_inspect_dataset.cwl
-  - id: extract_metrics
-    in: 
-    - id: inspect
-      source: combine/inspect_file
-    out:
-    - id: plots
-    - id: quality
-    run: steps/extract_quality_metrics.cwl
-  - id: format_quality_metrics
-    in: 
-    - id: plots
-      source: extract_metrics/plots
-    - id: quality
-      source: extract_metrics/quality
-    - id: applied_fixes
-      source: compress/applied_fixes
-    run: steps/format_metrics.cwl
-    out:
-    - formatted_quality
-requirements:
-  - class: ScatterFeatureRequirement
-  - class: SubworkflowFeatureRequirement
-  - class: StepInputExpressionRequirement
-  - class: InlineJavascriptRequirement
+    source: combine/inspect_file
+  run: steps/extract_quality_metrics.cwl
+  out:
+  - id: plots
+  - id: quality
+- id: format_quality_metrics
+  in:
+  - id: plots
+    source: extract_metrics/plots
+  - id: quality
+    source: extract_metrics/quality
+  - id: applied_fixes
+    source: compress/applied_fixes
+  - id: unfixable_issues
+    source: compress/unfixable_issues
+  run: steps/format_metrics.cwl
+  out:
+  - formatted_quality
diff --git a/steps/define_parset.cwl b/steps/define_parset.cwl
index 14c7a831fb579b9e08a9517e07198cdf08d20355..0e7e549cdd85b9f251b4005192bbac3ecf23b04f 100644
--- a/steps/define_parset.cwl
+++ b/steps/define_parset.cwl
@@ -1,47 +1,56 @@
-class: CommandLineTool
+#!/usr/bin/env cwl-runner
+
 cwlVersion: v1.1
-id: define_parset
-baseCommand:
-  - cp
+class: CommandLineTool
+label: define_parset
+
+requirements:
+- class: ShellCommandRequirement
+- class: InitialWorkDirRequirement
+  listing:
+  - entryname: input.parset
+    entry: |
+      steps=[flagedge,flagelev,$('is_raw'? ',aoflag,flagamp': '')$(inputs.demix? ',demix': '')]
+      #
+      flagedge.chan=[0..nchan/32-1,31*nchan/32..nchan-1]
+      flagedge.type=preflagger
+      #
+      aoflag.keepstatistics=false
+      aoflag.memoryperc=20
+      aoflag.type=aoflagger
+      aoflag.autocorr=$(inputs.flag_autocorrelation?'True':'False')
+      aoflag.strategy=/usr/local/share/aoflagger/strategies/lofar-default.lua
+      #
+      flagelev.type=preflagger
+      flagelev.elevation=0deg..20deg
+      #
+      flagamp.amplmin=1e-30
+      flagamp.type=preflagger
+- class: InlineJavascriptRequirement
+
 inputs:
-  - id: flag_autocorrelation
-    type: boolean?
-    default: true
+- id: flag_autocorrelation
+  type: boolean?
+  default: true
+- id: is_raw
+  type: boolean
+  default: true
+
 outputs:
-  - id: output
-    type: File
-    outputBinding:
-      glob: preproc.parset
-label: define_parset
+- id: output
+  type: File
+  outputBinding:
+    glob: preproc.parset
+
+baseCommand:
+- cp
 arguments:
-  - prefix: ''
-    shellQuote: false
-    position: 0
-    valueFrom: input.parset
-  - prefix: ''
-    shellQuote: false
-    position: 0
-    valueFrom: preproc.parset
-requirements:
-  - class: ShellCommandRequirement
-  - class: InitialWorkDirRequirement
-    listing:
-      - entryname: input.parset
-        entry: |+
-          steps=[flagedge,flagelev,aoflag,flagamp $(inputs.demix? ',demix': '')]
-          #
-          flagedge.chan=[0..nchan/32-1,31*nchan/32..nchan-1]
-          flagedge.type=preflagger
-          #
-          aoflag.keepstatistics=false
-          aoflag.memoryperc=20
-          aoflag.type=aoflagger
-          aoflag.autocorr=$(inputs.flag_autocorrelation?'True':'False')
-          aoflag.strategy=/usr/local/share/aoflagger/strategies/lofar-default.lua
-          #
-          flagelev.type=preflagger
-          flagelev.elevation=0deg..20deg
-          #
-          flagamp.amplmin=1e-30
-          flagamp.type=preflagger
-  - class: InlineJavascriptRequirement
+- prefix: ''
+  position: 0
+  valueFrom: input.parset
+  shellQuote: false
+- prefix: ''
+  position: 0
+  valueFrom: preproc.parset
+  shellQuote: false
+id: define_parset
diff --git a/steps/format_metrics.cwl b/steps/format_metrics.cwl
index c19d8b2114bae4e4963e992f8d4c7c03c4766dc2..9920403d50bd7442b8704cfc1fff45b1a7a6885e 100644
--- a/steps/format_metrics.cwl
+++ b/steps/format_metrics.cwl
@@ -17,6 +17,12 @@ inputs:
     items:
       type: array
       items: string
+- id: unfixable_issues
+  type:
+    type: array
+    items:
+      type: array
+      items: string
 
 outputs:
 - id: formatted_quality
@@ -29,6 +35,7 @@ expression: |
               'summary': inputs.quality
     };
     result['summary']['applied_fixes'] = inputs.applied_fixes[0]
+    result['summary']['unfixable_issues'] = inputs.unfixable_issues[0]
     return {'formatted_quality': result}
       
   } 
diff --git a/steps/identify_issues.cwl b/steps/identify_issues.cwl
index 1d834213f0fdcff3c578dcb6fbf59af4d5a7783b..04ab97001cc45ae11066d694495e511af26b77b2 100644
--- a/steps/identify_issues.cwl
+++ b/steps/identify_issues.cwl
@@ -1,44 +1,60 @@
-id: identify_issues
-label: Identify Known issues
-class: CommandLineTool
+#!/usr/bin/env cwl-runner
+
 cwlVersion: v1.2
-hints:
-  - class: DockerRequirement
-    dockerPull: git.astron.nl:5000/ldv/ldv-images/lofar-legacy:latest
-  - class: NetworkAccess
-    networkAccess: true
+class: CommandLineTool
+label: Identify Known issues
+
+requirements:
+- class: InlineJavascriptRequirement
+- class: InitialWorkDirRequirement
+  listing:
+  - entryname: $(inputs.msin.basename)
+    writable: true
+    entry: $(inputs.msin)
+
 inputs:
-  - id: msin
-    type: Directory
-    inputBinding:
-      position: 1
-  - id: is_long_baseline
-    type: boolean?
-    inputBinding:
-      position: 2
-      prefix: '--is_long_baseline'
-outputs:
-  - id: issue_list
-    type: string[]
-    outputBinding:
-      glob: output.txt
-      loadContents: true
-      outputEval: $(JSON.parse(self[0].contents))
+- id: msin
+  type: Directory
+  inputBinding:
+    position: 1
+- id: is_long_baseline
+  type: boolean?
+  inputBinding:
+    prefix: --is_long_baseline
+    position: 2
 
-  - id: msout
-    type: Directory
-    outputBinding:
-      glob: $(inputs.msin.basename)
+outputs:
+- id: issue_list
+  type: string[]
+  outputBinding:
+    glob: output.txt
+    outputEval: $(JSON.parse(self[0].contents)['fixable'])
+    loadContents: true
+- id: unfixable_issues
+  type: string[]
+  outputBinding:
+    glob: output.txt
+    outputEval: $(JSON.parse(self[0].contents)['unfixable_issues'])
+    loadContents: true
+- id: is_raw
+  type: boolean
+  outputBinding:
+    glob: output.txt
+    outputEval: $(JSON.parse(self[0].contents)['is_raw'])
+    loadContents: true
+- id: msout
+  type: Directory
+  outputBinding:
+    glob: $(inputs.msin.basename)
 stdout: output.txt
 
 baseCommand:
-  - python3
-  - /usr/local/bin/fix_common_ms_issues
+- python3
+- /usr/local/bin/fix_common_ms_issues
 
-requirements:
-  - class: InlineJavascriptRequirement
-  - class: InitialWorkDirRequirement
-    listing:
-      - entry: $(inputs.msin)
-        writable: true
-        entryname: $(inputs.msin.basename)
+hints:
+- class: DockerRequirement
+  dockerPull: git.astron.nl:5000/ldv/ldv-images/lofar-legacy:latest
+- class: NetworkAccess
+  networkAccess: true
+id: identify_issues