               m = info.metric.id
               if m == 'id'
                 # trash/bullet: remove
-                setRecord(info, null)
+                setRecord(info, null) if info.c != Key.id
                 return
               return if info.metric.readonly
               editScope.type = info.metric.type

              v = ''
            when 'id'
              if v?
                cell.className = 'icon ' + if Editing then 'trash' else 'bullet'
                v = ''
            when 'age'
              v = display.formatAge(v)

                return
              return if info.slot?.id == volume.top.id
              c = info.category
              editInput.value = (info.d ? 'remove')+''
              editScope.type = 'record'
              editScope.options =
                new: 'Create new ' + c.name
                remove: c.not
              for ri, r of volume.records
                if (r.category || 0) == c.id && (!Depends[ri]?[info.i] || ri == editInput.value)
                  editScope.options[ri] = r.displayName
              # detect special cases: singleton or unitary records
              for mi of Data[c.id]
