Skip to content

career-ops: v1.17.0

Choose a tag to compare

@github-actions github-actions released this 05 Jul 09:19
2351915

1.17.0 (2026-07-05)

Features

  • add the opt-in experimental web UI surface (web/) — isolated versioning, CI and packaging (432c3c5)
  • add: /career-ops add — fetch a project/paper/role into cv.md and article-digest.md (#1476) (933c353)
  • agent-inbox: queue requests for the next session (#1472) (182554d)
  • apply: pre-scan forms for knock-out questions before drafting (#1463) (05a85b8)
  • contacto: short-greeting variant for chat-style outreach (#1477) (8cf19a7)
  • email: formal application email drafts — draft-only, never sends (#1515) (f7dfb88)
  • experimental local-first web UI (opt-in alpha) (#1451) (1791dc4)
  • find: resolve a company/role/number query to its full pipeline identity (#1439) (3fd0a06)
  • followup: seed a pinned first follow-up when a row turns Applied (#1468) (ea6f608)
  • i18n: add Korean career-ops modes (#1457) (ced5f74)
  • i18n: translate interview modes to French (#1526) (53f77a0), closes #1489
  • i18n: translate interview modes to Spanish (#1523) (3657bf0), closes #1490
  • oferta: flag 'remote' location contradicted by JD-body signals (#1459) (74b8fcb)
  • patterns: recruiting-process friction signal at company level (#1467) (dde05bc)
  • patterns: transcript-driven targeting correction (Step 1b) — closes #960 (#961) (ed497fb)
  • pipeline: optional per-offer note in the pipeline writer (#1483) (6435b1a)
  • portals: probe non-ATS boards through the provider layer (#1529) (ba83606)
  • profile: candidate contact-channel preference for outreach CTAs (#1557) (03a17b5), closes #1556
  • providers: add Get on Board (getonbrd) zero-auth provider (#1442) (c53a61c)
  • providers: Amazon (amazon.jobs) and Avature zero-token providers (#1480) (494e947)
  • providers: avature self-heals jobOffset→offset pagination (#1547) (7f1a171)
  • providers: beesite (milch & zucker) + softgarden providers (#1551) (220288e)
  • providers: Dassault Systèmes zero-token provider (Exalead XML) (#1498) (46c0e89)
  • providers: honour api: on workday and smartrecruiters (#1496) (f77f846)
  • providers: SAP SuccessFactors (RMK) zero-token provider (#1475) (67253c4)
  • providers: SuccessFactors CSB strategy + bounded health-probe budget (#1548) (81ab0ed)
  • registry: add startup boards plugin (#1413) (f2e1d08)
  • reserve-report-num: --count N contiguous range reservation (#1454) (a70dd61)
  • scan: report unreachable boards with error classification + doctor sweep (#1455) (fd3635f)
  • verify: detect duplicate and orphan reports (#1425) (#1441) (5c42df3)
  • web: Config microcopy humanized (P1.5) (#1538) (8ae3475)
  • web: cost affordance — CostBadge muted (P1.6) (#1536) (b212bb3)
  • web: dedupe bug reports at write — stable fingerprint + click-gated similar-issue search (#1473) (e13a4f3)
  • web: empty-state free-scan button (P0.1) (#1534) (28f12e3)
  • web: extract cleanChips to a tested module + tab/CR paste delimiter (#1516) (7e676f4)
  • web: inbox triage — Abundance → Triage → Shortlist → Opt-in Score (#1569) (f1e6cc0)
  • web: mobile tap-targets ≥44px + FAB clearance (#1542) (7f6fd1c)
  • web: orange hierarchy — brand-soft Mark-applied + inbox cost legend (P1.4) (#1537) (85d8290)
  • web: report progressive disclosure (P0.3+P1.8) (#1535) (30fa1d1)
  • web: richer bug-report diagnostics — data-shape fingerprint, core version, API errors (#1469) (6a13d8a)

Bug Fixes

  • correctness sweep across tracker, providers, and eval reporting (#1528) (bd2a44f), closes #1527
  • dedup: require exact company+role match so distinct same-company roles survive (#1458) (4f387f0)
  • infra: exempt web/ from the SYSTEM_PATHS coverage guard (isolation contract) (8a23564)
  • merge-tracker: detect TSV score/status column order by header (#1517) (423fc1f), closes #1427
  • merge-tracker: guard tier-3 fuzzy dedup with req/job number (#1525) (fdb4376), closes #1524
  • onboarding: auto-copy template seeds in doctor --json (#782, #1369) (#1369) (3c06b46)
  • paths: prefer cygpath over wslpath in toBashPath() (#1503) (b4f5a83)
  • pdf: use CSS @page setup for margins (#1563) (d057218)
  • plugins: harden manifest path containment against symlink traversal (#1532) (9d0be62)
  • prevent notion plugin from mangling slash-formatted scores (#1414) (#1417) (6ea2e5f)
  • providers: avature parser tolerates two live tenant markup variants (#1541) (1f59f2b)
  • providers: harden workday pagination against 429s, API caps, and dateless tenants (#1419) (13f80d5)
  • providers: update Glints API to v2-alc/searchJobsV3, document Jobstreet GraphQL migration (#1173) (cf863f7)
  • providers: workday honors ctx.maxPages so the liveness probe stops cleanly (#1553) (39216f0)
  • scan: load .env credentials via optional dotenv import (#1507) (5066b28)
  • update: make updater timeout budgets configurable (#1564) (525c9c0)
  • update: preserve local CLAUDE.md additions during /career-ops update (#1446) (e5f5d25)
  • updater: add .claude/settings.json to USER_PATHS (#1471) (aa8000d), closes #1408
  • web: bump FOLLOW-UPS DUE tap-targets to 44px on mobile (#1568) (f5e8362)
  • web: pin turbopack.root to prevent Windows postcss OOM (#1530) (8560153)
  • web: point the 'Get one free' link at the free-AI-engine guide (#1540) (8369b40)
  • web: restore the report-a-bug kit lost between the RC branch and main (#1456) (b11231f)