Matches that keep themselves fresh
Your feed stopped going stale, and your applications stopped leaving you guessing.
This week rebuilt the two engines under everything else. Recommendations moved into persistent pools that pre-warm the moment your profile is ready, refresh nightly while you're active, and re-rank as soon as you edit your resume. The apply pipeline got honest: every automated application now ends in a clear state — submitted, retrying, or escalated to a human — instead of spinning forever. And when we couldn't guarantee quality mid-week, we paused one-tap applies rather than fake it. 114 pull requests.
Matches that keep themselves fresh
Your recommendation pool is now a living thing. It's computed and stored the moment your profile embeddings land, refreshed nightly for every active user, and re-ranked immediately after you change your resume — so the feed reflects who you are today, not who you were at signup. The recommended feed's live path got faster too.
Every application ends in the truth
Automated applications stopped disappearing into limbo. Failures are now classified into real outcomes — the job closed, the form needs something only you can provide, a temporary block — and each one either retries with purpose, ends terminally, or escalates to a human. The funnel numbers you see are backed by the backend, and the Applied column updates the instant an application goes out.
We paused one-tap applies — on purpose
Mid-week, the reliability data said one-tap applies weren't consistently meeting our bar. So we paused them: Apply Now routes you to the employer's page while the hardening work above proves itself. Shipping fewer applications beats shipping broken ones — the pause is the feature.
Also shipped this week
114 total pull requests
- Resume editing reached parity everywhere: the profile editor now matches the pack editor, with PDF-accurate formatting
- Messages got friendlier: applied threads show your pack, and empty and loading states stopped feeling broken
- A feedback page inside the app — notes land directly with the team
- Salary numbers now require verbatim evidence from the posting — no evidence, no number
- Posted pay periods (hourly vs. annual) survive from the source all the way to display
- Onboarding spotlight shows once per login instead of on every visit
- Matches search and location filters got a polish pass
- Failed-application emails link straight to the pack so you can act on them
- Email delivery is tracked end to end now, with per-event receipts
- Mobile bottom-nav tabs centered properly