Fix CV keyword extraction — derive from candidate CV, not matched job #55

Merged
claude merged 1 commits from feature/fix-keyword-extraction-prompt into main 2026-06-09 13:40:10 +00:00
Member

Problem

Keywords extracted during CV-to-job matching were being influenced by the job description, returning terms like DevOps Engineer, C#, AWS for a Software Architect CV matched against a DevOps posting. These keywords flow into cv-search-job and drive job-board searches — so misaligned keywords produce irrelevant results.

Fix

Updated the keywords instruction in ai.cv-match.system-prompt (en + ro) to explicitly tell the LLM to derive keywords from the CV only — the candidate's seniority, primary role title, and core technologies they genuinely emphasize — regardless of the job being matched.

Change

Single migration FixKeywordExtractionPrompt in cv-matcher-data. No code changes.

Test plan

  • Run a CV match for a senior/architect profile against a mismatched job (e.g. DevOps posting)
  • Confirm keywords in the response reflect the candidate's actual role and tech stack, not the job's
  • Verify cv-search-job receives meaningful search terms for job board scraping
## Problem Keywords extracted during CV-to-job matching were being influenced by the job description, returning terms like `DevOps Engineer, C#, AWS` for a Software Architect CV matched against a DevOps posting. These keywords flow into `cv-search-job` and drive job-board searches — so misaligned keywords produce irrelevant results. ## Fix Updated the `keywords` instruction in `ai.cv-match.system-prompt` (en + ro) to explicitly tell the LLM to derive keywords from the **CV only** — the candidate's seniority, primary role title, and core technologies they genuinely emphasize — regardless of the job being matched. ## Change Single migration `FixKeywordExtractionPrompt` in `cv-matcher-data`. No code changes. ## Test plan - [ ] Run a CV match for a senior/architect profile against a mismatched job (e.g. DevOps posting) - [ ] Confirm `keywords` in the response reflect the candidate's actual role and tech stack, not the job's - [ ] Verify cv-search-job receives meaningful search terms for job board scraping
claude added 1 commit 2026-06-09 13:38:22 +00:00
The AI prompt now instructs the LLM to derive keywords entirely from the
candidate's CV (seniority level, primary role title, core technologies they
emphasize) rather than from the job description being matched. This ensures
the job-board search keywords used by cv-search-job represent who the
candidate actually is, not a mirror of the job they happened to match against.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
gelu approved these changes 2026-06-09 13:39:12 +00:00
claude merged commit a3567ce8e9 into main 2026-06-09 13:40:10 +00:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: AI/myAi#55