Commit graph

3 commits

Author SHA1 Message Date
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
5e63faba0c refactor: import detect_byok from cf-core in resume_matcher, remove local copy
Some checks failed
CI / Backend (Python) (push) Failing after 2m26s
CI / Frontend (Vue) (push) Failing after 22s
Mirror / mirror (push) Failing after 7s
Force-adds file from gitignored resume_matcher/ subtree — only CF-specific
patch files are force-added; upstream resume_matcher files remain excluded.
2026-04-25 16:46:25 -07:00
1d9ee9cff0 feat(resume-matcher): wire cloud session + user_id routing to cf-orch
Some checks failed
CI / Backend (Python) (push) Failing after 1m11s
CI / Frontend (Vue) (push) Failing after 21s
Mirror / mirror (push) Failing after 9s
- app/cloud_session.py: CloudSessionFactory(product="peregrine") from
  cf-core v0.16.0; get_session / require_tier FastAPI dependencies;
  session_middleware_dep sets request-scoped user_id ContextVar
- app/llm.py: _request_user_id ContextVar + set/get helpers;
  _allocate_orch_async includes user_id in payload when present so
  premium users get their custom model path from cf-orch UserModelRegistry
- app/main.py: session_middleware_dep wired as global FastAPI dependency;
  runs on every request, zero function-signature changes needed

Force-added to bypass resume_matcher/ gitignore (CF-specific patch files).
2026-04-24 17:31:43 -07:00