Commit Graph

11 Commits

Author SHA1 Message Date
Paperclip Agent
39d874a7e2 analytics: make each weekly funnel stage separately measurable (FRE-366)
Gap 1 — click and served share one label: trackDownload now takes a
stage ("click" | "served") carried on a new VisitorAnalytics.stage
column; the Nook door and the tRPC proxy record clicks, the DMG file
route records served. summariseDownloads() and the /analytics downloads
block are untouched — the stage is a separate column, so the path
grouping cannot change.

Gap 2 — checkout start records nothing: the checkout route records a
created Stripe session through the shared trackRequest writer (same
referrer, campaign, country dimensions as every door) under its own
path, and STAGES.checkout reads it instead of the /checkout page proxy.

Gap 3 — loopback addresses, no host dimension: every writer now
resolves the client address through resolveClientIp, which trusts
x-forwarded-for only when the direct peer is the loopback production
proxy (trust boundary stated in request-client.ts), and records the
host on each row through the same site-context extractor routing uses.
stage and host reach the table through VISITOR_ANALYTICS_ADDED_COLUMNS;
the weekly job applies the same bootstrap before reading so it renders
seven stages against a database no deploy has migrated yet.

The weekly read splits downloadClick/dmgServed, scopes visits to
nook.freno.me, and computes its caveats from the window: pre-instrumentation
rows are stated and excluded, and the loopback warning now fires only
when rows recorded since the instrumentation still carry it.
2026-10-29 17:02:39 +00:00
96e401ecbb nook marketing - utm, analytics, etc 2026-10-03 11:03:26 -04:00
58d48dac70 checkpoint 2026-01-21 12:22:19 -05:00
f056cf05d3 hopeful 2026-01-07 20:19:26 -05:00
ea556b3677 fledged out analytics, self gather, remove vercel speed insights 2026-01-06 01:34:55 -05:00
d2ee61b830 analytics page 2026-01-06 00:40:44 -05:00
a620a9f4c5 perf improvements 2026-01-04 14:53:30 -05:00
a1ed56478c published toggle 2025-12-31 00:49:10 -05:00
6e31246060 lockout 2025-12-30 09:50:04 -05:00
2852c0b450 post fields improvements 2025-12-29 17:47:35 -05:00
53a4ae1a43 oh baby boy 2025-12-26 13:41:50 -05:00