tr
TryGhost
GitHub
Ghost
Workspace
GitHub
CI Pipeline Executions
Filtered
Runs
Demo
Insights
Compare tasks
Analytics
Sign in
Toggle sidebar
Overview
⌘K
Ghost
Loading workspace stats
Loading workspace insights...
Statistics interval
7 days
30 days
Latest CI Pipeline Executions
Status
Fix filter
Filter
Fuzzy
Filter range
Sort by
Sort by
Start time
Sort ascending
Sort descending
GitHub
Ghost
Workspace
Succeeded
30674
5ce34bd5 Changed the newsletter email counters test to TypeScript ref https://linear.app/ghost/issue/BER-3934/add-incremental-email-and-member-analytics-counters New test files follow the repository's TypeScript direction, which the CodeRabbit "New files are TypeScript" check enforces for this PR.
by Jonatan Sv...
J
Succeeded
30674
e21be7dc Changed the newsletter email counters test to TypeScript ref https://linear.app/ghost/issue/BER-3934/add-incremental-email-and-member-analytics-counters New test files follow the repository's TypeScript direction, which the CodeRabbit "New files are TypeScript" check enforces for this PR.
by Jonatan Sv...
J
Succeeded
30674
639ddc16 Changed email counter baselines to report the corrections they apply ref https://linear.app/ghost/issue/BER-3934/add-incremental-email-and-member-analytics-counters ref https://linear.app/ghost/issue/BER-3937/de-risk-and-roll-out-incremental-analytics-counters-tangle-first Review found that comparison mode could never observe drift on an email's first touch after a restart: the baseline replaced the counters with truth before the comparison read them, so a wrong counter left by an earlier process always compared as zero drift. The baseline now logs and records the correction it applies as a separate metric, and a comparison reuses that truth instead of recounting the same email twice inside one locked transaction. The recount also returns to one covering-index count per outcome, as the legacy recount did, because a single three-column count reads every recipient row while the email row is locked; comparison reads only the counter columns instead of the whole email. Comparison transactions now retry lock waits and deadlocks through the same helper the event flush uses, so one lock wait no longer aborts member aggregation for the whole cycle. A missing email row is no longer remembered as initialized, and an unknown or unsupported counter mode is logged at boot instead of silently behaving like off.
by Jonatan Sv...
J
Succeeded
30674
a16184eb Added atomic newsletter email counters with drift comparison ref https://linear.app/ghost/issue/BER-3934/add-incremental-email-and-member-analytics-counters Establish an opens-inclusive baseline per touched email at startup and commit exact event increments with recipient transitions. Compare derived truth without repairing established counters so rollout can expose real drift. Keep member recounts and replay recovery while preparation accounting lands.
by Jonatan Sv...
J
Previous
Next