power_rankings.py opens a DB connection per user and hits the RDS ceiling. Re-enable once that loop is batched.trepo-bot-readonly. All S3 publishing is dead β everything moved to Cloudflare Pages.| Job | Schedule | Does | Status |
|---|---|---|---|
| digest-1-morninggrowth | 8:00am daily | Meta / signups / influencer deltas + analytics PDF | on PDF broken |
| Daily user snapshotgrowth | 8:05am daily | Total users + active yesterday + since-Jul-1 chart | on |
| daily-email-digestsystem | 8:30am daily | Unread matt@ digest (People vs Automated); doesn't mark read | on |
| Meta ad spend dailygrowth | 9:00am daily | Yesterday / today / MTD ad spend β Matt DM | on |
| digest-2-middaygrowth | 1:00pm daily | Same 3-metric delta block | on |
| digest-3-nightgrowth | 8:00pm daily | Same 3-metric delta block | on |
| influencer-tracker-refreshoutreach | every 3h 8amβ11pm | Scans both inboxes for replies, rewrites Tracker tab | on |
| influencer-deliverability-eodoutreach | 4:45pm MβF | Sent / replies / bounces today across both mailboxes | on |
| hourly-lead-onboardingleads | hourly (silent) | Import Meta leads β email join-app note β move group | on |
| creator-signatures-autogluecreators | every 10 min | File signed agreements + Venmo pay-pings | on |
| iMessage unread watchersystem | every 20 min | Alerts Matt on new unread inbound iMessages | on |
| Heartbeat pingsystem | every 10 min 6amβ8pm | Responsiveness poll (silent unless needed) | on |
| Meta token refresh remindersystem | Sept 3, 2026 (one-shot) | Warns before the Meta ads token expires ~Sept 9 | armed |
| power-rankings-weeklygrowth | Mon 9:07am | ESPN-style Top 10 most-engaged users, WoW movement | paused 8/10 |
| influencer-drip β zach@outreach | 9amβ4pm MβF | 6/run top-down, 48/day cap, marks SENT | paused 8/10 |
| influencer-drip β matt@outreach | 9:30amβ4:30pm MβF | 6/run bottom-up, shared dedup with zach@ | paused 8/10 |
| Daily WAU reportgrowth | 9:15am daily | WAU stickiness vs the 50% goal | paused 7/23 |
| growth-pace-daily (VC track)growth | 8:12pm daily | Downloads vs the 30% WoW curve toward 5k | paused 7/23 |
| Trepo hourly signup hypegrowth | 8amβ8pm hourly | Ronnie-Coleman hype / drill-sergeant on a flat hour | paused 7/23 |
| influencer-drip-summaryoutreach | 4:45pm MβF | Standalone EOD line β folded into the digest | paused |
| Apartment alerts β iMessagepersonal | every 2h 7amβ11pm | Polygon-filtered new listings β apartment group text | paused 7/23 |
| Apartment explorer refreshpersonal | 6:41am daily | Rebuilds the interactive listings map | paused 7/23 |
-1003912076924. The three paused-with-errors jobs above failed against the old id (-5328242979) before the group migrated β that's a delivery error, not a script error.inbox/poller.py runningpersonal-os/build_agent.py runningEvery meal-prep and recipe app before us runs the same play: hand users a fixed, in-house library of recipes, watch which ones get liked or cooked, and try to reverse-engineer purchase intent from that narrow signal β then sell it to brands. The ceiling is the catalog.
Appetize (New Zealand) is the textbook case: 100,000 users, $7M raised β and a library of just ~2,000 recipes. Every insight they sell is squeezed out of that one fixed set.
Trepo inverts the model. We don't hand users a catalog β we give them the entire internet. They hunt across every site, find the recipes they actually want, and then tell us by saving them. A save is a clean, self-selected intent signal, not an inference.