Releases: Darpan00720/career-intelligence-engine
Release list
v7.2.0 — Netherlands + Italy focus, English-only, Apify removed
Minor release. Two new search rules + Apify removal.
1. Geography — Netherlands + Italy only
GEO_COUNTRIES=it,nl(set by run_graph.py / .env) restricts search, ingestion, prefilter AND the Excel export to NL + IT (plus generic remote/Europe-wide). Germany/Spain/UK/France/etc. are dropped.- Whole-word matching ("roma" inside "Romania" no longer false-matches Italy) + Italian/Dutch provinces & administrative markers ("Provincia di", "Citta Metropolitana", Noord-Holland, ...), so e.g. "Cameri, Provincia di Novara" is correctly kept as Italy.
- Code default is empty (legacy EU-wide) so pipeline tests stay valid — same convention as INTERN_ONLY / ENABLE_*.
2. Language — English-sufficient roles only
- The eligibility language gate now strips HTML before matching and catches the "Italian (fluent)" word-order (e.g. Doctolib's "Italian (fluent) and English (fluent)"), which previously slipped through because HTML tags split the words. A mandatory non-English language => rejected; "a plus / preferred" => kept.
NON_ENGLISH_AUTO_REJECTis now env-driven (was hardcoded, ignoring .env) and drops JDs written in a non-English language.- The export re-runs the gate per row, so roles scored before the fix are also dropped from the dashboard.
3. Apify removed
agents/apify_search.pydeleted; no imports remain; requirements.txt & .env.example Apify-free; code comments cleaned; docs updated (+ SUPERSEDED banner on the Phase-2 spec). Sourcing is now Adzuna API + native ATS APIs (Greenhouse/Lever/Ashby/SmartRecruiters) + career-site connectors.
Result: jobs_master.xlsx is NL+IT, intern-only, English-sufficient (Doctolib PM dropped for mandatory Italian; Novara role recovered). 1204 tests passing.
v7.1.3 — Intern-only filter
Patch on v7.1.2.
- Intern-only mode (INTERN_ONLY=1, default): keeps ONLY internship / graduate-program / trainee roles; drops mid/senior roles (Product Manager, Senior PM, Analyst, Associate).
- Applied in the prefilter, job_ingestion, AND the Excel export (so legacy non-intern rows already scored in the DB no longer appear).
- Effect: jobs_master.xlsx went from 447 rows to 94, all internship/graduate.
- 1199 tests passing.
v7.1.2 — Adzuna search + every-run pipeline
Patch on v7.1.1.
- Adzuna source: official free REST API connector (aggregates LinkedIn/Indeed/company-site roles across EU countries — no scraping, no Apify). Enable with ADZUNA_APP_ID / ADZUNA_APP_KEY.
- Search every run: run_graph.py now runs the full pipeline on every run with no opt-in — search -> filter -> score -> documents (>=80%) -> Excel.
- Wired into both the graph and CLI search paths through the existing prefilter/score/export flow.
- 1197 tests passing.
v7.1.1 — Intern-level seniority filter
Patch on v7.1.0.
- Seniority filter: the graph pipeline now drops clearly-senior roles (senior/staff/lead/principal/director/VP/chief) so only internship/junior/entry roles are scored and shown. Intern/graduate signals override (e.g. "Senior … Internship" passes).
- Applied in both the PreFilter node and job_ingestion (the read path used when acquisition is off).
- Effect: scored set ~413 -> ~288; no Senior/Staff/Lead titles in matches.
- 1195 tests passing.
v7.1.0 — Career Intelligence: multi-source search, PreFilter & observability
Built on v7.0.0.
- Multi-source job search: Greenhouse, Lever, Ashby, SmartRecruiters, CareerSiteSource (JSON-LD/RSS); Apify (LinkedIn/Indeed/WTTJ) wired, off until verified actor ids.
- PreFilter LangGraph node + lightweight checkpoint state (~110x smaller).
- Observability: pipeline metrics, /api/v2/metrics/{funnel,scoring,acquisition}, and a /dashboard page.
- Fix: nested candidate_profile.json schema mapping.
- run_graph.py one-command runner.
- VERSION bumped to 7.1.0.
- 1193 tests passing.
v7.0.0 — LangGraph Coexistence Release
v7.0.0 — LangGraph Coexistence Release
Overview
v7.0.0 marks the completion of the LangGraph convergence initiative.
The repository has evolved from a read-only analysis overlay into a replay-safe, effect-capable graph execution engine that can coexist with the legacy pipeline while keeping full replacement as an intentionally deferred architectural option.
Highlights
LangGraph Capability Convergence
- Added replay-safe, side-effect-capable LangGraph execution
- Migrated all six legacy side-effect classes:
- Acquisition
- Score persistence
- Research
- Document generation
- Export
- Tracker updates
- Introduced terminal-stage orchestration for optional stages
Security Hardening
- API-key authentication
- Tenant isolation enforcement
- Tenant-aware LLM cache keys
- Improved rate limiting
- SQLite concurrency improvements
- Worker-pool retry and termination fixes
- CORS configuration support
- Dependency pinning and documentation updates
Reliability Improvements
- Real checkpoint/resume replay testing
- Idempotency guarantees across all side-effect classes
- Atomic document writes using temp-file + fsync + atomic replace
- Extensive replay and security test coverage
Architecture Decision
Adopted operating model:
- Legacy pipeline → Authoritative system of record
- LangGraph → Opt-in execution engine
- Replacement of the legacy orchestrator → Explicitly deferred
Validation
- Test suite: 1,151 passed, 2 skipped
- Replay safety validated through end-to-end checkpoint/resume tests
- All convergence work documented in
docs/CONVERGENCE.md
Status
Production-ready for coexistence mode.
Future work will focus on product capabilities and business value creation rather than architectural migration.
Career Intelligence Engine v6.0.0 – Planner-Driven DAG Orchestration Platform
Career Intelligence Engine v6.0.0
🚀 Highlights
- Planner-driven DAG orchestration platform
- Deterministic intent classification
- Dynamic dependency-based routing
- LangGraph checkpoint persistence
- Semantic matching and recommendation engine
- Opportunity intelligence and prioritization framework
- Parallel execution infrastructure
- Production-ready APIs and observability stack
- Extensive documentation and architecture specifications
- 1,101 automated tests passing
🏗️ Architecture Improvements
- ExecutionPlan and Task schemas
- Planner node with dependency resolution
- Dynamic router supporting scoped execution plans
- Supervisor completion tracking via completed_tasks reducer
- Persistent checkpoints and resumable workflows
- Modular agent runtime and orchestration framework
🧪 Quality Metrics
- Total tests: 1,103
- Passed: 1,101
- Skipped: 2
- Failures: 0
📦 Release Status
Production Ready ✅
This release establishes the foundation for planner-driven, dependency-aware, stateful AI workflow orchestration and advances the Career Intelligence Engine into a scalable multi-agent platform.