Demonstrated in https://github.com/galaxyproject/dockstore-galaxy-interface/pull/35 If I understand correctly, for *.ga workflows: * https://github.com/galaxyproject/gxformat2/blob/0.17.0/schema/common/common.yml#L61-L64 indicates that the tool_id can be null or a String * the linter doesn't check whether whether tool_id is a String (it checks for step_key) https://github.com/galaxyproject/gxformat2/blob/0.17.0/java/src/main/java/org/galaxyproject/gxformat2/NativeLinter.java#L24 * as a result, a workflow can pass the linter but crash Cytoscape since it assumes a string for the field https://github.com/galaxyproject/gxformat2/blob/0.17.0/java/src/main/java/org/galaxyproject/gxformat2/Cytoscape.java#L42