25 Commits

Author SHA1 Message Date
Antoine
d27c58014d feat: add one-command candidate profile build flow 2026-05-28 18:26:09 +02:00
Antoine
1879de68a8 fix: extract years of experience and accept French notes 2026-05-28 18:18:02 +02:00
Antoine
3c331ef687 feat: add canonical profile merger with warnings 2026-05-28 18:07:51 +02:00
Antoine
042feab4fd fix: relax cv experience parsing
Reject narrative verb-led bullets, allow short tech titles, and switch company prose checks to phrase-level matching so real employers like Made in Design are preserved.
2026-05-28 17:39:09 +02:00
Antoine
49cc4a9959 fix: relax cv title parsing
Allow lowercase, mixed-case, and numeric experience titles while rejecting label-like lines without colons via a small blocked-label set.
2026-05-28 17:28:16 +02:00
Antoine
19a1731349 fix: broaden cv parsing for french labels
Recognize French section labels, allow clear title connector company lines across French and English forms, and keep prose fragments out of experience parsing.
2026-05-28 17:18:46 +02:00
Antoine
77d2f0f5c6 fix: tighten french cv heuristics
Reject au sein prose continuations and recognize dotted MSc/BSc degree variants in education parsing.
2026-05-28 17:05:17 +02:00
Antoine
a4c1ff3c0b fix: broaden cv heuristics for french cvs
Handle French experience connectors, common degree forms, and en/em dash bullets while keeping the extraction deterministic and narrow.
2026-05-28 16:56:31 +02:00
Antoine
0eac9856da fix: parse cv bullets and education entries
Normalize leading bullet markers before parsing and extract simple education entries from heading-led or keyword-plus-institution lines.
2026-05-28 16:43:11 +02:00
Antoine
fe201831ba fix: tighten cv prose-tail rejection
Reject experience-like lines when the company side continues with prose, including in-Paris and before-moving patterns, while preserving valid single-word titles and lowercase company names.
2026-05-28 16:31:36 +02:00
Antoine
c57d9b0275 fix: relax cv experience line heuristics
Allow single-word titles and lowercase company names while rejecting prose fragments that continue after the company name.
2026-05-28 16:24:23 +02:00
Antoine
544b5892fa fix: tighten cv extraction heuristics 2026-05-28 14:34:37 +02:00
Antoine
df140c3c77 feat: add deterministic CV extraction 2026-05-28 14:23:05 +02:00
Antoine
ddd3c9d78a fix: validate markdown list sections 2026-05-28 14:02:32 +02:00
Antoine
17800a5f07 feat: add light markdown candidate profile parser 2026-05-28 13:43:18 +02:00
Antoine
0ce4ca0ee5 fix: validate canonical yaml root 2026-05-28 13:30:01 +02:00
Antoine
1b4e901afe feat: add canonical candidate profile output model 2026-05-28 13:16:21 +02:00
Antoine
a0522c316e fix: restore build-profile cli surface 2026-05-28 13:02:24 +02:00
Antoine
ac9616080b fix: align candidate profile CLI contract 2026-05-28 12:54:48 +02:00
Antoine
4b2ce3b465 feat: add candidate profile CLI skeleton 2026-05-28 12:30:57 +02:00
Antoine
e171228626 docs: simplify candidate profile ingestion plan 2026-05-28 12:23:23 +02:00
Antoine
309aa2f4be chore: ignore local worktrees 2026-05-28 12:20:36 +02:00
Antoine
654bd2810b docs: simplify candidate profile ingestion design 2026-05-28 12:11:19 +02:00
Antoine
89434e35b4 init commit 2026-05-27 16:09:28 +02:00
Antoine
08df32da53 docs: add candidate profile ingestion design 2026-05-26 23:10:04 +02:00