# System Review — 2026-02-15
*Prepared by Rivet overnight, for Michael's morning brief*

## 🟢 What's Working

### Infrastructure
- **App (rivet.rateright.com.au):** Live and responding (200 OK)
- **Growth Engine (Railway):** Healthy, 142ms response time
- **VPS:** Stable, 2 vCPU / 8GB RAM, no resource alerts
- **Clawdbot (Rivet):** Running, heartbeats active
- **Clawdbot (Builder):** Running, separate gateway on port 18790
- **NEW: Direct Rivet↔Builder WebSocket bridge** — real-time comms via gateway protocol

### AI Team
- **Rivet (COO):** Operational, orchestrating via Opus
- **Builder (CC VPS):** Operational, has Claude Code Max, Agent Teams
- **Comms:** Gateway-to-gateway WebSocket protocol working (connect, wake, chat.send, status)

### Product
- **Voice-to-job posting:** Built (Feb 13)
- **Voice profile builder:** Live
- **18 critical audit items:** Complete
- **Security vulnerabilities:** Patched

### Builder's Overnight App Audit (Feb 15, 1:30am)
- **Bug fixed:** `/login` → `/auth/login` redirect (was 404)
- **Also added:** `/signup` → `/auth/signup` redirect
- **Build:** Clean, zero errors
- **All 7 public pages:** 200 OK
- **All 6 authenticated routes:** Properly redirect to login
- **Static assets:** All loading (CSS, JS, fonts, images, manifest, SW)
- **CSRF protection:** All POST routes covered
- **Secrets:** None exposed in source
- **RLS:** Only bypassed server-side with service key (correct)
- **11 commits ahead of origin** — ready to push

### Minor Technical Debt (Non-blocking)
- 21 `any` types in TypeScript
- 2 TODO comments in `use-notifications.ts`
- Geocode POST route missing CSRF (low risk)
- **Database sparse:** 10 users, 4 profiles, 1 company, 3 workers, 0 jobs, 0 matches

## 🟡 Needs Attention

### Missing Core Features
1. **Phone number collection at signup** — Workers sign up but we can't reach them by SMS/WhatsApp. Blocks outreach.
2. **Payments (Stripe)** — Not QA'd. Michael needs to test end-to-end manually.
3. **Domain migration** — Still on rivet.rateright.com.au, needs to be rateright.com.au
4. **Email delivery** — Unverified. Michael needs to check admin inbox.

### Marketing/Sales Infrastructure
- ALL SMS sequences DEACTIVATED (15 sequences, 51 enrollments cancelled Feb 13)
- SMS templates need rewriting ($50 flat fee, not 9.9%)
- No active outreach happening
- No Sales or Marketing agents deployed yet
- Marketing materials in Google Drive need pricing updates

### Data & CRM
- Growth Engine has 134 contacts (from Michael's phone)
- No fresh lead pipeline active
- Prospecting tools available but unused

## 🔴 Blockers (Need Michael)

| # | Blocker | Why It's Blocked | Impact |
|---|---------|------------------|--------|
| 1 | **Stripe payment testing** | Needs Michael's manual QA | Can't launch payments without this |
| 2 | **Domain switch** (rivet. → rateright.com.au) | DNS/Fly.io config | Looks unprofessional for launch |
| 3 | **Supabase avatars bucket** | Needs Michael's dashboard access | Profile images broken |
| 4 | **`.next/` ownership fix** | Needs sudo access | Build reliability |
| 5 | **ClickUp cancellation** | Still in Michael's email inbox | Wasting money |
| 6 | **SMS template approval** | Need Michael to review/approve rewrites | Can't restart outreach |
| 7 | **Email delivery check** | Michael needs to verify admin inbox setup | Transactional emails may not be landing |

## 📋 Recommended Priority Order

**This week (launch prep):**
1. ✅ Stripe payment QA (Michael tests manually, 30 min)
2. ✅ Phone number field at signup (Builder codes, 1 hour)
3. ✅ Fix any bugs Builder finds tonight
4. ✅ Domain migration (Michael + Rivet, 1 hour)

**Next week (soft launch):**
5. Restart SMS outreach with updated templates
6. Deploy Sales agent for lead nurturing
7. Worker acquisition campaign (backpacker hostels, Facebook groups)

**Week after (growth):**
8. Google Ads (search intent: "hire steelfixer Sydney")
9. Deploy Marketing agent for content creation
10. OpsMan MVP for contractor retention

## 🤖 Sales & Marketing Agent Design

### Sales Agent (Deploy This Week)
**Purpose:** Lead nurturing, CRM management, outreach drafts
**Model:** Kimi (cost efficient), Opus for dirty data
**Capabilities:**
- Monitor Growth Engine for new leads
- Draft follow-up messages for Michael's approval
- Competitive intelligence gathering
- Signup support flow for both workers AND contractors
- Track pipeline metrics

### Marketing Agent (Deploy Next Week)
**Purpose:** Content creation, social media prep, SEO
**Model:** Kimi default
**Capabilities:**
- Write social posts (Facebook, LinkedIn) for approval
- SEO content (blog posts about construction hiring)
- Backpacker hostel pitch materials
- Worker testimonial collection and formatting
- Competitor monitoring

### Comms Gateway (Critical for Both)
**Purpose:** Quality gate for ALL external communications
**Model:** Opus (non-negotiable — handles dirty data)
**Rule:** Nothing goes out without passing through this agent

## 💡 What's Next for the Team — Brainstorm

### Immediate (This Weekend)
- Builder finishes bug fixes
- Rivet prepares sales agent deployment spec
- Michael does 30-min Stripe QA session

### Short Term (This Week)
- Soft launch with 10-20 known contacts
- Get first paid transaction through the platform
- Validate the $50 model works end-to-end

### Medium Term (Feb-March)
- Scale to 50+ workers, 10+ contractors
- Automated matching working
- First month of operations data

### Long Term (Q2 2026)
- OpsMan MVP for contractor retention
- Growth Engine API integration
- Multi-city expansion (Melbourne?)

---
*Generated by Rivet at ~1:45am AEST, Feb 15 2026*
*Builder is simultaneously testing the app for bugs*
