                 if reactiveSpec.include ? false
                     inclusionSet[reactiveName] = true
 
-            for fieldOrReactiveName, include of projection
-                continue if fieldOrReactiveName is '_'
+            for includeSpec, include of projection
+                continue if includeSpec is '_'
                 if include
-                    inclusionSet[fieldOrReactiveName] = true
+                    inclusionSet[includeSpec] = true
                 else
-                    delete inclusionSet[fieldOrReactiveName]
+                    delete inclusionSet[includeSpec]
 
         inclusionSet
 

        # Returns whether the results from the querySpecs in superQsArr
        # are sufficient to provide accurate results to qs

        return false if superQs.modelName isnt qs.modelName

        false


    isSelectorCovered: (qs, superQs) ->


    _projectionToInclusionSet: (modelClass, projection) ->
        # See the projection semantics documentation at the top of this file.
        # Returns {includeSpec: true}

        if projection is undefined then projection = {}
        inclusionSet = {}

        if projection._ is false
            for includeSpec, include of projection
                continue if includeSpec is '_'
                if include then inclusionSet[includeSpec] = true

        else
            for fieldName, fieldSpec of modelClass.fieldSpecs
