Dev.to AI 🤖 Ai 👁 0 📖 5 min read

AI Agent Job Search Fixes: From 610 Discarded Jobs to 643 Passing Checks

Originally published at aideazz.xyz — cross-posted here with canonical link. My AI job hunter agent, VibeJobHunterAIPA_AIMCF, was discarding 610 Latin American jobs from Torre. This wasn't a filtering error; it was a fu

Originally published at aideazz.xyz — cross-posted here with canonical link.

My AI job hunter agent, VibeJobHunterAIPA_AIMCF, was discarding 610 Latin American jobs from Torre. This wasn't a filtering error; it was a fundamental misconfiguration in how the agent interacted with the source. The agent was fetching these jobs, then immediately discarding them because the expected processing window was set to 20 seconds, not the 90 seconds Torre actually required. This single fix, among 12 commits in the last 48 hours, highlights the constant battle against silent failures in production AI systems.

Fixing the Data Sourcing Blind Spots

The Torre issue was a prime example of an agent performing its task (fetching data) but failing to integrate it into the workflow due to an unaligned expectation. The fix, 5af1858 (2026-09-29) fix(sources): Torre gets 90s, not 20s - it was fetching 610 LATAM jobs and discarding them all, directly addressed this. The agent was effectively blind to a large segment of its potential job pool.

Another critical sourcing fix involved Himalayas. The agent was searching nothing, leading to zero relevant results. The commit 06f6329 (2026-09-29) fix(himalayas): the source searched nothing - use /jobs/api/search, one query per lane corrected this by implementing the correct API endpoint and query structure. Without this, an entire job board was effectively offline for the agent.

The "bright-data door" also presented a challenge. The agent was gating job snippets based on location, rather than the full posting. This meant potentially relevant jobs were being filtered out too early. The fix 0a980de (2026-09-29) fix(bright-data door): search where she can work, and gate the posting, not the snippet ensures the agent evaluates the full job description against location criteria, improving accuracy.

These fixes are not about adding new features; they are about ensuring the existing data pipelines function as intended, preventing silent data loss and improving the overall quality of the job pool the agent considers.

Addressing Learning and Feedback Loops

A significant challenge in AI agent development is ensuring that "learning" actually translates into improved performance. My job hunter agent had a wiki incident recorded on 2026-09-28: "The job hunter learned from every rejection — and none of it could change what it showed." The agent was reading operator rejection notes and screenshots, summarizing reasons, and feeding them into its judge's prompt. Yet, the same types of jobs kept appearing. The lessons were being processed but were unable to override the agent's core criteria.

The commit debac32 (2026-09-29) fix(learning): the "📌 JOB POSTING" note on hand-staged jobs is never her reason or her "applied" directly addresses a part of this problem. The agent was misinterpreting the "📌 JOB POSTING" note on hand-staged jobs as a reason for application or rejection, when it was merely an internal marker. This subtle misinterpretation polluted the learning data, preventing genuine feedback from influencing future job discovery.

Effective AI Agent Job Search Fixes require not just data input, but correct interpretation of that input within the agent's learning mechanisms.

Enhancing LLM Reliability and Verification

My agent's reliance on LLMs for tasks like LinkedIn post and reply triage required a more robust approach than a single provider. The commit 11bd8d2 (2026-09-28) fix(llm): LinkedIn posts and reply triage go through the 5-provider waterfall, not Claude alone implemented a multi-provider waterfall. This reduces single-point-of-failure risk and allows for cross-verification, improving the reliability of LLM-driven decisions.

Furthermore, a previous claim of "131 tests" for LinkedIn processing was unverified. The commit 2fd2a28 (2026-09-28) fix(linkedin): drop the unverified '131 tests' claim - 600+ checks, measured 28 Sep (643 passing) updated this to reflect the actual measurement: over 600 checks, with 643 passing on September 28th. This commitment to accurate, measured metrics is crucial for building trust in agent performance.

System Stability and Monitoring

While VibeJobHunterAIPA_AIMCF saw 12 commits in the last 48 hours, other critical processes on my Oracle Cloud instance show varying degrees of stability. cto-aipa has 175 restarts and has been up for 0 days, indicating recent deployment or instability. algom-stream has 55193 restarts over 44 days, a known anomaly I've discussed previously. In contrast, algom-poll has 0 restarts over 63 days, and n8n has 0 restarts over 47 days, demonstrating stable operations.

My serpapi-jobs process, which is directly related to job sourcing, has 2 restarts and has been up for 0 days, suggesting recent adjustments or a minor hiccup. The pm2-logrotate process, essential for log management, has 5 restarts over 1 day.

Monitoring these restarts via pm2 jlist is a daily ritual. It provides an immediate, high-level view of system health. The apply-queue.log shows ✓ sent to Telegram (2 new), indicating successful job applications being pushed to my notification channel. The job-board-watch.log shows VERDICT: REJECTED and VERDICT: QUALIFIED, indicating continuous evaluation of job board sources.

The concierge-selftest.log shows ✅ PASS — 4 checks, 6373ms to first card, confirming the core notification system is functional and responsive. These logs are my eyes and ears into the agent's real-time performance, allowing me to quickly identify and address issues.

Frequently Asked Questions

Q: How do you prioritize which AI Agent Job Search Fixes to implement?
A: I prioritize fixes based on direct impact on job discovery volume, application success rates, and critical data integrity. For example, fixing the Torre 610 discarded jobs issue had a higher priority than minor UI tweaks, as it directly impacted the agent's ability to find relevant opportunities.

Q: What is the typical turnaround time for a critical fix like the Himalayas search issue?
A: For critical sourcing issues like the Himalayas fix, where the agent was searching nothing, the turnaround from identification to deployment is typically within hours. The commit 06f6329 was part of 12 commits in VibeJobHunterAIPA_AIMCF within 48 hours, indicating rapid iteration.

Q: How do you ensure "learning" from rejections actually improves the agent's performance?
A: I ensure learning by directly linking rejection reasons to the agent's prompt criteria and continuously monitoring the types of jobs it surfaces. The debac32 commit, for instance, removed a misinterpretation of "📌 JOB POSTING" notes, which was polluting the learning data and preventing real improvement.

Q: Why use a 5-provider waterfall for LLM tasks instead of a single, powerful LLM?
A: A 5-provider waterfall for LLM tasks like LinkedIn post triage (as implemented in 11bd8d2) increases resilience and accuracy. It mitigates the risk of a single LLM provider's downtime or hallucination, and allows for consensus-based decision making, which is crucial for sensitive tasks.

Q: How do you track the "643 passing" checks for LinkedIn processing?
A: The 643 passing checks are measured through automated test suites that run against the LinkedIn processing module. This metric, updated on September 28th, provides a concrete, verifiable number for the agent's functional integrity, replacing an earlier unverified claim of 131 tests.

— Elena Revicheva · AIdeazz · Portfolio

📰 Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.