Skip to content

Presence#15

Merged
binjospookie merged 4 commits into
mainfrom
presence
Jun 7, 2026
Merged

Presence#15
binjospookie merged 4 commits into
mainfrom
presence

Conversation

@binjospookie

Copy link
Copy Markdown
Contributor

No description provided.

Viktor Pasynok and others added 2 commits June 7, 2026 04:34
…ount/usePresence

- presenceStore: id-keyed OR-aggregation (Map<id, Map<Element, boolean>>), microtask-coalesced notify, probe span (display:contents) + MutationObserver(childList+subtree)
- createSlot: full fork by config — non-presence branch byte-identical; probe threads inside Memoized below the filter/mapProps barriers
- tests: presence unit/hardening/type-level + browser pins (pre-paint settlement, probe layout transparency, fps pacing)
- browser perf benches: pnpm bench:browser (chromium then webkit, sequential), calibrated us sweeps + FPS report into gitignored bench-results.*.json
- infra: browser deps at workspace root, vitest bench projects, CI workflow updates

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@binjospookie binjospookie requested a review from a team June 6, 2026 21:38
Viktor Pasynok and others added 2 commits June 7, 2026 04:39
…lip pin gets a bounded settle window

The fps harness asserted wall-clock frame pacing (p95, zero >33ms outliers) —
a benchmark, not a correctness pin; on shared GH runners without GPU it fails
deterministically. Moved to perf.bench as FPS-churn-presence, mirroring
FPS-churn so the report isolates the presence frame-pacing tax.

The reverse-flip pin gave the settle chain (scheduled render -> observer ->
coalesced flush -> host render) exactly one rAF — an ordering neither the spec
nor React guarantees; headless webkit reliably fires rAF first. settlesWithin
polls up to 5 frames: liveness stays pinned, the unguaranteed single-frame
budget goes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@binjospookie binjospookie merged commit 5d530f2 into main Jun 7, 2026
2 checks passed
@binjospookie binjospookie deleted the presence branch June 7, 2026 07:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant