             node.codapID = attr.id if not node.codapID
             node.codapName = attr.name
           # sync name/title, but only if it's changed on the CODAP side
-          else if not initialSync and (node.codapName isnt attr.name)
+          else if node.codapName isnt attr.name
             node.codapName = attr.name
-            if (node.title isnt attr.name)
+            if not initialSync and (node.title isnt attr.name)
               @graphStore._changeNode node, { title: attr.name }
           if initialSync
             _.remove nodesToSync, (node) -> node.codapID and node.codapName

  _syncAttributeProperties: (attrProps, initialSync) ->
    nodesToSync = if initialSync \
                    then _.filter @graphStore.nodeKeys, (node) -> not node.codapID or not node.codapName \
                    else _.map @graphStore.nodeKeys, (node) -> node
    if nodesToSync?.length
      _.each attrProps, (attr) =>
        # check for id match

      # ret==null is indication of timeout, not an indication that the data set
      # doesn't exist.
      if !ret or ret.success
        @_initialSyncAttributeProperties ret.values?.collections?[1]?.attrs
        @initGameHandler ret
      else
        @_createDataContext()
