Ship log · iter #13
Iteration 13 ship log
2026-05-09 · continued autonomous /loop
Date: 2026-05-09 (continued autonomous /loop)
What shipped
New scripts on ubuntu@40.160.2.121
| File | Purpose | Cron |
regen-friday-digest.py | Weekly digest at /factory/admin/friday-digest/. Markdown + HTML. Last 7 days of intent + feedback + fresh products + top movers + studio numbers + "what to do this week" action items. "Copy markdown to clipboard" button on the HTML version. | Friday at noon |
patch-catalog-recent-search.py + patch-catalog-recent-js-v2.py | Adds "Recently viewed" strip on catalog. localStorage-tracked. Keyboard shortcut "/" focuses search. | one-time |
patch-product-track-recent.py | Inject tiny localStorage-write script on every product page. Records visited slugs. Catalog reads this list to show "Recently viewed" strip. | 46,16 |
patch-mission-control-cta.py | Patches mission-control.py to add "Browse the catalog →" + "New here? Start guide" CTA buttons above the fold. | one-time |
Live URLs
- https://wishdeal.com/factory/admin/friday-digest/ - LIVE weekly newsletter draft (regenerates every Friday noon)
- https://wishdeal.com/factory/ - homepage now has "Browse the catalog →" primary CTA above the fold
- Catalog now:
- "Recently viewed" strip appears for repeat visitors (after they click any product)
- Press
/ to focus search input - Search placeholder hints at the keyboard shortcut
- 176 product pages now record visits to localStorage for the "Recently viewed" feature
# Wishdeal Factory weekly digest
**Week of 2026-05-02 to 2026-05-09**
## Buyer signal
- 0 intent captures (catalog up; needs traffic)
- 0 feedback submissions
## Studio output
- Total products: 178
- New or updated this week: 177
- Tier mix: showcase 8 / solid 112 / rough 55 / sketch 3
- Cost to date: $89.x
## Top 10 by Adoptability
1. bookkeeper-ai (80) - tagline
2. dispatch-ai (77) - tagline
[...]
## What you should do this week
- [action items based on real data]
Wes can copy markdown to clipboard with one click and paste into a future SendGrid blast or Substack.
Recently viewed strip behavior
- Visitor lands on catalog
- Clicks any product, lands on product page
- localStorage records slug
- Visitor returns to catalog (via nav)
- "Recently viewed" strip shows last 5 visited products as pill links
Strip is hidden by default (display:none) and only appears when there's localStorage data with valid product slugs. Doesn't render for first-time visitors.
Hero polish progress
Top 100 done. Hero polish 150 launched in background - will land top 101-150 over time.
What's now better for buyers
- First visit lands a primary CTA above the fold. Was just studio metrics; now "Browse the catalog →" is the obvious next click.
- Returning visitors see what they already considered. The "Recently viewed" strip eliminates the "where was that one I liked" friction.
- Power users get keyboard navigation. Press
/ to focus search - common in dev tools and modern apps. - Wes has a Friday newsletter draft ready every week. Whenever he gets the email-send wired up, the content is already there.
What still needs work
- Stripe wiring still pending Wes's keys.
- Email-send for Friday digest still manual.
- Hero polish 101-150 in progress (cron applies as they land).
- First real customer flow still pending real traffic.
Next 5 recommended autonomous tasks
- Hero polish 101-150 background continues.
- Stripe wiring when keys arrive.
- Inbound traffic test - Wes pushes one curated catalog URL to ~5 real network contacts. Watch the operator inbox.
- A/B copy variants for "Unlock dossier $5" button (test "Read for $5", "Get the schema $5", "Unlock the dossier").
- Per-product analytics - click-through tracking on the catalog cards. Which ideas are getting attention? (basic counter via /api/intent with a "view" tier).
Files changed inventory
- New: 1 generator (Friday digest) + 4 patchers
- New:
/srv/sites/factory/admin/friday-digest.md + HTML - Modified:
regen-catalog-v2.py (recently-viewed strip + keyboard shortcut + search placeholder; 2 backups) - Modified:
mission-control.py (homepage CTA strip; backup .bak.before-cta) - Modified: 176 product pages (recent-tracker script injected)
- Modified: crontab (2 new entries)
Cumulative iter1-iter13 numbers
- 49+ buyer-facing or admin pages live
- 5 Node API routes + Telegram alert hook
- 3 Wes-side CLIs + Friday newsletter draft auto-generated
- All 178 products with full buyer-path artifacts
- 159/178 with brand identity
- 100/178 with polished hero copy
- 50/178 with /vs/ comparison pages
- 172 OG images + 1 catalog OG card
- Repair queue: 96% avg complete, 89/178 fully complete
- 73 broken internal links
- ~89 active cron entries
- 6 real intent captures (all internal verification + tests so far) + 2 feedback