Repository navigation
JobCtrl v0.1.1
Immutable
release. Only release title and notes can be modified.
JobCtrl v0.1.1 is an early-access patch release focused on faithful resume editing and PDF export, safer tailoring, clearer provider failures, auditable compensation evidence, and more reliable pipeline recovery.
Highlights
Resume editing and PDF export
- Export a PDF from every production Plate-backed resume surface: Profile baseline, Preferences template preview, and Apply Review.
- Preserve browser-rendered typography, Unicode glyphs, spacing, page geometry, and line wrapping while keeping exported PDFs searchable and extractable.
- Avoid editor and audit controls, blank trailing pages, and text clipping at page boundaries in exported documents.
- Keep direct Plate edits synchronized with the canonical profile, including inserting new bullets without replacing existing achievements.
- Reorder experience entries with accessible move controls or newest-first ordering. The saved order now drives baseline and tailored text, HTML, and PDF output.
- Add optional position summaries, compact experience and date controls, improved spacing for roles without bullets, and an institution-and-year-first education layout.
- Show resume text size as a clear percentage.
Safer, more concise tailoring
- Treat per-role bullet limits as a ceiling and select the smallest evidence-backed set that covers the target role.
- Bind every tailored bullet and numeric claim to its exact source achievement, preventing metrics from being borrowed across achievements.
- Re-run provenance, fabrication, quality, and judge checks after voice edits so accepted artifacts preserve the meaning of their sources.
Better failure diagnostics and recovery
- Show privacy-safe provider failure counts and diagnostic dimensions in run details, clearly separated from JSON parsing failures.
- Recover terminal pipeline failures from Temporal history, reset exhausted stages correctly on retry, and honor saved internal concurrency.
- Present clearer progress, waiting and failure states, bounded source-family completion estimates, and targeted Tailor and Cover repair guidance.
Job import and compensation evidence
- Import a public job posting by URL from the Jobs page. Successful imports enter the normal score, tailor, cover-letter, and PDF preparation flow while Apply remains separate and explicit.
- Reject private, loopback, credential-bearing, and ambiguous destinations, and route blocked or paywalled pages to Manual Capture.
- Parse employer-posted salary ranges from descriptions and keep them distinct from market estimates.
- Add automatically refreshed, auditable compensation benchmarks with visible source lineage, confidence, sample support, freshness, geography adjustments, and formula inputs.
Upgrade notes
- Candidate Profile storage advances additively to schema 9. Existing supported databases migrate through the normal paired-backup, validation, rollback, and interruption-recovery path.
- There is no launcher protocol or signed-distribution schema change in this release.
Existing installations can update while preserving local data:
jobctrl updateFor a fresh install on an Apple-silicon Mac running macOS 15 or newer:
curl -fsSL https://jobctrl.dev/install.sh | sh
# or
brew install ebarti/tap/jobctrlMaintenance
- Simplified CI to native path-filtered GitHub Actions workflows with locked Python dependency testing.
- Added complete Dependabot coverage with a bounded update cadence.
- Updated
pypdfto 6.15.0 and Mermaid to 11.16.1.
Selected pull requests
- Plate editing, experience ordering, and PDF export
- Achievement fidelity in resume tailoring
- Privacy-safe provider failure diagnostics
- Public job import by URL
- Compensation evidence and benchmark lineage: #789, #793, #794, #795, #796, and #801
- Pipeline recovery and progress improvements: #806, #807, #808, #809, #810, and #812
Full changelog: v0.1.0...v0.1.1
JobCtrl remains Beta early-access software. Before connecting providers or enabling application capabilities, review the getting-started guide, data and safety boundary, and supervised-apply controls.