Если в функцию
ref передан объект (а экземпляр класса Editor, собсно, тоже объект) — Vue решает, что знает лучше нас, что нужно делать, и делает из объекта... reactive (пруф, пруф 2). Для нас это значит только одно: Vue везде вкорячит свой Proxy. И это почему-то очень не нравится Tiptap: видимо, где-то теряется контекст, или ещё что, но у меня есть личная жизнь и я не хочу лезть насколько глубоко.
Решение задачи — всего-то поменять
ref на shallowRef: Unlike ref(), the inner value of a shallow ref is stored and exposed as-is, and will not be made deeply reactive. Only the .value access is reactive.