feat: cover letter training export (Phase 1) #111

Merged
pyr0ball merged 9 commits from feat/cover-letter-training-export into main 2026-05-04 08:55:16 -07:00

9 commits

Author SHA1 Message Date
424a946ca0 chore(release): v0.9.2 changelog entry
Some checks failed
CI / Backend (Python) (pull_request) Failing after 1m0s
CI / Frontend (Vue) (pull_request) Failing after 21s
2026-05-03 07:27:13 -07:00
f42a515629 fix: wizard step numbering and loadDbPairs race on mount
Some checks failed
CI / Backend (Python) (pull_request) Failing after 1m51s
CI / Frontend (Vue) (pull_request) Failing after 21s
Insert Training at step 4 in WIZARD_STEPS (7→8), STEP_LABELS, and
STEP_ROUTES. Bump Identity→5, Inference→6, Search→7, Integrations→8 in
their respective saveStep calls. Cap resumeAt at 8. Await loadStatus()
before loadDbPairs() in FineTuneView onMounted so optedIn is set before
the early-exit guard runs.
2026-05-03 01:34:06 -07:00
0e40750450 feat: add WizardTrainingStep opt-in consent step to onboarding
Inserts a new optional Training Export step between Resume and Identity
in the setup wizard. Users can opt in to saving cover letters for
fine-tuning dataset export. Consent copy distinguishes local vs. cloud
storage. WIZARD_STEPS bumped to 7; router, and adjacent step
back/next navigation updated accordingly.
2026-05-03 01:11:06 -07:00
6bfb2bf3f7 feat: add Training Export and From Applied Jobs sections to FineTuneView (a11y-correct) 2026-05-03 01:04:43 -07:00
8e6cc02295 feat: add training export state and actions to fineTune store 2026-05-03 00:14:22 -07:00
25473aef77 feat: add training export API endpoints to dev_api.py
- PATCH /api/settings/fine-tune/opt-in — toggle training_export_opt_in in user.yaml
- GET /api/settings/fine-tune/db-pairs — list DB jobs with exclusion flags (403 without opt-in)
- PATCH /api/settings/fine-tune/db-pairs/{id}/exclude|include — per-job exclusion toggle
- GET /api/settings/fine-tune/export — NDJSON streaming download of all training pairs (DB + file)
- POST/GET /api/settings/fine-tune/cloud-request|cloud-status — Phase 2 stubs (501)
- finetune_status now includes opted_in field
- 6 new API tests; all 17 tests pass
2026-05-02 23:40:44 -07:00
3b52844382 feat: add training_export_opt_in field to UserProfile 2026-05-02 23:32:34 -07:00
148aaf00cb feat: add training export DB migration and db.py helpers
Add excluded_from_training column to jobs table (migration 009 + _MIGRATIONS
entry for existing DBs). Add get_db_pairs(), get_training_pairs(), and
set_training_exclusion() helpers for the cover letter training export pipeline.
Add test_training_export.py with 8 tests covering all helpers (all passing).
2026-05-02 23:21:34 -07:00
b03add8663 feat(resume-matcher): tier-aware writing model routing via cf-orch
Premium/ultra users with a custom_writing_model in their session are
routed to that model as the first cf-orch candidate; all other tiers
use the shared Qwen2.5-3B-Instruct base. complete_json() is unchanged
since fine-tuned writing models aren't trained for structured output.

Adds _request_tier and _request_writing_model ContextVars. Resolution
order: USER_WRITING_MODELS env var (Monday path) then Heimdall meta
(future path via peregrine#110).
2026-04-26 09:18:55 -07:00