Client-side surface for participant presence. Multi-party sessions need "who is here right now" — including quiet participants. agent.presence is agent-plane liveness, not participant presence; and an events-only feed can't show a late joiner the participants who are already connected but silent. Presence needs query + events.
Proposal (client half)
k.presence(filter?) → current roster snapshot (thin wrapper over a governed .presence read; filter.type = user/bot/agent/…).
- A reactive presence binding for
join/leave/drop deltas, reconciled by Ck-Seq against the snapshot cursor — reusing the existing snapshot + bind pattern.
- No client-side roster synthesis;
agent.presence stays distinct.
Depends on
pgCK exposing a server-derived, type-filterable .presence read + join/leave/drop events (a new substrate capability — presence is live-connection truth, not a sealed instance). Gated on the styk-tv/pgCK presence issue.
Done-when
- A joining client gets the full roster incl. quiet users from one
.presence call.
- Live via events with no gaps (
Ck-Seq reconciliation); type filter works from the single affordance.
Relates
Client-side surface for participant presence. Multi-party sessions need "who is here right now" — including quiet participants.
agent.presenceis agent-plane liveness, not participant presence; and an events-only feed can't show a late joiner the participants who are already connected but silent. Presence needs query + events.Proposal (client half)
k.presence(filter?)→ current roster snapshot (thin wrapper over a governed.presenceread;filter.type= user/bot/agent/…).join/leave/dropdeltas, reconciled byCk-Seqagainst the snapshot cursor — reusing the existing snapshot +bindpattern.agent.presencestays distinct.Depends on
pgCK exposing a server-derived, type-filterable
.presenceread +join/leave/dropevents (a new substrate capability — presence is live-connection truth, not a sealed instance). Gated on thestyk-tv/pgCKpresence issue.Done-when
.presencecall.Ck-Seqreconciliation); type filter works from the single affordance.Relates