Weekly Recap
A Monday-morning email that tells the brand owner what happened last week, what's trending in their niche, and what they should do next. Also runs a weekly reflection that feeds lessons back into Brand Memory.
What's in the recap
| Section | Content |
|---|---|
| Post activity | Published, pending, scheduled counts + previous week comparison |
| Engagement | Likes, comments, shares, views, impressions, saves — this week vs previous, per-platform breakdown |
| Top post | Most recent published post |
| Trends | 3-5 trending topics grounded in real web search (with source URLs + OG images) |
| Suggestions | 3-5 AI-generated actionable improvements |
| Action items | Rule-based: pending posts, no connected accounts, expired plans, quota warnings |
Action items are localised (IT/EN). Before generating trends, the recap syncs fresh data from Zernio + ScrapeCreators.
Weekly reflection
The Director judges one batch; this judges the system over the last two weeks. It looks at:
- Image QC verdicts — recurring quality failures
- Director attention flags — posts the system itself flagged
- User caption-edit lessons — voice rules the owner's behaviour implies
- Radar acceptance — which news items the owner acted on vs ignored
One structured Gemini call extracts 0-3 generalisable operating lessons → written to brand_memory with source: 'analysis'. This is how the machine course-corrects weekly.
Trend generation
Trends use the same grounded spine as research: groundedText() (Gemini + Google Search) → structured() (extract JSON). Enriched with the brand's structured memory so suggestions know about voice constraints, competitive positioning, and learned preferences.
For each trend with a source URL, the OG image is fetched and hosted on Supabase Storage for email embedding.
GET /api/v1/weekly-recap/tick — runs Monday 08:00 UTC for all active brands.