Skip to content

feat: add a presence-api.keepalive filter so a push transport can hold a tab's rows - #904

Merged
josephfusco merged 10 commits into
mainfrom
feat/presence-keepalive-filter
Oct 29, 2026
Merged

josephfusco merged 10 commits into
mainfrom
feat/presence-keepalive-filter

Conversation

@josephfusco

Copy link
Copy Markdown
Collaborator

With keepalive off the transport owns user-{id} and editor-{id} outright, so one that removes them per tab instead of per person takes the user offline, and the editor row's locked flag, which nothing in this plugin reads, stops following core's lock.

Related: #901

Use of AI Tools

AI assistance: Yes
Tool(s): Claude Code
Model(s): Claude Opus 5.5
Used for: Assisting with the implementation, tests and README entry.

@github-actions github-actions Bot added the Public API Adds a hook, route, constant, or global that third parties can depend on label Oct 27, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🚩 New public surface

  • (js-filter) presence-api.keepalive

@github-actions

github-actions Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

🛝 WordPress Playgrounds

Built from b98337b

Post locks RTC Synced patterns Settings
Single site Launch post locks, single site Launch RTC, single site Launch synced patterns, single site Launch settings, single site
Multisite Launch post locks, multisite Launch RTC, multisite Launch synced patterns, multisite Launch network settings, multisite

@codecov

codecov Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.52%. Comparing base (1877880) to head (b98337b).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #904   +/-   ##
=========================================
  Coverage     97.52%   97.52%           
  Complexity      269      269           
=========================================
  Files            30       30           
  Lines          4399     4403    +4     
=========================================
+ Hits           4290     4294    +4     
  Misses          109      109           
Flag Coverage Δ
multisite 97.69% <100.00%> (+<0.01%) ⬆️
phpunit 77.69% <100.00%> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

github-actions Bot added a commit that referenced this pull request Oct 27, 2026
@josephfusco
josephfusco marked this pull request as ready for review October 27, 2026 23:06
@github-actions

Copy link
Copy Markdown
Contributor

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs.

Core Committers: Use this line as a base for the props when committing in SVN:

Props joefusco.

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.


Props Bot commands

You can trigger Props Bot actions by commenting on this PR:

  • @propsbot add <username> to give props to a GitHub user. Requires write access.
  • @propsbot remove <username> to leave a user out of the props. Requires write access.
  • @propsbot refresh to refresh this list. Adding the props-bot label works too.

github-actions Bot added a commit that referenced this pull request Oct 27, 2026
github-actions Bot added a commit that referenced this pull request Oct 29, 2026
@josephfusco
josephfusco merged commit 773d4e7 into main Oct 29, 2026
28 checks passed
@josephfusco
josephfusco deleted the feat/presence-keepalive-filter branch October 29, 2026 13:03
@github-actions github-actions Bot added this to the 0.19.0 milestone Oct 29, 2026
@josephfusco josephfusco mentioned this pull request Oct 29, 2026
24 of 36 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Public API Adds a hook, route, constant, or global that third parties can depend on

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant