Note: "connected" here means across all real-time pods.
- editing_session_mode, counter
- mode=connect - a client connected
- mode=disconnect - a client disconnect
- mode=update - continuous editing
- status=empty - all clients disconnected
- status=single - a single client is connected
- status=multi - multiple clients are connected
- project_not_empty_since histogram with buckets [0,1h,2h,1d,2d,1w,30d]
- status=empty/single/multi as described above
GitOrigin-RevId: 1cc42e72bbb5aae754399bdbc3f8771642f35c22
* Increase threshold for "latency in red color"
* Fix online status in Chrome and Safari
* Add "Auto ping" checkbox
* Put `/socket-diagnostics` behind `AuthenticationController.requireLogin`
* Set logs to `logger.info` when debugging
* Add `publicId` and `clientId` to logs
* Fix disconnect logs when debugging
* Refresh UI every second. Display red "Ping Count" if unanswered for 3s
* Update services/web/frontend/js/features/socket-diagnostics/components/socket-diagnostics.tsx
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Update services/web/frontend/js/features/socket-diagnostics/components/socket-diagnostics.tsx
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* `npm run format:fix`
---------
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 9faf2abdac51fa4b87c67d8fe89c4125d01d826f
* Create a UI to test socket connection
* Add Clock Delta to the measurements
* Add colors to DiagnosticItem
* Update icon
* Add more info to the diagnostics screen
* Add logs in backend on debug messages, disconnections and connection
* Add last received ping info
* Reorder DiagnosticItems
* Remove "warning" text color (too light)
* Replace Phosphor icons by Material Icons
GitOrigin-RevId: 6a015b4928cd19849ff287cf254f671840ed44af
* Support for adding reviewer role
* show reviewer in track changes user list
* added "review" in assertClientCanViewProject
* test if reviewer can read project
* added collaboratorsGetter tests
* eit toggle-track-changes when track changes changes
* [real-time] ensure tc is enabled when reviewer role is used
* use assertClientCanReviewProjectAndDoc, refactor _assertClientCanApplyUpdate
GitOrigin-RevId: 158bd1ff0d4b4977da950134f8ad8b3740855290
* Support for adding reviewer role
* show reviewer in track changes user list
* added "review" in assertClientCanViewProject
* test if reviewer can read project
* added collaboratorsGetter tests
* eit toggle-track-changes when track changes changes
* Support for changing privilege to reviewers for invited users (#22159)
* Add reviewer in change privilege level handler
* added reviewer translation
* added acceptance tests
* fix tests
* Set track changes state permissions for reviewer role (#22167)
* Add reviewer in change privilege level handler
* added reviewer translation
* added acceptance tests
* fix tests
* Set track changes state permissions for reviewer role
* added authorization helper tests
* added ensureUserCanReviewProjectContent middleware
* allow changing track changes only with write permissions
* removed canUserReviewProjectContent
* List projects where user is added as a reviewer (#22249)
* List projects where user is added as reviewer
* list projects in /user/projects
* fix tests
GitOrigin-RevId: 54064a7f961fe06f188ab449cd469cdaaf01b20a
* Add `unicorn/prefer-node-protocol`
* Fix `unicorn/prefer-node-protocol` ESLint errors
* Run `npm run format:fix`
* Add sandboxed-module sourceTransformers in mocha setups
Fix `no such file or directory, open 'node:fs'` in `sandboxed-module`
* Remove `node:` in the SandboxedModule requires
* Fix new linting errors with `node:`
GitOrigin-RevId: 68f6e31e2191fcff4cb8058dd0a6914c14f59926