Skip to content

Implement nightly puzzle analytics rollup job #548

Description

@phertyameen

Description

Add a @Cron job that aggregates the previous day's puzzle attempts/completions into PuzzleAnalytics rows.

Why this matters

Puzzle-level completion rate and average solve time providers should read from pre-aggregated data rather than scanning raw events.

Files to touch

  • backend/src/analytics/jobs/puzzle-analytics-rollup.job.ts

Acceptance Criteria

  • Job correctly aggregates attempts, completions, and average time
  • Job handles puzzles with zero attempts for the day gracefully

Notes

This issue is part of the new analytics module effort (tracking, aggregation,
and reporting on player/game activity). Please keep new code inside
backend/src/analytics/ following the same module/controller/service/provider
layout used by existing modules (e.g. progress, streak, quests).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions