Program: 588
Project: 588
Buggy source:
private void initRenderGraph(){
  NodeFactory nodeFactory=new NodeFactory(context);
  BufferClearingNode.RequiredData shadowMapClearingData=new BufferClearingNode.RequiredData(new FBOConfig(ShadowMapNode.SHADOW_MAP,FBO.Type.NO_COLOR).useDepthBuffer(),shadowMapResolutionDependentFBOs,GL_DEPTH_BUFFER_BIT);
  Node shadowMapClearingNode=nodeFactory.createInstance(BufferClearingNode.class,shadowMapClearingData);
  shadowMapNode=nodeFactory.createInstance(ShadowMapNode.class);
  BufferClearingNode.RequiredData reflectedBufferClearingData=new BufferClearingNode.RequiredData(new FBOConfig(BackdropReflectionNode.REFLECTED,HALF_SCALE,FBO.Type.DEFAULT).useDepthBuffer(),displayResolutionDependentFBOs,GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  Node reflectedBufferClearingNode=nodeFactory.createInstance(BufferClearingNode.class,reflectedBufferClearingData);
  Node reflectedBackdropNode=nodeFactory.createInstance(BackdropReflectionNode.class);
  Node worldReflectionNode=nodeFactory.createInstance(WorldReflectionNode.class);
  Node backdropNode=nodeFactory.createInstance(BackdropNode.class);
  Node skybandsNode=nodeFactory.createInstance(SkyBandsNode.class);
  Node objectOpaqueNode=nodeFactory.createInstance(ObjectsOpaqueNode.class);
  Node chunksOpaqueNode=nodeFactory.createInstance(ChunksOpaqueNode.class);
  Node chunksAlphaRejectNode=nodeFactory.createInstance(ChunksAlphaRejectNode.class);
  Node overlaysNode=nodeFactory.createInstance(OverlaysNode.class);
  Node firstPersonViewNode=nodeFactory.createInstance(FirstPersonViewNode.class);
  Node lightGeometryNode=nodeFactory.createInstance(LightGeometryNode.class);
  Node directionalLightsNode=nodeFactory.createInstance(DirectionalLightsNode.class);
  Node chunksRefractiveReflectiveNode=nodeFactory.createInstance(ChunksRefractiveReflectiveNode.class);
  Node outlineNode=nodeFactory.createInstance(OutlineNode.class);
  Node ambientOcclusionPassesNode=nodeFactory.createInstance(AmbientOcclusionPassesNode.class);
  Node prePostCompositeNode=nodeFactory.createInstance(PrePostCompositeNode.class);
  Node simpleBlendMaterialsNode=nodeFactory.createInstance(SimpleBlendMaterialsNode.class);
  Node lightShaftsNode=nodeFactory.createInstance(LightShaftsNode.class);
  Node initialPostProcessingNode=nodeFactory.createInstance(InitialPostProcessingNode.class);
  Node downSampleSceneAndUpdateExposure=nodeFactory.createInstance(DownSampleSceneAndUpdateExposureNode.class);
  Node toneMappingNode=nodeFactory.createInstance(ToneMappingNode.class);
  Node bloomPassesNode=nodeFactory.createInstance(BloomPassesNode.class);
  Node blurPassesNode=nodeFactory.createInstance(BlurPassesNode.class);
  Node finalPostProcessingNode=nodeFactory.createInstance(FinalPostProcessingNode.class);
  RenderGraph renderGraph=new RenderGraph();
  renderGraph.addNode(shadowMapClearingNode,"String_Node_Str");
  renderGraph.addNode(shadowMapNode,"String_Node_Str");
  renderGraph.addNode(reflectedBufferClearingNode,"String_Node_Str");
  renderGraph.addNode(reflectedBackdropNode,"String_Node_Str");
  renderGraph.addNode(worldReflectionNode,"String_Node_Str");
  renderGraph.addNode(backdropNode,"String_Node_Str");
  renderGraph.addNode(skybandsNode,"String_Node_Str");
  renderGraph.addNode(objectOpaqueNode,"String_Node_Str");
  renderGraph.addNode(chunksOpaqueNode,"String_Node_Str");
  renderGraph.addNode(chunksAlphaRejectNode,"String_Node_Str");
  renderGraph.addNode(overlaysNode,"String_Node_Str");
  renderGraph.addNode(firstPersonViewNode,"String_Node_Str");
  renderGraph.addNode(lightGeometryNode,"String_Node_Str");
  renderGraph.addNode(directionalLightsNode,"String_Node_Str");
  renderGraph.addNode(chunksRefractiveReflectiveNode,"String_Node_Str");
  renderGraph.addNode(outlineNode,"String_Node_Str");
  renderGraph.addNode(ambientOcclusionPassesNode,"String_Node_Str");
  renderGraph.addNode(prePostCompositeNode,"String_Node_Str");
  renderGraph.addNode(simpleBlendMaterialsNode,"String_Node_Str");
  renderGraph.addNode(lightShaftsNode,"String_Node_Str");
  renderGraph.addNode(initialPostProcessingNode,"String_Node_Str");
  renderGraph.addNode(downSampleSceneAndUpdateExposure,"String_Node_Str");
  renderGraph.addNode(toneMappingNode,"String_Node_Str");
  renderGraph.addNode(bloomPassesNode,"String_Node_Str");
  renderGraph.addNode(blurPassesNode,"String_Node_Str");
  renderGraph.addNode(finalPostProcessingNode,"String_Node_Str");
  RenderTaskListGenerator renderTaskListGenerator=new RenderTaskListGenerator();
  List<Node> orderedNodes=renderGraph.getNodesInTopologicalOrder();
  renderPipelineTaskList=renderTaskListGenerator.generateFrom(orderedNodes);
}

Fixed version (ground truth):
private void initRenderGraph(){
  NodeFactory nodeFactory=new NodeFactory(context);
  RenderGraph renderGraph=new RenderGraph();
  FBOConfig shadowMapConfig=new FBOConfig(ShadowMapNode.SHADOW_MAP,FBO.Type.NO_COLOR).useDepthBuffer();
  BufferClearingNode.RequiredData shadowMapClearingData=new BufferClearingNode.RequiredData(shadowMapConfig,shadowMapResolutionDependentFBOs,GL_DEPTH_BUFFER_BIT);
  Node shadowMapClearingNode=nodeFactory.createInstance(BufferClearingNode.class,shadowMapClearingData);
  renderGraph.addNode(shadowMapClearingNode,"String_Node_Str");
  shadowMapNode=nodeFactory.createInstance(ShadowMapNode.class);
  renderGraph.addNode(shadowMapNode,"String_Node_Str");
  FBOConfig reflectedBufferConfig=new FBOConfig(BackdropReflectionNode.REFLECTED,HALF_SCALE,FBO.Type.DEFAULT).useDepthBuffer();
  BufferClearingNode.RequiredData reflectedBufferClearingData=new BufferClearingNode.RequiredData(reflectedBufferConfig,displayResolutionDependentFBOs,GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  Node reflectedBufferClearingNode=nodeFactory.createInstance(BufferClearingNode.class,reflectedBufferClearingData);
  renderGraph.addNode(reflectedBufferClearingNode,"String_Node_Str");
  Node reflectedBackdropNode=nodeFactory.createInstance(BackdropReflectionNode.class);
  renderGraph.addNode(reflectedBackdropNode,"String_Node_Str");
  Node worldReflectionNode=nodeFactory.createInstance(WorldReflectionNode.class);
  renderGraph.addNode(worldReflectionNode,"String_Node_Str");
  FBOConfig reflectedRefractedBufferConfig=new FBOConfig(new ResourceUrn("String_Node_Str"),FULL_SCALE,FBO.Type.HDR).useNormalBuffer();
  BufferClearingNode.RequiredData reflectiveRefractiveBufferClearingData=new BufferClearingNode.RequiredData(reflectedRefractedBufferConfig,displayResolutionDependentFBOs,GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  Node reflectedRefractedClearingNode=nodeFactory.createInstance(BufferClearingNode.class,reflectiveRefractiveBufferClearingData);
  renderGraph.addNode(reflectedRefractedClearingNode,"String_Node_Str");
  BufferClearingNode.RequiredData readBufferClearingData=new BufferClearingNode.RequiredData(READ_ONLY_GBUFFER.getConfig(),displayResolutionDependentFBOs,GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
  Node readBufferClearingNode=nodeFactory.createInstance(BufferClearingNode.class,readBufferClearingData);
  renderGraph.addNode(readBufferClearingNode,"String_Node_Str");
  Node backdropNode=nodeFactory.createInstance(BackdropNode.class);
  renderGraph.addNode(backdropNode,"String_Node_Str");
  Node skybandsNode=nodeFactory.createInstance(SkyBandsNode.class);
  Node objectOpaqueNode=nodeFactory.createInstance(ObjectsOpaqueNode.class);
  Node chunksOpaqueNode=nodeFactory.createInstance(ChunksOpaqueNode.class);
  Node chunksAlphaRejectNode=nodeFactory.createInstance(ChunksAlphaRejectNode.class);
  Node overlaysNode=nodeFactory.createInstance(OverlaysNode.class);
  Node firstPersonViewNode=nodeFactory.createInstance(FirstPersonViewNode.class);
  Node lightGeometryNode=nodeFactory.createInstance(LightGeometryNode.class);
  Node directionalLightsNode=nodeFactory.createInstance(DirectionalLightsNode.class);
  Node chunksRefractiveReflectiveNode=nodeFactory.createInstance(ChunksRefractiveReflectiveNode.class);
  Node outlineNode=nodeFactory.createInstance(OutlineNode.class);
  Node ambientOcclusionPassesNode=nodeFactory.createInstance(AmbientOcclusionPassesNode.class);
  Node prePostCompositeNode=nodeFactory.createInstance(PrePostCompositeNode.class);
  Node simpleBlendMaterialsNode=nodeFactory.createInstance(SimpleBlendMaterialsNode.class);
  Node lightShaftsNode=nodeFactory.createInstance(LightShaftsNode.class);
  Node initialPostProcessingNode=nodeFactory.createInstance(InitialPostProcessingNode.class);
  Node downSampleSceneAndUpdateExposure=nodeFactory.createInstance(DownSampleSceneAndUpdateExposureNode.class);
  Node toneMappingNode=nodeFactory.createInstance(ToneMappingNode.class);
  Node bloomPassesNode=nodeFactory.createInstance(BloomPassesNode.class);
  Node blurPassesNode=nodeFactory.createInstance(BlurPassesNode.class);
  Node finalPostProcessingNode=nodeFactory.createInstance(FinalPostProcessingNode.class);
  renderGraph.addNode(skybandsNode,"String_Node_Str");
  renderGraph.addNode(objectOpaqueNode,"String_Node_Str");
  renderGraph.addNode(chunksOpaqueNode,"String_Node_Str");
  renderGraph.addNode(chunksAlphaRejectNode,"String_Node_Str");
  renderGraph.addNode(overlaysNode,"String_Node_Str");
  renderGraph.addNode(firstPersonViewNode,"String_Node_Str");
  renderGraph.addNode(lightGeometryNode,"String_Node_Str");
  renderGraph.addNode(directionalLightsNode,"String_Node_Str");
  renderGraph.addNode(chunksRefractiveReflectiveNode,"String_Node_Str");
  renderGraph.addNode(outlineNode,"String_Node_Str");
  renderGraph.addNode(ambientOcclusionPassesNode,"String_Node_Str");
  renderGraph.addNode(prePostCompositeNode,"String_Node_Str");
  renderGraph.addNode(simpleBlendMaterialsNode,"String_Node_Str");
  renderGraph.addNode(lightShaftsNode,"String_Node_Str");
  renderGraph.addNode(initialPostProcessingNode,"String_Node_Str");
  renderGraph.addNode(downSampleSceneAndUpdateExposure,"String_Node_Str");
  renderGraph.addNode(toneMappingNode,"String_Node_Str");
  renderGraph.addNode(bloomPassesNode,"String_Node_Str");
  renderGraph.addNode(blurPassesNode,"String_Node_Str");
  renderGraph.addNode(finalPostProcessingNode,"String_Node_Str");
  RenderTaskListGenerator renderTaskListGenerator=new RenderTaskListGenerator();
  List<Node> orderedNodes=renderGraph.getNodesInTopologicalOrder();
  renderPipelineTaskList=renderTaskListGenerator.generateFrom(orderedNodes);
}