Skip to content

Isolate Yjs rooms by web version - #3243

Open
AlexAndBear wants to merge 2 commits into
mainfrom
feat/3101-versioned-yjs-rooms
Open

Isolate Yjs rooms by web version#3243
AlexAndBear wants to merge 2 commits into
mainfrom
feat/3101-versioned-yjs-rooms

Conversation

@AlexAndBear

Copy link
Copy Markdown
Member

Description

  • Include the web version in the Yjs room name (fileId:webVersion), with a 0.0.0 fallback for environments without a version.
  • Remove app-version gating via _oc_meta.appVersion and remove the server-side appVersion handshake/query handling.
  • Keep stale-state and etag coordination in _oc_meta, and adapt parsing on the Yjs service to strip the optional :webVersion suffix before Graph ACL checks.
  • Update app-wrapper/text-editor Yjs option wiring and adjust unit tests for room-name generation and version-based room separation.

Related Issue

How Has This Been Tested?

  • test environment: local dev workspace on macOS
  • test case 1: pnpm test:unit --run packages/web-pkg/tests/unit/composables/yjs/useYjsSession.spec.ts packages/web-pkg/tests/unit/components/AppTemplates/AppWrapper.spec.ts packages/web-app-text-editor/tests/unit/app.spec.ts packages/web-app-text-editor/tests/unit/yjs.spec.ts
  • test case 2: pnpm exec tsc --noEmit -p services/yjs/tsconfig.json
  • test case 3: verify room name composition unit tests cover equal and differing versions, including 0.0.0 fallback

Types of changes

  • Bugfix
  • Enhancement (a change that doesn't break existing code or deployments)
  • Breaking change (a modification that affects current functionality)
  • Technical debt (addressing code that needs refactoring or improvements)
  • Tests (adding or improving tests)
  • Documentation (updates or additions to documentation)
  • Maintenance (like dependency updates or tooling adjustments)

Comment thread packages/web-pkg/src/composables/yjs/useYjsSession.ts
@AlexAndBear
AlexAndBear requested a review from JammingBen August 27, 2026 15:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

collaborative editing: bake web version into room name

2 participants