Show apply_url in summary for external jobs, add Ashby closed detection

External ATS jobs now show their actual apply URL instead of the
LinkedIn listing URL. Also added Ashby-specific "job not found"
text to closed detection.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 21:08:50 -08:00
parent e4e3055bb1
commit 5caa063175
2 changed files with 2 additions and 1 deletions

View File

@@ -305,7 +305,7 @@ async function handleResult(job, result, results, settings, profile, apiKey) {
const applyDuration = applyStartedAt ? Math.round((Date.now() - applyStartedAt) / 1000) : null; const applyDuration = applyStartedAt ? Math.round((Date.now() - applyStartedAt) / 1000) : null;
// Track per-job detail for summary // Track per-job detail for summary
results.jobDetails.push({ title, company, url: job.url, status, duration: applyDuration }); results.jobDetails.push({ title, company, url: job.apply_url || job.url, status, duration: applyDuration });
switch (status) { switch (status) {
case 'submitted': case 'submitted':

View File

@@ -8,6 +8,7 @@ export const SUPPORTED_TYPES = ['ashby'];
export async function apply(page, job, formFiller) { export async function apply(page, job, formFiller) {
return genericApply(page, job, formFiller, { return genericApply(page, job, formFiller, {
transformUrl: (url) => url.includes('/application') ? url : url.replace(/\/?(\?|$)/, '/application$1'), transformUrl: (url) => url.includes('/application') ? url : url.replace(/\/?(\?|$)/, '/application$1'),
closedTexts: ['job not found', 'the job you requested was not found'],
formDetector: '#_systemfield_name', formDetector: '#_systemfield_name',
applyButtonSelector: 'button:has-text("Apply for this Job"), a:has-text("Apply for this Job")', applyButtonSelector: 'button:has-text("Apply for this Job"), a:has-text("Apply for this Job")',
submitSelector: 'button:has-text("Submit Application")', submitSelector: 'button:has-text("Submit Application")',