47 Commits

Author SHA1 Message Date
Antoine
2da39613c7 fix: make Apec adapter real 2026-06-02 19:23:14 +02:00
Antoine
52b21b65c5 fix: hard-fail fetch-apec contract gaps 2026-06-02 18:59:14 +02:00
Antoine
97ed98c5de feat: add fetch-apec command 2026-06-02 18:47:40 +02:00
Antoine
47619abc08 feat: add Apec adapter scaffold 2026-06-01 14:30:34 +02:00
Antoine
5fefa3aab1 fix: keep earliest Apec bridge survivor 2026-06-01 14:22:15 +02:00
Antoine
debaab0947 fix: reassign Apec alias chains 2026-06-01 14:07:26 +02:00
Antoine
96b4cd37ec fix: merge Apec duplicate metadata 2026-06-01 13:54:22 +02:00
Antoine
96a7dcbe94 fix: preserve identifiers in Apec dedupe 2026-06-01 13:38:57 +02:00
Antoine
95b17a7c50 fix: preserve Apec listing metadata 2026-06-01 13:30:33 +02:00
Antoine
00f3717995 fix: dedupe mixed-key Apec listings 2026-06-01 13:22:53 +02:00
Antoine
96e2a7b178 fix: dedupe Apec listings by source job id 2026-06-01 13:13:24 +02:00
Antoine
e86257cbcc feat: add Apec normalization and dedupe 2026-06-01 13:06:37 +02:00
Antoine
ac78bee74b feat: add deterministic Apec query derivation 2026-06-01 12:57:52 +02:00
Antoine
4d57af0b86 feat: add Apec run artifact paths 2026-06-01 12:51:07 +02:00
Antoine
2765add571 feat: add Apec listing artifact models 2026-06-01 12:43:50 +02:00
Antoine
80f308356a chore: add Apec ingestion dependencies 2026-06-01 12:36:37 +02:00
Antoine
cfbd1943ec docs: add Apec ingestion plan 2026-06-01 12:33:16 +02:00
Antoine
ad36de0a3f docs: add Apec ingestion design 2026-06-01 12:12:06 +02:00
Antoine
fb150dbe69 Merge branch 'feature/candidate-profile-ingestion' 2026-05-29 10:16:17 +02:00
Antoine
0f6e641a99 fix: fail on empty cv text and strengthen warnings 2026-05-28 19:11:27 +02:00
Antoine
c4b9fc13ce feat: complete simplified candidate profile ingestion slice 2026-05-28 18:58:49 +02:00
Antoine
8d232060a0 fix: make build-profile output message neutral 2026-05-28 18:32:42 +02:00
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