Skip to content

Prepare bounded analytics sessions with incremental updates - #28

Merged
davidvanleeuwen merged 2 commits into
mainfrom
feat/analytics-sessions
Oct 23, 2026
Merged

davidvanleeuwen merged 2 commits into
mainfrom
feat/analytics-sessions

Conversation

@davidvanleeuwen

@davidvanleeuwen davidvanleeuwen commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

Large event histories currently require rebuilding playback sessions for each analytics request. This change prepares bounded, immutable session generations and compact report summaries, then publishes complete generations atomically for dashboard/API readers. New and late events rebuild affected sessions; retired generations are reclaimed after a reader grace period.

The reader and processor are independently configurable and default off; both can be scoped to selected spaces for a bounded rollout. Migrations are additive; historical preparation remains an explicit operation. Raw events remain authoritative. Includes portable operation documentation and reusable range-report interfaces for additional analytics features.

Also requires plug_crypto >= 2.2.1, updates the lockfile, and covers malformed playback tokens with regressions.

Validation: complete local Core and SaaS suites, focused session/publication/cleanup tests, and concurrent ingestion/read/recovery testing. Hosted activation remains a separate staged rollout.

CI setup uses the public Ubuntu package mirror and omits unrelated recommended packages after a hosted-runner mirror timeout prevented the sandbox tests from starting.

@davidvanleeuwen
davidvanleeuwen marked this pull request as ready for review October 23, 2026 16:20
@davidvanleeuwen
davidvanleeuwen merged commit 5fec47e into main Oct 23, 2026
3 checks passed
@davidvanleeuwen
davidvanleeuwen deleted the feat/analytics-sessions branch October 23, 2026 16:20
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