Truepick graduates from beta to its first stable release. This release is anchored by deterministic CV scoring — a seven-PR overhaul that makes the same candidate, same job, same settings always produce the same score, backed by a global fingerprint cache, whitespace normalization, and a full audit trail. The AI interviewer has been rebuilt on ElevenLabs + GPT-4o, interviews are now time-bound with per-job deadlines and automated reminders, and recruiters can schedule multi-interviewer panels with resume attachments or upload external transcripts for AI evaluation. A new embeddable job widget lets companies display live listings on any website with per-domain security. The release also delivers a redesigned dashboard, offer lifecycle tracking (accept/decline with reasons), an AI-powered candidate comparison report, and a complete UI overhaul — flatter design, dialog-based settings, and a rebuilt sidebar. Every dead beta feature has been removed to keep the platform honest and focused.
Same Candidate, Same Job, Same Score — Guaranteed
CV scoring was overhauled across seven PRs to achieve full reproducibility. This is the single biggest reliability improvement in v1.0.0.
What changed:
| Before (Beta) | Now (v1.0.0) |
|---|---|
| Re-scanning could produce different scores for the same candidate | A global fingerprint cache ensures identical inputs always return the same score |
| Whitespace or formatting differences in a CV caused cache misses | Unicode normalization (NFC), line-ending normalization, and whitespace-run collapsing before hashing |
| The LLM seed was static, allowing model-side randomness | A fingerprint-derived seed makes LLM output reproducible for the same input |
| 12 different code paths could trigger a first evaluation | A single `AiReviewService.reviewCandidate()` entry point with atomic cache claim |
| The decision gate mixed scores with warning flags | A single deterministic threshold — warnings are observability-only |
| Skill arrays in the prompt didn't match the fingerprint sort order | Skill and requirement arrays are sorted identically in both prompt and fingerprint |
| No record of the raw LLM response | Raw model output persisted as `audit.modelOutput` with version snapshot tests |
Why it matters:

AI Review now shows "Last edited by" with a history dialog — score comparison and before/after diffs for every edit
A New Voice for the AI Interviewer
The AI interviewer's voice and intelligence layers have been separated and upgraded:
| Component | Before | Now |
|---|---|---|
| Voice synthesis | OpenAI Realtime model (bundled) | ElevenLabs — higher-quality, more natural-sounding speech |
| Text generation | OpenAI Realtime model (bundled) | GPT-4o — stronger reasoning and more contextual questions |
| Architecture | Single monolithic model | Split pipeline — each component upgrades independently |
Behind the scenes:
Time-Bound Interviews with Automated Follow-Up
Interviews no longer stay open indefinitely. Each job now has an `interviewExpiryDays` setting (default: 7 days), and each candidate gets a calculated deadline.
What recruiters see:
Automated reminders:

Applicant list showing Overdue (red) and Due Soon (amber) badges with deadline filter controls
Panel Interviews, Properly Supported
The single interviewer email field has been replaced with a dynamic list, making panel interviews a first-class feature.
| Feature | Details |
|---|---|
| Multiple emails | Add as many interviewer emails as needed on both schedule and reschedule |
| Resume attachment | Candidate's job-specific CV attached inline (up to 10MB) or as a presigned download link (above 10MB) |
| Reschedule notifications | All panelists are notified with a clear diff showing what changed |
| Graceful fallback | If the CV is missing or too large, the invitation still sends without blocking |
Live Job Listings on Any Website
Companies can now embed a live, paginated job listing on their career page or any external website using a simple `<iframe>` tag with an API key.
How it works:
Security model:
| Control | How it works |
|---|---|
| Domain allowlist | Each embed token has a list of allowed domains — only listed domains can frame the widget |
| Dynamic CSP | Enforced via `Content-Security-Policy: frame-ancestors` headers per request, checked at the middleware level |
| Rate limiting | Applied to embed pages and token regeneration endpoints |
| Token validation | Invalid or expired tokens get `frame-ancestors 'none'` — the browser refuses to render |
For developers:
<iframe
src="https://truepick.ai/job-list/embed?apiKey=your_embed_token"
width="100%" height="600px" frameborder="0"
style="border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1);"
title="Job Listings">
</iframe>From "Offer Sent" to "Accepted" or "Declined"
The Application Journey pipeline now tracks the full offer lifecycle instead of stopping at "Offer Extended."
New statuses:
| Status | What happens |
|---|---|
| Offer Accepted | Green checkpoint in the pipeline, acceptance timestamp recorded, confirmation email sent to the candidate |
| Offer Declined | Red checkpoint with decline reason displayed inline, notification email sent to the recruiter |
For recruiters:

Application Journey showing Offer Declined with the decline reason displayed below the step
Side-by-Side Reports with PDF Download
Recruiters can now generate an AI-powered comparison report for 2–4 candidates on the same job. The report evaluates candidates against the job description criteria, showing AI scores, skill matches, and strengths side by side, with a downloadable PDF for offline review or sharing with hiring managers.

Side-by-side candidate comparison against JD criteria with downloadable PDF
Everything Important, One Screen
The tabbed dashboard has been replaced with a compact single-page grid layout that shows the full hiring funnel at a glance.
| Before | Now |
|---|---|
| Multiple tabs to switch between | Single scrollable page |
| Low-value charts taking up space | Funnel conversion cards (Applied → Screened → Interviewed → Offered → Hired) |
| Single-metric trend line | 4-series trend chart (applications, interviews, offers, hires) |
| Basic interview stats | Interview outcome donut chart |

Compact grid dashboard — funnel cards, trend chart, and interview outcomes on a single page
AI Evaluation for Off-Platform Interviews
Recruiters can now upload a plain-text interview transcript to complete an interview that was conducted outside the platform — phone screen, in-person, or an external video call. The uploaded transcript goes through the same AI evaluation pipeline as a live interview, producing scores, summaries, and hiring recommendations.
How it works:
Stop a Running Upload Without Losing Everything
In-progress bulk CV uploads can now be cancelled with a single click:
Flatter, Faster, Dialog-First
The entire application UI was redesigned in this release:
| Area | What changed |
|---|---|
| Sidebar | Redesigned with collapse/expand, Truepick brand icon, workspace switcher dropdown, and circular profile avatar with initials fallback |
| Settings | Moved from full-page routes to dialog-based architecture — opens inline without leaving the current page |
| Shadows | Decorative shadows replaced with borders and background tints across 14 UI primitives and 20+ components |
| Dashboard | Compact grid layout replacing the tabbed design |
| Filters | Consolidated into a single popover with removable badge tags |
| Logo | Sidebar logo now links to `/dashboard`; Truepick logo embedded in invitation emails as inline CID attachment |
Dead Features Removed, AI Made Honest
Every incomplete or unused beta feature has been removed to keep the platform focused and the AI assistant honest about its capabilities:
| Removed | Why |
|---|---|
| Social media posting — tool, UI, DB table, and prompts | Feature was never production-ready |
| Calendly, Dynamics 365, Outlook, LinkedIn from Connections | Unused integrations; only Gmail, Google Calendar, Google Meet, Teams, and Zoom remain |
| Slack/SMS placeholders from interview reminders | Backend is email-only |
| Role picker from team invitations | All invites now default to admin |
Released on June 01, 2026
View all releases