चेंजलॉग
GitHubहर उल्लेखनीय बदलाव, रिलीज़ दर रिलीज़। यही फ़ाइल रिपॉज़िटरी में मौजूद है और सभी 17 भाषाओं में अनूदित है।
परिवर्तन-सूची (हिन्दी)
यह परिवर्तन-सूची v1.122.0 से शुरू होती है — वह संस्करण जिसमें हिन्दी स्थानीयकरण जोड़ा गया। पिछले संस्करणों के लिए 🇬🇧 CHANGELOG.md देखें।
[1.134.1] — 2026-08-05
वैलिडेशन-हार्डनिंग — एक पूर्ण-प्रोजेक्ट ऑडिट से सामने आए सुधार।
सुधारा गया
successfactorsअब मिड-स्कैन विफलता पर स्क्रैप किए गए जॉब्स को नहीं छोड़ता (v1.134.0 के dead-board-throw पोर्ट में एक रिग्रेशन) — इसके पेजिनेशन लूप में कोईtry/catchनहीं था, इसलिए पेज 2+ पर विफलता (पेज 1 सफल होने के बाद) थ्रो कर देती थी और पहले से इकट्ठा किया गया सब कुछ छोड़ देती थी; और यदि वह विफलता एक404(एक रेंज-से-बाहरstartrow) थी, तोen-scannerएक लाइव टेनेंट को दिनों तक मृत मानकर क्वारंटीन कर देता था। अब यहphenom/radancyजैसा व्यवहार करता है: पेज-0 विफलता अब भी थ्रो करती है (मृत बोर्ड), लेकिन बाद के पेज की विफलता आंशिक परिणाम बनाए रखती है।#/scanफ़िल्टर चिप्स अब कीबोर्ड-ऑपरेबल हैं (WCAG 2.1.1) — फ़ेसेट चिप्स (और “clear” चिप) क्लिक हैंडलर वाले स्पैन थे, लेकिन उनमें कोईtabindex/role नहीं था, इसलिए कीबोर्ड और स्क्रीन-रीडर उपयोगकर्ता उन तक न तो पहुँच सकते थे, न ही उन्हें टॉगल कर सकते थे। अब वेrole="button",tabindex="0",aria-pressed, और Enter/Space एक्टिवेशन के साथ आते हैं।- तीन हार्डकोडेड अंग्रेज़ी स्ट्रिंग्स अब स्थानीयकृत हैं —
#/scanट्रस्ट-बैज टूलटिप,#/scanरीलोकेशन कॉलम हेडर, और#/dashboardस्कोर हेडर बेयर लिटरल थे जिन्हें i18n पैरिटी गेट नहीं देख सकता था (वे कभी कुंजियाँ नहीं थीं), इसलिए वे हर ग़ैर-अंग्रेज़ी लोकेल में अंग्रेज़ी में ही रह गए। अबscan.trustTip+scan.col.reloc(2 नई कुंजियाँ) +track.col.scoreका पुनःप्रयोग, एक सोर्स-स्टैटिक गार्ड के साथ।
[1.134.0] — 2026-08-05
पैरेंट career-ops v1.25.0 पैरिटी।
जोड़ा गया
- नया स्कैन स्रोत: getManfred (
manfred) — प्रकाशित सैलरी के साथ स्पेनिश/EU टेक भूमिकाओं का एक बोर्ड-वाइड फ़ीड,www.getmanfred.com/api/v2/public/offersसे (ज़ीरो-ऑथ, होस्ट-पिन्ड + HTTPS-ओनली, सिंगल-रिक्वेस्ट पूरा कैटलॉग)। स्रोत + अडैप्टर + एक CI-आइसोलेटेड सुइट (tests/sources-manfred.test.mjs); रजिस्ट्री अब 73 स्रोत = 68 EN + 5 RU (ALL_ADAPTERS68)।#/scanसोर्स फ़िल्टर में और cvstart.org लैंडिंग पर दिखता है।
सुधारा गया
- a16z Speedrun फ़ीड चुपचाप 50 जॉब्स तक सीमित हो रही थी (#2404) — फ़ीड एक पेज को 50 पर सीमित करती है, लेकिन स्रोत
PER_PAGE = 100का अनुरोध करता था, इसलिए पेजिनेशन पेज 1 के बाद रुक जाता था। इसे 50 पर सही किया गया। - मृत बोर्ड्स अब “लाइव लेकिन खाली” के रूप में पढ़े जाने के बजाय एरर थ्रो करते हैं (#2379) —
cryptocurrencyjobs,phenom,radancy,successfactors: एक फ़ेच विफलता जहाँ कोई भी अनुरोध कभी रिज़ॉल्व नहीं होता, अब थ्रो करती है (ताकि#/portalsहेल्थ और स्कैन एक वास्तविक विफलता दर्ज करें), उसे ख़ाली सूची में समेटने के बजाय; कम-से-कम एक सफलता के बाद स्कैन के बीच में हुई विफलता आंशिक परिणाम बनाए रखती है। - workable अब सार्वजनिक विजेट API का उपयोग करता है (#5ab8425) —
apply.workable.com/api/v1/widget/accounts/<slug>पर स्विच किया गया, जो एक बड़े अकाउंट की पूरी पोस्टिंग सूची एक ही अनुरोध में लौटाता है, इसलिए बड़े अकाउंट अब सीमित नहीं होते।
टिप्पणियाँ
- पोर्ट नहीं किया गया (केवल CLI-विशिष्ट या web-ui द्वारा मिरर नहीं किया गया): detect-reposts #2389 टाइटल-बकेटिंग परफ़ॉर्मेंस रीराइट; Unicode कंपनी-कुंजी फ़िक्स (web-ui का अपना ट्रैकर डीडुप पहले से ही non-Latin-सुरक्षित है);
scan --since;cv-facts; CV टेम्पलेट / PDF ऑडिट पास;doctor; modes untrusted-content निर्देश।
[1.133.1] — 2026-08-02
सुधारा गया
#/funded(फ़ंडेड कंपनियां) अब परिणाम दिखाता है — दो बग्स के कारण तालिका हमेशा “कोई फ़ंडेड कंपनी नहीं” दिखाती थी, तब भी जब पैरेंट कीcompany-funded.mjsएक पूरी सूची लौटाती थी। (1) व्यू परिणामों कोres.candidatesके अंतर्गत पढ़ता था, लेकिन पैरेंट उन्हेंcompaniesके अंतर्गत भेजता है (हर एक{ company, amount, round, funding: { sources: [{ source, url, observed_date }] } }); क्लाइंट अब सही कुंजी पढ़ता है और असली एविडेंस शेप को मैप करता है। (2) परिणाम तालिका अपनी सेल्स कोUI.el('tr', {}, …)में varargs के रूप में भेजती थी, लेकिनUI.el(tag, attrs, children)childrenको एक ही नोड या एक ऐरे के रूप में लेता है, इसलिए केवल पहला कॉलम (Company) रेंडर होता था — अब सेल्स को एक ऐरे के रूप में भेजा जाता है। एक वास्तविक ब्राउज़र में सत्यापित: चारों फ़ीड्स में 11 कंपनियां Company / Funding signal / Source / Date कॉलम्स के साथ और काम करने वाले एविडेंस लिंक्स के साथ रेंडर होती हैं, ज़ीरो कंसोल एरर्स। एक ख़ाली पास अब प्रति-स्रोत डायग्नोस्टिक्स भी दिखाता है, ताकि एक शांत न्यूज़ डे को ब्लॉक्ड फ़ीड से अलग पहचाना जा सके।tests/parity-routes-v1133.test.mjsमें रिग्रेशन गार्ड्स: फ़ेक पैरेंट स्क्रिप्ट अब असलीcompaniesआउटपुट शेप भेजती है (मूल फ़िक्स्चर ग़लतcandidatesशेप को दर्शाता था — यही वजह है कि यह बग ग्रीन शिप हो गया था), साथ ही सोर्स-स्टैटिक कैनरीज़ जो पुष्टि करती हैं किfunded.jsres.companiesपढ़ता है (कभीres.candidatesनहीं) और तालिका पंक्तियों को ऐरे चिल्ड्रन के साथ बनाता है (+1 → 2144)।
[1.133.0] — 2026-08-01
जोड़ा गया
- फ़ंडेड-कंपनी खोज (
#/funded, पैरेंट पैरिटी #2117) — एक नया रीड-ओनली व्यू जो पैरेंट career-ops कीcompany-funded.mjsकोGET /api/company-fundedके ज़रिए रिले करता है: सार्वजनिक, होस्ट-पिन्ड फ़ंडिंग फ़ीड्स (TechCrunch, PR Newswire, The Guardian, Hacker News) से खोजी गई हाल ही में फ़ंडेड कंपनियों की एक समीक्षा-पहले सूची। यह रिले स्क्रिप्ट को--json --dry-runके साथ चलाता है (stdout पर JSON, कोई फ़ाइल राइट नहीं), उपयोगकर्ता इनपुट को कभी--sourcesमें थ्रेड नहीं करता, रेट लिमिटिंग रखता है, और उपयोगकर्ता-ट्रिगर्ड है (एक Discover बटन, माउंट पर कभी नहीं)। नया रूट मॉड्यूलserver/lib/routes/funded.mjs+public/js/views/funded.js, Sourcing के अंतर्गत। - साप्ताहिक इंटरव्यू डाइजेस्ट (
#/interview-digest, पैरेंट पैरिटी #2129/#2130) — एक नया रीड-ओनली व्यू जो पैरेंट के ज़ीरो-LLMweekly-digest.mjsकोGET /api/interview/weekly-digestके ज़रिए रिले करता है: इंटरव्यू सेशन नोट्स का एक यांत्रिक रोल-अप — इस हफ़्ते आपने किन कंपनियों और राउंड्स के साथ इंटरव्यू दिया, बार-बार आने वाली दक्षताएँ, और सर्वश्रेष्ठ-प्रयास खुले गैप्स। वैकल्पिक?from=&to=रेंज तभी थ्रेड की जाती है जब दोनों वैधYYYY-MM-DDहों; एक खाली रेंज एक वैधavailable:trueडाइजेस्ट है।server/lib/routes/interview.mjs+public/js/views/interview-digest.jsमें जोड़ा गया, Analytics के अंतर्गत। - दोनों रिले पैरेंट स्क्रिप्ट के अनुपलब्ध होने पर (CI, स्टैंडअलोन इंस्टॉल) स्थापित fail-soft
available:falseअनुबंध का पालन करते हैं। 26 नई i18n कुंजियाँ ×17 लोकेल्स; CI-आइसोलेटेड सुइटtests/parity-routes-v1133.test.mjs(+5 → 2143)।
टिप्पणियाँ
- पैरेंट career-ops v1.24.0 से आगे बढ़ गया है, Next.js web/ ऐप के Follow-up Tracker पेज (#1422) और बैकएंड PDF रेंडर (#2182) के साथ — पोर्ट नहीं किया गया: web-ui के पास पहले से अपना फ़ॉलो-अप रिले और PDF रनर हैं, और अंतर्निहित
followup-cadence.mjsहार्डनिंग शेल-आउट रिले के ज़रिए मुफ़्त में मिल जाती है।set-status.mjs/tracker-utils.mjsपरिवर्तन CLI-आंतरिक हैं और मिरर नहीं किए गए हैं।
[1.132.0] — 2026-07-31
बदला गया
#/scanपरिणाम-रेंडरिंग उपप्रणाली कोpublic/js/lib/scan-results.jsमें निकाला गया (फ़ाइल-आकार-अनुबंध ऋण —public/js/views/scan.jsबढ़कर लगभग 1254 LOC हो गई थी)। उपप्रणाली (renderResults,buildChipRow,getRows, पंक्ति/facet बिल्डर्स, विकल्प पेंटर्स, औरFALLBACK_SOURCESरजिस्ट्री मिरर) एकwindow.ScanResults.create(ctx)फ़ैक्ट्री में स्थानांतरित हो गई, जो व्यू द्वारा दिए गए संदर्भ ऑब्जेक्ट पर क्लोज़ करती है। कोई व्यवहार परिवर्तन नहीं — फ़ंक्शन ज्यों-के-त्यों स्थानांतरित किए गए, क्लोज़र वेरिएबल्स कोctx.*में यांत्रिक रूप से पुनः-वायर किया गया;scan.jsअब लगभग 906 LOC है (800-LOC लक्ष्य की ओर दूसरा निष्कर्षण पास योजनाबद्ध है)।- स्रोत-स्टैटिक परीक्षण अब दोनों फ़ाइलों को
tests/helpers/scan-src.mjs::loadScanSrc()के माध्यम से पढ़ते हैं;tests/scan-fallback-sources.test.mjsअब रजिस्ट्री मिरर कोscan-results.jsसे पढ़ता है। - नया इन-ब्राउज़र रिग्रेशन गेट —
tests/playwright-scan-filters.mjsएक तैयारdata/last-scan.jsonसीड करता है और हर#/scanफ़िल्टर को चलाता है, सटीक पंक्ति-गिनती की पुष्टि करते हुए (npm run test:e2e:browser); स्थिर फ़िल्टर आईडी (#scan-filter-*,#scan-apply) जोड़ी गईं। - README का “नवीनतम रिलीज़” बैनर एक-पंक्ति सारांश + पूर्ण परिवर्तन-सूची के लिंक तक सीमित कर दिया गया है (लंबी बहु-संस्करण कथा-दीवार को हटा दिया गया है)। सभी 17 लोकेल्स पर लागू।
[1.131.2] — 2026-07-31
बदला गया
app.cssको तीन क्रमबद्ध स्टाइलशीट्स में विभाजित किया गया (फ़ाइल-आकार-अनुबंध ऋण — एकल फ़ाइल बढ़कर लगभग 1990 LOC हो गई थी, जो 800-LOC कठोर सीमा से काफ़ी आगे थी)। अब यहapp.css(~672 — a11y, डिज़ाइन टोकन/थीम, sidebar, main, buttons, content-shell),components.css(~595 — cards, grids, paginator, badges, tables, forms, log/console, markdown, भाषा स्विचर, chip filter, connection banner), औरoverlays.css(~737 — toast, notifications drawer, modal, misc/responsive,[dir="rtl"]मिरर, docs-fab, usage-hud) है, प्रत्येक कठोर सीमा के भीतर।- यह विभाजन सतत और क्रमबद्ध है, इसलिए कैस्केड विभाजन-पूर्व फ़ाइल के समान बाइट-फ़ॉर-बाइट समान है;
index.htmlतीनों को क्रमबद्ध<link>के रूप में लोड करता है। कोई व्यवहार, मार्कअप, या i18n परिवर्तन नहीं। - CSS-जाँचने वाले परीक्षण अब साझा
tests/helpers/css.mjs::loadAppCss()हेल्पर के माध्यम से संयोजन पढ़ते हैं। नयाtests/css-modularization.test.mjsविभाजन को लॉक करता है (फ़ाइलें मौजूद हैं · प्रत्येक ≤ 800 LOC · index.html लिंक क्रम) → सुइट 2138। ब्राउज़र में सत्यापित: तीनों स्टाइलशीट्स पार्स होती हैं और उनके नियम लागू होते हैं।
- यह विभाजन सतत और क्रमबद्ध है, इसलिए कैस्केड विभाजन-पूर्व फ़ाइल के समान बाइट-फ़ॉर-बाइट समान है;
[1.131.1] — 2026-07-31
सुधारा गया
- दो v1.130.0 स्रोतों पर अडैप्टर होस्ट-पिनिंग स्थिरता (कोड-समीक्षा फ़ॉलो-अप, डिफ़ेंस-इन-डेप्थ; वैध इनपुट के लिए कोई व्यवहार परिवर्तन नहीं):
a16z-speedrun-talentअडैप्टर अबbuildEndpointपरapi:/a16z-speedrun-talent:ओवरराइड को पुनः-सत्यापित करता है (HTTPS + सटीक होस्टspeedrun-talent-network.com) और असफल होने पर कैननिकल फ़ीड पर वापस लौटता है —cryptocurrencyjobsअडैप्टर के समान, ताकि कोई ऑफ़-होस्ट मान कभी फ़ेच स्लॉट तक न पहुँचे (पहले यह केवल फ़ेच-टाइमassertSpeedrunUrlगार्ड पर निर्भर था)। सटीक-होस्ट जाँच अब एक ही एक्सपोर्टेडSPEEDRUN_TALENT_HOST_REहै जिसे गार्ड और अडैप्टर दोनों साझा करते हैं।cryptocurrencyjobsपार्सर —cleanUrlअबassertCryptocurrencyJobsUrlऔर अडैप्टर ओवरराइड के समान सटीक-मिलान होस्ट गार्ड इस्तेमाल करता है (पहलेendsWithथा, जो सबडोमेन स्वीकार कर लेता था)। पार्सर कभी भी SSRF गार्ड से अधिक अनुमोदक नहीं होता: एकsub.cryptocurrencyjobs.coआइटम लिंक हटा दिया जाता है।- +2 परीक्षण → सुइट 2135।
[1.131.0] — 2026-07-31
जोड़ा गया
#/trackerCRM स्टेज-टैब बोर्ड (पैरेंट वेब ऐप के/pipelineव्यू से पोर्ट किया गया)। ट्रैकर की फ़नल-चिप बार + स्टेटस ड्रॉपडाउन को एक स्टेज-टैब स्ट्रिप से बदला गया है: एक All टैब प्लस हर कैननिकल स्टेटस के लिए एक टैब — Evaluated · Applied · Responded · Interview · Offer · Rejected · Discarded · SKIP · Hired — हर एक लाइव संपूर्ण-इतिहास गिनती दिखाता है, शून्य-गिनती वाले स्टेज सहित ताकि पूरा फ़नल हमेशा दृश्यमान रहे (CRM लुक)। सक्रिय टैब फ़िल्टर चलाता है; उसे फिर से क्लिक करने पर All पर वापस साफ़ हो जाता है। पंक्तियाँ अपना स्कोर-टोन, वैधता, PDF और रिपोर्ट सुविधाएँ बनाए रखती हैं, और कंपनी सेल अब लोगो सक्षम होने पर एक ब्रांड लोगो दिखाती है (डिफ़ॉल्ट रूप से बंद → कोई अतिरिक्त रिक्वेस्ट नहीं)।- नया रीड-ओनली रूट
GET /api/tracker/stagesकैननिकल फ़नल (क्रम में लेबल) + एक उपनाम-फ़ोल्ड मैप लौटाता है, जोserver/lib/states.mjs(templates/states.yml, बिल्ट-इन fallback सहित) से लिया गया है — ताकि क्लाइंट कभी भी स्टेटस व्हाइटलिस्ट हार्डकोड न करे। लेगेसी बिना-पैरामीटरGET /api/trackerप्रतिक्रिया अपरिवर्तित है (केवल{ rows })। - नई शुद्ध, यूनिट-टेस्टेड क्लाइंट लाइब्रेरी
public/js/lib/tracker-stages.jsपंक्तियों को सर्वर के स्टेजेज़ के अनुसार बकेट करती है, आवारा मार्कडाउन बोल्ड और स्थानीयकृत उपनामों (जैसेaplicado→Applied) को सहन करते हुए। टैब्स सुलभ हैं (role tablist/tab, aria-selected, ≥44 px हिट एरिया, हर टैब के accessible नाम में गिनती)। कोई नई i18n कुंजियाँ नहीं। सुइट 2133।
- नया रीड-ओनली रूट
[1.130.0] — 2026-07-31
जोड़ा गया
- पैरेंट career-ops v1.24.0 से पोर्ट किए गए दो नए स्कैन स्रोत (इन-प्रोसेस, कोई नई निर्भरता नहीं; दोनों
#/scanस्रोत फ़िल्टर और cvstart.org लैंडिंग पर दिखते हैं):- a16z Speedrun (
a16z-speedrun-talent, #2231) — a16z Speedrun की टैलेंट-नेटवर्क बोर्ड-वाइड JSON फ़ीड।speedrun-talent-network.comपर होस्ट-पिन्ड, केवल-HTTPS, 0-इंडेक्स्ड पेजिनेशन पेज कैप के साथ, प्रति-कंपनीq/config थ्रेडिंग, fail-soft। - Cryptocurrency Jobs (
cryptocurrencyjobs) — Web3 जॉब बोर्डcryptocurrencyjobs.co, इसकी सार्वजनिक RSS 2.0 फ़ीड (शून्य-ऑथ) से लिया गया। दो-पास XML-एंटिटी डिकोड, केवल-रिमोट लिस्टिंग,"… at <Company>"शीर्षक पूँछ से नियोक्ता पार्स किया गया। - रजिस्ट्री कुल अब 72 स्रोत = 67 अंग्रेज़ी + 5 रूसी (
ALL_ADAPTERS= 67 अंग्रेज़ी पोर्टल अडैप्टर)।
- a16z Speedrun (
सुधारा गया
echojobs— हाइब्रिड भूमिकाएँ रिमोट से अलग पहचानी जा सकती हैं (पैरेंट #2258 को दर्शाता है)। एक केस-इनसेंसिटिवhybridमार्कर अब"<City> · Hybrid"(या शहर न होने पर केवलHybrid) औरworkplaceType: 'Hybrid'देता है, न किRemoteमें समेटा जाना।radancy— लेगेसी TalentBrew मार्कअप + JSON परिणाम-फ़्रैगमेंट ट्रांसपोर्ट (पैरेंट a3e6df9 को दर्शाता है), इंजेक्टेबलopts.fetchJsonपर गेटेड।
टिप्पणियाँ
- पोर्ट नहीं किया गया — केवल-CLI पैरेंट फ़ीचर्स। career-ops v1.24.0 की बड़ी CLI/मोड सतह web-ui से बाहर रहती है, जो एक व्यूअर + थिन राइट-थ्रू है, मोड होस्ट नहीं: अनुपालन/क्षेत्राधिकार तालिकाएँ, संपर्क फ़ोनबुक + vCard, इंटरव्यू ट्रांसक्रिप्ट-डीब्रीफ़ / कॉल-प्लेटफ़ॉर्म पहचान, लेजर सेट-स्टेटस, आउटकम रिकॉर्डिंग, टू-पास ट्राएज, jd-समानता, वर्ज़न्ड एप्लिकेशन-CV आर्टिफ़ैक्ट स्कीमा, डॉक्टर Playwright-MCP पहचान, और
portals/fix-slugs.mjs। पैरेंट केscan.mjsमें रहने वाले स्कैन-ऑर्केस्ट्रेशन बदलाव — Interamt.de Playwright स्कैनर, iCIMS रिवर्स-ATS फुल स्वीप, देश-पात्रता रिमोट फ़िल्टर, DNS-लुकअप पेसिंग, StepStonerltrडिडुप, और स्कैन-हिस्ट्री नॉर्मलाइज़्ड-कंपनी कॉलम — लागू नहीं होते: web-ui EN/RU स्कैनर इन-प्रोसेस चलाता है औरscan.mjsमें शेल नहीं करता। - पहले से कवर।
role-matcheraccent-folding फ़िक्स (#2209) v1.127.0 में पोर्ट किया गया था, इसलिए यहाँ यह no-op है।
[1.129.1] — 2026-07-29
सुधारा गया
- v1.128/v1.129 web पोर्ट पर AI समीक्षा फ़ॉलो-अप (सभी सलाहकारी, स्रोत पर ठीक):
job-facets.jsमें स्तर वरीयता (स्पष्ट संशोधक अब प्रबंधन शब्द को हराता है —Senior Engineering Manager→senior, पहलेlead);states.mjsका fallback अब पिन नहीं होता (सफल पठन मेमोइज़, fallback बिना कैश लौटता — बूट पर क्षणिक रूप से अनुपलब्ध पैरेंट अगली कॉल पर पुनः पढ़ा जाता) + मौजूद पर विकृत फ़ाइल परconsole.warn;score-tone.js— बिना स्कोर वाली पंक्ति तटस्थ (muted), लाल नहीं;domainFromName()/api/logoसे पहले गैर-ASCII slug छोड़ता है; +tests/states.test.mjsमें आइसोलेशन गार्ड। +4 परीक्षण → 2073।
[1.129.0] — 2026-07-29
जोड़ा गया
#/scanस्तर फ़ैसेट + आयु कॉलम — v1.128.0 में आईjob-facets.jsलाइब्रेरी अब स्कैन UI से जुड़ी है (पहले केवल लॉजिक)। नया स्तर ड्रॉपडाउन हर पोस्टिंग के शीर्षक को lead/staff/senior/mid/junior/intern में बाँटता है (JobFacets.seniorityFromTitle) और परिणामों में जो वास्तव में है उससे स्वतः भरता है (देश फ़ैसेट की तरह); बिना स्तर-शब्द वाले शीर्षक हमेशा पास होते हैं। सहेजे गए खोज, रीसेट और लागू में बना रहता है। तालिका में स्तर बैज कॉलम और शून्य-टोकन आयु कॉलम (आज/Nदि,JobFacets.daysSinceसे) जुड़ते हैं। 12 i18n कुंजियाँ ×17, +3 परीक्षण → 2069।
[1.128.0] — 2026-07-29
जोड़ा गया
- पैरेंट के अपने वेब ऐप (
../web/, Next.js) से चार समाधान पोर्ट किए गए — वैनिला JS/ESM में पुनः-लागू, कोई नई निर्भरता नहीं: (1)server/lib/states.mjsट्रैकर की स्टेटस शब्दावली हेतुtemplates/states.ymlको लाइव पढ़ता है (CI फ़ॉलबैक) — हर रिलीज़ में मैनुअल व्हाइटलिस्ट री-सिंक हटाता है; POST उपनामों (स्पैनिश/लेगेसी) को कैननिकल लेबल में मोड़ता है, GET फ़नल कैननिकल स्टेटस के अनुसार बकेट करता है; (2) ATS-होस्टेड पंक्तियों में कंपनी लोगो —domainFromName()(~90 ब्रांड→डोमेन); (3)score-tone.js— 4-स्तरीय स्कोर टोन (≥4.2/3.8/3.0 + अक्षर फ़ॉलबैक); (4)job-facets.js— seniority/source/days फ़ैसेट। +21 परीक्षण।
टिप्पणियाँ
- पोर्ट नहीं किया गया (केवल अवधारणा): पैरेंट की एजेंटिक एक्शन लेयर (
actions/registry.ts+api/assistant/route.ts) — जबdocs-fabको-पायलट बने उसके लिए ब्लूप्रिंट। कोई नया स्रोत नहीं (रजिस्ट्री 70), कोई i18n/help बदलाव नहीं।
[1.127.0] — 2026-07-29
जोड़ा गया
- तीन नए स्कैन स्रोत (career-ops v1.23.0 पैरिटी) — रजिस्ट्री अब 70 अडैप्टर (65 EN + 5 RU) देती है: Flowxtra (बिना-ऑथ बोर्ड-वाइड एग्रीगेटर), VDAB (फ़्लेमिश लोक रोज़गार सेवा का कीवर्ड API), और iCIMS (
careers-<tenant>.icims.comपोर्टल,jibeapplyसे अलग)। साथ ही Cursor CLI रोस्टर में लौटा (parent #2115):cli-detectअबcursorका पता लगाता है (10 टूल्स), रोस्टर help/README/config ×17 में बहाल।
सुधारा गया
- agenticjobs HTML स्क्रैपिंग से REST API पर गया (#2167); जब
location.nameकेवल कार्य-मॉडल हो तो Greenhouse शहर को/officesसे पुनःप्राप्त करता है (#2104); role-matcher पैरिटी (#1933/#2164/#2009: MTS उपसर्ग,productबेसलाइन, एक्सेंट फोल्डिंग, सब-बेसलाइन असहमति)।
टिप्पणियाँ
- पोर्ट नहीं किया गया। v1.23.0 का अधिकांश CLI/डैशबोर्ड सतह है जिसे web-ui उपयोग नहीं करता (batch-tailor, discover-ats, NL/PT मोड, PDF थीम, Go डैशबोर्ड, updater/doctor); रिले स्क्रिप्ट अपरिवर्तित। पैरेंट का VERSION → 1.23.0।
[1.126.1] — 2026-07-25
सुधारा गया
- v1.126.0 रीसिंक द्वारा छूटे CLI रोस्टर ड्रिफ्ट के दो स्थान — (1)
#/configके API keys टैब का इंट्रो (config.providerModelNote, i18n ×17) केवल 7 CLI सूचीबद्ध करता था — अब Antigravity और Grok Build OpenCode के बाद जोड़े गए; (2) हेल्प गाइड (×17) की दूसरी तुलना-तालिका पंक्ति और CI-निर्मित साइट help अब भीInside Claude Code / Codex / Cursor / Gemini CLI(पुराने Cursor वाला सेट) दिखाते थे — अब पूरा रोस्टर। दोनों स्लैश/मध्य-बिंदु विभाजक इस्तेमाल करते थे जिन्हें v1.126.0 स्वीप के पैटर्न कवर नहीं करते थे। i18n स्नैपशॉट पुनः-जनरेट; सुइट 1969 पर बनी रहती है।
[1.126.0] — 2026-07-25
जोड़ा गया
- AI CLI टूल्स टैब अब career-ops की सभी 8 प्रथम-श्रेणी CLI का पता लगाता है —
#/configरोस्टर को पैरेंट केdocs/SUPPORTED_CLIS.mdसे सिंक किया गया:server/lib/routes/cli-detect.mjsमें Grok Build CLI (grok) और Kimi CLI (kimi) जुड़े, और Antigravity अब पहले अपना कैननिकल बाइनरीagyखोजता है। रीड-ओनली PATH स्कैन अब 9 टूल्स रिपोर्ट करता है; यह अब भी मिली बाइनरी को कभी नहीं चलाता।
बदला गया
- career-ops.org/docs के साथ दस्तावेज़ पुनः-सिंक — हर दस्तावेज़ सतह को पैरेंट के लाइव पेजों (सभी 31 पढ़े) से मिलाया गया। कैननिकल AI सहायक रोस्टर (help ×17 + README ×17) अब 8 प्रथम-श्रेणी CLI — Claude Code, Codex, OpenCode, Antigravity CLI, Grok Build CLI, Qwen Code, Kimi, GitHub Copilot CLI — और Gemini CLI (लीगेसी रैपर) सूचीबद्ध करता है। हेल्प बंडल 29 H2 / 105 H3 संरचना बनाए रखते हैं।
[1.125.4] — 2026-07-23
बदला गया
- site निर्भरताएँ (dependabot #151–#153) —
site/मेंsharp0.34.5→0.35.3,svgo4.0.1→4.0.2,fast-uri(dev) 3.1.3→3.1.4; Astro बिल्ड हरा, SPA/सर्वर पर कोई असर नहीं।
टिप्पणियाँ
- पैरेंट पैरिटी स्वीप (career-ops
37d17ec..254764a, v1.22.0 के बाद) — पोर्ट करने को कुछ नहीं:set-statusका गलत-पंक्ति गार्ड (#2108) केवल CLI है (web-ui में ट्रैकर पंक्तियाँ UI में स्पष्ट रूप से चुनी जाती हैं और कोई रूटset-status.mjsनहीं चलाता), स्थानीयकृत मोड का Risk Summary (#2109) उनmodes/<lang>/फ़ाइलों को छूता है जिन्हें web-ui कभी नहीं पढ़ता (केवल शीर्ष-स्तरीयmodes/*.md),update-systemकी मैनिफ़ेस्ट जाँच (#2111) केवल अपडेटर की है, और बाक़ी पैरेंट के दस्तावेज़ हैं (तुर्की README, SIGNATURES ×4, SCRIPTS.md, es उच्चारण)। पैरेंट का VERSION 1.22.0 ही है —parentVersionअपरिवर्तित।
[1.125.3] — 2026-07-23
सुधारा गया
- डेनिश और हिन्दी LLM प्रॉम्प्ट अंग्रेज़ी में जवाब देते थे (उपयोगकर्ता द्वारा रिपोर्ट किया गया) —
server/lib/prompts.mjsमेंLOCALE_NAMESऔर पाँचोंSCAFFOLD_STRINGSब्लॉकdaऔरhiके लिए कभी विस्तारित नहीं हुए, इसलिएresolveLocale()enपर लौट जाता था और हर AI प्रॉम्प्ट — डीप रिसर्च (लाइव और मैनुअल), मोड, मूल्यांकन, इंटरव्यू, नेटवर्किंग, CV Studio — इन दोनों भाषाओं में अपना# Output languageनिर्देश खो देता था। अब दोनों प्रथम श्रेणी की हैं: भाषा निर्देश + स्थानीयकृत ढाँचा।tests/locale-scaffold.test.mjsका रिग्रेशन गेट अब हार्डकोडेड 12 की जगह कैननिकल 17-लोकेल सूची पर चलता है, और नया संरचनात्मक गेट अंग्रेज़ी पर लौटने वाली किसी भी ढाँचा-कुंजी को विफल कर देता है — भविष्य मेंprompts.mjsछूटने वाली कोई लोकेल अब जारी नहीं हो सकती (+12 परीक्षण, सुइट अब 1969)।
[1.125.2] — 2026-07-22
सुधारा गया
- Gemini से डीप रिसर्च: HTTP 502 (
MALFORMED_FUNCTION_CALL) (#145, @Alien10140 का योगदान) — लाइव/api/deepप्रॉम्प्ट मॉडल से “Use WebFetch / WebSearch” करने और ब्रीफ़ को फ़ाइल में सहेजने को कहता था, लेकिन बिना टूल वाले API प्रदाताओं के पास टूल चैनल नहीं होता; Gemini टेक्स्ट की जगह फ़ंक्शन कॉल से जवाब देता था, जो खाली HTTP 502 के रूप में दिखता था।buildDeepPromptऔरbundleProjectContextअबheadlessफ़्लैग लेते हैं: लाइव रन (Anthropic/Gemini/फ़ॉलबैक कैस्केड) को बिना टूल वाला प्रॉम्प्ट मिलता है जो इनलाइन संदर्भ से ब्रीफ़ लिखता है, जबकि Claude Code के लिए कॉपी-पेस्ट प्रॉम्प्ट में टूल निर्देश बरकरार रहते हैं।tests/critical-fixes.test.mjsमें +1 टेस्ट।
बदला गया
- बंद हो चुके
gemini-2.0-flashसे आगे Gemini डिफ़ॉल्ट मॉडल अपडेट (#144, @Alien10140 का योगदान) — कॉन्फ़िगरेशन ड्रॉपडाउन,gemini.mjsका सर्वर फ़ॉलबैक (जो संकेत से चुपचाप असहमत था), OpenRouter फ़ॉलबैक शृंखला,config.geminiModelHint×17 और सहायता गाइड ×17 अब सबgemini-3.6-flashदिखाते हैं। नया ड्रिफ़्ट गेटtests/gemini-default-model.test.mjs(+5 टेस्ट) हर सतह को एक ही लिटरल पर स्थिर करता है — सुइट अब 1957 टेस्ट की है।
[1.125.1] — 2026-07-21
सुधारा गया
- SuccessFactors: मल्टी-ब्रांड RMK टेनेंट्स अपना ब्रांड पाथ बनाए रखते हैं (पैरेंट #2099, v1.22.0 के बाद) — होल्डिंग कंपनियाँ जो कई अधिग्रहीत ब्रांड्स को एक साझा RMK इंस्टेंस पर चलाती हैं, उन्हें एक पाथ सेगमेंट से अलग करती हैं (
careers.nemetschek.com/Bluebeam/बनाम…/Vectorworks/); पहले यह adapter कॉन्फ़िगर किए गए URL को उसके origin तक सिकोड़ देता था, और चुपचाप केवल मुख्य ब्रांड की पोस्टिंग्स स्कैन करता था। अब यह endpoint ब्रांड-प्रीफ़िक्स को बनाए रखता है, और केवल आख़िरी/search/या/tile-search-results/सेगमेंट हटाता है, ताकि कुछ भी कभी अपने ऊपर दोगुना न हो; सिंगल-डोमेन टेनेंट्स byte-for-byte अपरिवर्तित रहते हैं। नया एक्सपोर्ट किया गयाresolveTenantBaseहेल्पर +tests/sources-successfactors.test.mjsमें 1 पोर्ट किया गया टेस्ट ब्लॉक।
[1.125.0] — 2026-07-21
जोड़ा गया
- cvstart.org: लैंडिंग पर “जॉब स्रोत” सेक्शन — स्क्रीनशॉट्स और तुलना लिस्ट के बीच जोड़ा गया एक नया सेक्शन सभी 67 स्कैनर स्रोतों को क्लिक-योग्य चिप्स के रूप में सूचीबद्ध करता है (62 EN बोर्ड/ATS + अपनी अलग सब-हेडिंग के तहत 5 रूसी बोर्ड), और हर एक स्रोत की पब्लिक साइट से लिंक करता है। यह लिस्ट बिल्ड के समय लाइव अडैप्टर रजिस्ट्री से सिंक होती है (
sync-assets.mjs→facts.sources), इसलिए यह ऐप से कभी ड्रिफ़्ट नहीं कर सकती;Sources.astroमें एक क्यूरेटेड लिंक-मैप नएtests/site-sources.test.mjsसे गेटेड है। हेडर नैव को एक नया स्रोत एंकर मिला; 4 नए साइट i18n keys ×17। साथ ही लैंडिंग JSON-LD कीinLanguageलिस्ट भी ठीक की गई, जिसमें अभी तकhiछूट रहा था।
[1.124.0] — 2026-07-21
जोड़ा गया
- पाँच स्कैन स्रोत (पैरेंट v1.22.0 समता, #1808/#1572/#2024/#2055) — Welcome to the Jungle (बोर्ड-वाइड JSON API), Agentic Engineering Jobs (agentic/AI-इंजीनियरिंग बोर्ड), Jobvite (ज़ीरो-ऑथ per-tenant ATS), Gem (per-tenant ATS), और Alibaba Group (careers JSON API, Meituan/Tencent पैटर्न)। हर एक होस्ट-पिन किया गया, CI-आइसोलेटेड स्रोत + adapter जोड़ा है; रजिस्ट्री अब 67 अडैप्टर (62 EN + 5 RU) शिप करती है;
#/scanSource-dropdown फ़ॉलबैक और उसका ड्रिफ़्ट-गेट अपडेट किए गए; पाँच नए सुइटtests/sources-{wttj,agenticjobs,jobvite,gem,alibaba}.test.mjs।
सुधारा गया
- Arbeitsagentur: nationwide-remote केवल तब जब
homeofficetypVOLLSTAENDIGहो (पैरेंट #1981) —homeoffice=nv_trueक्वेरी हाइब्रिड भूमिकाएँ भी लौटाती है, इसलिए रिमोट पास अब हर हिट को job-details endpoint के ख़िलाफ़ छोटे बैचों में पुष्टि करता है और fail-closed रहता है (लुकअप एरर होने पर जॉब का असली शहर बना रहता है ताकि लोकेशन फ़िल्टर लागू रहें)। - SmartRecruiters: पब्लिक जॉब URL
/postings/के बिना बनते थे (पैरेंट #2047) — लिंक अब उन टेनेंट्स के लिए भी सही पब्लिक पोस्टिंग पेज पर पहुँचते हैं जिनकी पब्लिक साइट यह सेगमेंट ड्रॉप करती है, न कि 404 पर।
टिप्पणियाँ
- पैरेंट v1.22.0 ने CLI-साइड बदलाव भी शिप किए जिनमें वेब UI शेल-आउट नहीं करता या जिन्हें यह पहले से कवर करता है: zh-CN CV टेम्पलेट + PDF टाइपोग्राफ़ी,
/expandमोड, प्रोवाइडर prompt-cache ट्वीक्स (Gemini/OpenAI/Ollama), प्रति-स्टेप टोकन ब्रेकडाउन (वेब UI का अपना usage मीटर है), tracker writer-lock सीरियलाइज़ेशन (वेब UI v1.21 सेwithFileLockके ज़रिए राइट्स रूट करता है), scanvisa_filter+ absolute posted-date CLI फ़्लैग्स (वेब UI का अपना “Posted within” एज फ़िल्टर है), और seen-sources डीड्यूप सीडिंग (वेब UI स्कैनर अपना ख़ुद का scan-history डीड्यूप रखता है)।
[1.123.0] — 2026-07-17
जोड़ा गया
- Oracle Recruiting Cloud स्कैन स्रोत (पैरेंट v1.21.0 समता, #1929) — Oracle Fusion/ORC करियर साइट्स (JPMorgan Chase, Oracle, BNY Mellon, American Express, Honeywell, …) का ज़ीरो-ऑथ
recruitingCEJobRequisitionsREST API:*.fa[.<region>][.ocs].oraclecloud.comपर होस्ट-पिन किया गया, साइट नंबर हर ट्रैक की गई कंपनी केcareers_urlसे निकाला जाता है, हार्ड पेज-कैप वाला ऑफ़सेट पैजिनेशन, और WAF-जागरूक ब्राउज़र-जैसे हेडर। रजिस्ट्री अब 62 अडैप्टर (57 EN + 5 RU) शिप करती है;#/scanSource-dropdown फ़ॉलबैक और उसका ड्रिफ़्ट-गेट अपडेट किए गए; नया CI-आइसोलेटेड सुइटtests/sources-oraclecloud.test.mjs।
सुधारा गया
- Repost डिटेक्टर: बेस टाइटल विशेष-सफ़िक्स वाले सिबलिंग्स से अलग बने रहते हैं (पैरेंट #1922) — “Senior Analytics Engineer” अब “Senior Analytics Engineer, People Analytics” के साथ क्लस्टर नहीं होता: जब एक टाइटल के टोकन दूसरे टाइटल के टोकन का एक सख़्त सबसेट होते हैं और अतिरिक्त टोकन एक वास्तविक विशेषज्ञता (बेसलाइन शब्द नहीं) होता है, तो दोनों को अलग-अलग पोस्ट होने योग्य ओपनिंग माना जाता है। Reposting एनोटेशन्स (“(Repost)”, “relisted”) अब मेटा-नॉइज़ के रूप में स्टॉपवर्ड किए जाते हैं।
tests/detect-reposts.test.mjsमें +2 assertions।
टिप्पणियाँ
- पैरेंट v1.21.0 ने CLI-साइड बदलाव भी शिप किए जिनमें वेब UI शेल-आउट नहीं करता या जिन्हें यह पहले से कवर करता है: रिपीट-कंपनी रीअप्लाई चेतावनी (वेब UI में v1.84.0 से री-अप्लाई कूलडाउन पहले से मौजूद है), cover-letter के
--format/--reportफ़्लैग्स, इंटरव्यू red-flag / panel-intel / no-show ईमेल प्रॉम्प्ट मोड्स, scan trust-signal व portal-health पर्सिस्टेंस (वेब UI अपना ख़ुद का इन-प्रोसेस स्कैनरtrust-validatorऔर Portals health पेज के साथ चलाता है), और stats/salary-gap एक्सटेंशन (रीड-ओनली और fail-soft तरीक़े से रिले किए गए)।
[1.122.0] — 2026-07-16
जोड़ा गया
- हिन्दी (हिन्दी) — 17वीं भाषा — पूरा UI शब्दकोश (~1,110 कुंजियाँ), सम्पूर्ण इन-ऐप सहायता गाइड (29 H2 / 105 H3 समता),
README.hi.md, नईCHANGELOG.hi.md(v1.122.0 से शुरू, de/it/tr की मिसाल पर), cvstart.org लैंडिंग + Methodology/License/Changelog/Help पेज, भाषा स्विचर (🇮🇳), ब्राउज़र-भाषा की स्वतः पहचान, और स्थानीयकृत डैशबोर्ड स्क्रीनशॉट। हर ×16 समता-गेट अब ×17 चलता है: i18n शब्दकोश समता + स्नैपशॉट, सहायता H2/H3 गेट, CHANGELOG समता, साइटcheck-i18n, और Playwright लोकेल स्वीप।