Extend CV classifier contract and provenance UI

This commit is contained in:
2026-04-01 11:06:55 +02:00
parent b283f8b9d2
commit f402213526
7 changed files with 49 additions and 17 deletions
+12 -4
View File
@@ -376,18 +376,24 @@ Return ONLY valid JSON with this exact shape:
"location": string|null,
"start": string|null,
"end": string|null,
"bullets": string[]
"bullets": string[],
"summary": string[],
"skills": string[]
}}
Rules:
- Preserve facts only.
- section must be one of the listed values.
- Use Work Experience only for job/employment blocks.
- For Contact blocks, keep title/company/start/end null and bullets empty.
- For non-work blocks, title/company/start/end should usually be null.
- Use Education only for degree/course/certification blocks.
- For Contact blocks, keep title/company/start/end null and bullets/summary/skills empty.
- For Professional Summary blocks, prefer summary for concise summary lines and keep bullets empty unless the source is already bullet-like.
- For Skills blocks, prefer skills for normalized skill items and keep title/company/start/end null.
- For non-work and non-education blocks, title/company/start/end should usually be null.
- location must look like a place, not a sentence.
- dates must be one of: year, month+year, dd/mm/yyyy, Present, Current.
- bullets should only be job tasks/achievements, not titles, companies, dates, or headings.
- bullets should only be concrete tasks/achievements/details, not titles, companies, dates, or headings.
- skills should be short normalized skill/tool terms, not sentences.
- If unsure, choose Other and keep fields null/empty.
Block:
@@ -405,6 +411,8 @@ Block:
"start": parsed.get("start"),
"end": parsed.get("end"),
"bullets": parsed.get("bullets") or [],
"summary": parsed.get("summary") or [],
"skills": parsed.get("skills") or [],
}