Почему some отрабатывает, а every нет?
Почему же наоборот? Используя some, вы проверяете, есть ли в item.version_ids элемент, равный id текущего version'а. И действительно - таковых три. А использование every означает, что каждый элемент item.version_ids должен быть равен id текущего version'а - чего очевидно быть не может. Поэтому и возвращает он всегда false.
every() («каждый») – более строгий, чем  some() («некоторые»)every() вернёт true только, когда по всем элементам выполнено условие.some() вернёт true, как только хотя бы в одном встретится выполнение условия.
В вашем примере можно переписать без some() старым добрым indexOf():const availableVersions = versions.filter(
  version => !!~item.version_ids.indexOf( version.id )
);Fiddle!!~ из любого значения, кроме -1, вернёт true, а для -1 вернёт false.