Program: 96839
Project: 96839
Buggy source:
@Override public void createDispoItems(ArtifactReadable author,DispoProgram program,DispoSet parentSet,List<DispoItem> data,String assignee){
  ArtifactReadable parentSetArt=findDispoArtifact(program,parentSet.getGuid(),DispoConstants.DispoSet);
  TransactionBuilder tx=getTxFactory().createTransaction(program.getUuid(),author,"String_Node_Str");
  for (  DispoItem item : data) {
    ArtifactId createdItem=tx.createArtifact(DispoConstants.DispoItem,item.getName());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoDateCreated,item.getCreationDate());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoLastUpdated,item.getLastUpdate());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemStatus,item.getStatus());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemTotalPoints,item.getTotalPoints());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemNeedsRerun,item.getNeedsRerun());
    String discrepanciesAsJsonString=DispoUtil.disrepanciesMapToJson(item.getDiscrepanciesList()).toString();
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoDiscrepanciesJson,discrepanciesAsJsonString);
    String annotationsAsJsonString=DispoUtil.annotationsListToJson(item.getAnnotationsList()).toString();
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoAnnotationsJson,annotationsAsJsonString);
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemVersion,item.getVersion());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemAssignee,assignee);
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemMachine,item.getMachine());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemCategory,item.getCategory());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemElapsedTime,item.getElapsedTime());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemAborted,item.getAborted());
    if (Strings.isValid(item.getFileNumber())) {
      tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemFileNumber,item.getFileNumber());
    }
    if (Strings.isValid(item.getMethodNumber())) {
      tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemMethodNumber,item.getMethodNumber());
    }
    tx.relate(parentSetArt,CoreRelationTypes.Default_Hierarchical__Child,createdItem);
  }
  tx.commit();
}

Fixed version (ground truth):
@Override public void createDispoItems(ArtifactReadable author,DispoProgram program,DispoSet parentSet,List<DispoItem> data){
  ArtifactReadable parentSetArt=findDispoArtifact(program,parentSet.getGuid(),DispoConstants.DispoSet);
  TransactionBuilder tx=getTxFactory().createTransaction(program.getUuid(),author,"String_Node_Str");
  for (  DispoItem item : data) {
    ArtifactId createdItem=tx.createArtifact(DispoConstants.DispoItem,item.getName());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoDateCreated,item.getCreationDate());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoLastUpdated,item.getLastUpdate());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemStatus,item.getStatus());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemTotalPoints,item.getTotalPoints());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemNeedsRerun,item.getNeedsRerun());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemAborted,item.getAborted());
    tx.setSoleAttributeValue(createdItem,DispoConstants.DispoItemNeedsReview,item.getAborted());
    String discrepanciesAsJsonString=DispoUtil.disrepanciesMapToJson(item.getDiscrepanciesList()).toString();
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoDiscrepanciesJson,discrepanciesAsJsonString);
    String annotationsAsJsonString=DispoUtil.annotationsListToJson(item.getAnnotationsList()).toString();
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoAnnotationsJson,annotationsAsJsonString);
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemVersion,item.getVersion());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemAssignee,item.getAssignee());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemMachine,item.getMachine());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemCategory,item.getCategory());
    tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemElapsedTime,item.getElapsedTime());
    if (Strings.isValid(item.getFileNumber())) {
      tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemFileNumber,item.getFileNumber());
    }
    if (Strings.isValid(item.getMethodNumber())) {
      tx.setSoleAttributeFromString(createdItem,DispoConstants.DispoItemMethodNumber,item.getMethodNumber());
    }
    tx.relate(parentSetArt,CoreRelationTypes.Default_Hierarchical__Child,createdItem);
  }
  tx.commit();
}