Repository navigation
Releases: jortega0033/open-vacancy-radar
Release list
v0.1.4
Release notes: v0.1.4
Windows x64 release.
The maintainer reported the clean-machine QA (#354, #39) as done before this release.
What's new since v0.1.3
Built from the 101 commits between v0.1.3 and master. The PR numbers below point to the full
history.
Search and discovery sources
- Czech MPSV open vacancy data is available as a source. It is off a role-gated scan and keeps
only the newest 5,000 rows. Personal contact details are not ingested (#615). - TheirStack paid Jobs API is off unless you set the
THEIRSTACK_API_KEYenvironment variable and
enable the source (#616). - PhilJobNet is off by default. A terms review is still pending, so it stays opt-in (#618).
- An opt-in background ATS source scout runs in the desktop lifecycle (#614).
- Y Combinator Startup Jobs and Work at a Startup are marked prohibited. There is no scraper, no
provider and no login automation, and AI web discovery drops those hosts (#619, #620). - On-demand AI web search for vacancies (#410). Results with no score rank by query-match strength
before recency (#409). On-site and hybrid vacancies are flagged (#596). - Scans that match nothing keep the previous report and show a hint (#572, #583). Browse-all
scans ignore leftover filters (#406), and just-submitted role and location filters apply to
live results (#397). - Secondary Search filters moved into one Filters popover with active-filter chips (#606).
- Source access desk research was added for further candidate sources (#613, #621). It does not
add sources by itself.
Applications and CV tailoring
- A tailoring case flow for CVs: case inputs and job-description completeness gating, requirement
and evidence review with per-fact and per-wording approval, a hardened assembler, export of a
frozen snapshot with DOCX validation, and main-process enforcement of source review (#430 to
#433, #437, #438, #439). - Every PDF page can be read inside the review panel, and approved claims are checked against the
PDF text (#440). - A reviewed AI transcription fallback for scanned PDF CVs (#411).
- A local MCP layer for the tailoring case: transport, grants, audit, staging layer and tools
(#420, #423, #426). - Clearer review outcomes, undoable skip and a two-pane review dialog (#517). Answering "I don't
know" closes a requirement question as a confirmed gap (#581). - Letters: export file names carry the right extension and company (#592), a letter saved from the
review hand-off links to its application (#603), and a missing cover letter now says why and
offers Try again (#594). - A one-time Support dialog after the first sent application, plus a Support section in Settings
(#520). The setup checklist can be reopened from Settings (#591). - Diagnostics include engine, page and provider state with a reviewable preview, and file paths
containing spaces are redacted (#518, #600).
UX text and accessibility fixes
- Shorter text across Search, CV, applications, letters, Settings and runtime pages, with
technical internals moved to Advanced, and no dashes or jargon in UI text, kept in check by a
copy test (#516, #537, #542, #543, #544). - Accessibility: scan announcements, keyboard zoom, control contrast, reduced motion (#512),
readable secondary text and a shared warning banner (#515), shared Tabs and Menu components
(#513), and a jsx-a11y lint rule with an axe audit that fails only on new violations (#519,
#598). - Guided provider-limit notices (#546, #547, #570) and plain AI helper errors with Try again
(#514). - Layout fixes: saved jobs table at 1280px and desktop widths (#511, #571), at least four Search
rows at 1000x700 (#576), banner buttons within bounds (#567), sidebar badge shows the count only
(#566), dark theme hint contrast (#568), and no raw HTML tags in excerpts and job descriptions
(#574). - Other fixes: an approved CV is no longer revoked by unrelated actions (#584), saved search role
and date show after restart (#602), and the Maximum projects field no longer silently blocks
Save (#504).
Packaging and CI
- Packaged Windows smoke, an NSIS lifecycle gate, and a migration and recovery runbook (#617).
- Daemon startup: a slow-but-alive boot gets one more ready window before respawn (#429), and the
app attaches to the winning daemon on a lock conflict (#424). - Test stability: raised timeouts and limited CI parallelism (#597), fake timers for crawler
timeout tests (#586), and several flaky suites made deterministic (#417, #422, #569, #604). - A canonical capability matrix with a mechanical check (#612).
Dependencies
- Bumps include @electron/rebuild 4.2.0 (#226), @testing-library/jest-dom 7.0.1 (#224),
globals 17.13.0 (#610), @types/node 22.20.5 (#609), the production minor and patch groups
(#425, #607), GitHub Actions (#244) and cairosvg for the asset scripts (#14).
Existing MVP capabilities
- Vacancy discovery with progressive results, deduplication, source warnings and filters for role
or keyword, location, employment type and advertised salary. - Saved jobs, application tracking, CV library, letter generation and the human-reviewed Search to
Applications flow. - Local-first storage with no account, analytics, cloud sync or automatic submission to real
employers.
Safety and privacy
Automated form filling and submission remain enabled only for the bundled test fixture. Real
applications require explicit human review and submission on the employer site.
AI-assisted CV parsing, review, tailoring, matching, interview prep, letter drafting, scanned-PDF
transcription and AI web search send the relevant CV, application and vacancy text through the
locally installed Claude Code or Codex CLI selected by the user. The app stores no provider API
key. Generated output does not overwrite the master CV, application record or letter unless you
explicitly save it.
New sources and privacy:
- MPSV is public, keyless open data. Its dataset is flagged as containing personal data, so
contact details are not ingested. - TheirStack sends your search query to a paid third-party API with the key you provide. It is
disabled until you enable it. The API charges one credit per returned job to the account that
owns the key. - PhilJobNet is fetched without login and the Apply login is never followed. It stays off until
you enable it. - The ATS source scout is opt-in.
- Y Combinator hosts are blocked by policy. A pasted job description or an external employer link
still works through the manual flow, and OVR does not fetch the YC page behind it.
See docs/privacy.md and docs/job-source-evidence.md for
the full detail.
Known limitations
- Windows 10 or later, x64 only.
- The installer is unsigned. Windows SmartScreen may show an unknown-publisher warning.
- Claude Code or Codex must be installed and authenticated separately for AI features.
- No in-app backup, restore, automatic update or production auto-submit support.
- Public vacancy cache has no automatic retention limit.
- MPSV keeps only the newest 5,000 rows.
- A Dependabot high alert on http-cache-semantics is open. It is a dev-only dependency reached
through electron-builder, and no patched version exists.
Deferred
v0.1.3
Release notes: v0.1.3
Windows x64 MVP release candidate for clean-machine testing.
Independent acceptance is tracked in issue #354.
What's new since v0.1.2
Search and matching
- Live scan progress no longer dims the results/detail pane; a saved report and an in-progress
rescan can be viewed side by side with an explicit saved/live toggle. - "Why this matches you" now shows the full deterministic profile-score breakdown (technical/role/
seniority fit, matching skills, gaps) for freshly scanned vacancies, not just a bare score. Older
saved reports without a breakdown say so honestly rather than showing a stale or invented one. - ATS fit replaces its four fixed prose sections with a requirement-by-requirement evidence matrix:
each requirement is anchored to a job-posting quote and a CV source, with an explicit matched /
gap / unknown status -- never a numeric score or percentage. - Resume audit accepts an optional target-role focus, independent of any vacancy.
- CV upload now accepts DOCX files, alongside PDF/TXT/MD.
- A capped, no-auth InfoSec Job Board source is available for cybersecurity roles (see "Safety and
privacy" below for exactly what it does and does not send).
Applications
- Saved answers: an answer you write for a recurring application-form question can be saved and
reused on a later application with one explicit "Use this answer" click -- never auto-filled.
Manage saved answers from Settings > Workspace. - Prepare interview: a grounded, review-only prep pack (likely questions, claims to be ready to
defend, gaps and how to bridge them, STAR candidates, questions to ask, a before-the-call
checklist) for an application in recruiter-screen or interview stage, built only from data
already in your workspace. Nothing is invented, missing context is always stated as missing, and
nothing is saved automatically.
Fixes
- The Search page's "no search profile yet" state no longer surfaces a raw filesystem error.
- The vacancy list no longer collapses to a near-invisible sliver at narrow window widths.
- Escape now closes every dialog, drawer and popover in the app.
- A duplicate-application race, two discovery sources that were feeding the wrong text into the
job-description field, and a cross-origin iframe field-fill path (a real data-exposure risk) are
all fixed, following a ground-up architecture and security audit of the whole Search-to-Apply
pipeline. - Local workspace database and generated-artifact file permissions are hardened to match the
daemon's own stores; a stale daemon lease is now reconciled rather than trusted verbatim on
startup, backed by a bounded auto-respawn with backoff.
AI Runtime
- The provider panel now shows context-window pressure and rate-limit headroom for a running
session, keeps a bounded store of full tool output, and supports bounded search over session
history.
Existing MVP capabilities
- Vacancy discovery with progressive results, deduplication, source warnings and filters for role
or keyword, location, employment type and advertised salary. - Saved jobs, application tracking, CV library, letter generation and the human-reviewed Search to
Applications flow. - Local-first storage with no account, analytics, cloud sync or automatic submission to real
employers.
Safety and privacy
Automated form filling and submission remain enabled only for the bundled test fixture. Real
applications require explicit human review and submission on the employer site.
AI-assisted CV parsing, review, tailoring, matching, interview prep and letter drafting send the
relevant CV, application and vacancy text through the locally installed Claude Code or Codex CLI
selected by the user. The app stores no provider API key. Generated reviews, prep packs and drafts
do not overwrite the master CV, application record or letter unless you explicitly save them.
The daemon ships one reviewed MCP provider, InfoSec Job Board: a public, no-auth vacancy-search
server. It needs no credential from you, is not part of the automatic vacancy scan, and has no
screen in the app yet -- only the daemon and Electron's typed bridge can reach it today. A search
through it sends only your search query and a bounded result limit; no CV, letter, application
answer, or Claude/Codex credential is ever part of that request path. See
docs/privacy.md for the full detail, including the exact retention bound.
Known limitations
- Windows 10 or later, x64 only.
- The installer is unsigned. Windows SmartScreen may show an unknown-publisher warning.
- Claude Code or Codex must be installed and authenticated separately for AI features.
- No in-app backup, restore, automatic update or production auto-submit support.
- Public vacancy cache has no automatic retention limit.
v0.1.2
Release notes: v0.1.2
Windows x64 MVP release candidate for clean-machine testing.
Independent acceptance is tracked in issue #354.
What's new since v0.1.1
- Adds three grounded CV-only tools: resume audit, achievement rewrites and realistic best-fit role directions.
- Renames vacancy gap analysis to ATS fit and routes it through the shared generation input bundle, including reviewed CV facts, complete-posting requirements and input-completeness warnings.
- Keeps ATS-fit and CV-tool results review-only and copyable. No result automatically changes the master CV.
- Groups CV-only and vacancy-specific actions more clearly and verifies the controls at supported desktop window sizes.
Existing MVP capabilities
- Vacancy discovery with progressive results, deduplication, source warnings and filters for role or keyword, location, employment type and advertised salary.
- Saved jobs, application tracking, CV library, letter generation and the human-reviewed Search to Applications flow.
- Local-first storage with no account, analytics, cloud sync or automatic submission to real employers.
Safety and privacy
Automated form filling and submission remain enabled only for the bundled test fixture. Real applications require explicit human review and submission on the employer site.
AI-assisted CV parsing, review, tailoring, matching and letter drafting send the relevant CV and vacancy text through the locally installed Claude Code or Codex CLI selected by the user. The app stores no provider API key. Generated CV reviews and drafts do not overwrite the master CV.
Known limitations
- Windows 10 or later, x64 only.
- The installer is unsigned. Windows SmartScreen may show an unknown-publisher warning.
- Claude Code or Codex must be installed and authenticated separately for AI features.
- No in-app backup, restore, automatic update or production auto-submit support.
- Public vacancy cache has no automatic retention limit.
v0.1.1
Release notes: v0.1.1
Windows x64 MVP release candidate.
What's in
- Vacancy discovery across public ATS APIs, RSS feeds, official registries and curated sources,
with deduplication, progressive results and source warnings. - Search filters for role or keyword, location, employment type and advertised salary.
- Saved jobs, application tracking, CV library, CV matching and AI-assisted letter drafting.
- A direct Search to Applications flow. Preparing a vacancy creates a durable review item with
tailored documents when generation succeeds. - Manual swipe review for application decisions. Real employer links always continue with explicit
human review and submission on the employer site. - Local-first storage, no account, no analytics and no cloud sync.
- A complete application-data reset that clears personal records, generated application files,
application queue ids, automation grants and the search profile. Public vacancy cache remains.
Safety boundary
Automated form filling and submission are enabled only for the bundled test fixture. This release
has no production target policy that can automatically submit a real application. CAPTCHA,
unknown fields and unverified targets require human action.
AI-assisted CV parsing, tailoring, matching and letter drafting send the relevant CV and vacancy
text through the locally installed Claude Code or Codex CLI selected by the user. Provider terms
apply after the CLI sends that prompt. The app stores no provider API key.
Known limitations
- Windows 10 or later, x64 only.
- Installer and app are unsigned. Windows SmartScreen may show an unknown-publisher warning.
- Claude Code or Codex must be installed and authenticated separately for AI features.
- No in-app backup or restore. Follow the manual three-item backup procedure in
troubleshooting.md. - No automatic update mechanism. Install future versions manually.
- Public vacancy cache has no automatic retention limit. It can be deleted and rebuilt.
- No production MCP job-source provider is registered in this release.
Deferred
- Production auto-fill and auto-submit policies.
- In-app backup, export and restore.
- Code signing and macOS or Linux packages.
- Automatic vacancy-cache pruning.
Open Vacancy Radar 0.1.0 test build
Windows test installer built from master commit 236b9de.
SHA-256: 263FB0D0C5D73EDFCF70815E7A2F0E364AE2B5B28C6C35BF546656689DBFE9C2