Pular para conteúdo

v1.8.0 - Job Radar, Public Feeds & Wishlist Alerts

A v1.8.0 adiciona o Radar de Vagas ao SotuHire web-first. O objetivo é ajudar a pessoa a monitorar fontes públicas configuradas manualmente, comparar oportunidades com uma wishlist local e gerar alertas locais para revisão humana.

Objetivo da versão

Transformar o fluxo de intake em um fluxo mais proativo:

currículo + wishlist + fontes
→ rodada manual do Radar
→ normalização e deduplicação
→ comparação com wishlist/currículo
→ alertas locais
→ revisão manual
→ salvar na Caixa de Entrada ou Candidaturas

Fontes suportadas

Fonte Status v1.8.0 Observação
RSS/Atom público Implementado Refresh manual, limitado por fonte e sem salvar automaticamente no tracker.
Página pública simples Parcial Usa leitura pontual segura quando o utilitário existente permite.
API oficial Estrutura preparada Depende de contrato oficial documentado e adapter específico.
CSV/JSON/manual/extensão Integrado Continuam entrando pela Caixa de Entrada e podem ser filtrados por origem.

Limites de segurança

  • Sem scraping de SERP.
  • Sem crawler amplo.
  • Sem login automático.
  • Sem captura de cookie, token ou sessão.
  • Sem bypass de CAPTCHA.
  • Sem auto-apply.
  • Fontes bloqueadas devem orientar importação manual.
  • APIs com chave devem armazenar segredo apenas no backend local quando um adapter real existir.

Como funciona o Radar

O backend adiciona modules/radar com:

  • JobWishlist;
  • RadarSource;
  • RadarRun;
  • RadarResult;
  • RadarAlert;
  • RadarMatch;
  • adapters documentados para RSS, página pública simples, API oficial e CSV/JSON recorrente.

A API expõe:

GET    /api/v1/radar/wishlists
POST   /api/v1/radar/wishlists
PATCH  /api/v1/radar/wishlists/{wishlist_id}
DELETE /api/v1/radar/wishlists/{wishlist_id}
GET    /api/v1/radar/sources
POST   /api/v1/radar/sources
PATCH  /api/v1/radar/sources/{source_id}
DELETE /api/v1/radar/sources/{source_id}
POST   /api/v1/radar/run
GET    /api/v1/radar/runs
GET    /api/v1/radar/results
PATCH  /api/v1/radar/results/{result_id}
POST   /api/v1/radar/results/{result_id}/save-inbox
POST   /api/v1/radar/results/{result_id}/save-tracker
GET    /api/v1/radar/alerts
PATCH  /api/v1/radar/alerts/{alert_id}
GET    /api/v1/radar/stats

Todos usam o envelope { ok, data, warnings, request_id }.

Wishlist

A wishlist guarda cargos alvo, skills obrigatórias/desejáveis, senioridade, locais, modelo de trabalho, termos excluídos, empresas incluídas/excluídas e score mínimo para alertas.

Se não houver wishlist, a rodada pode usar palavras-chave rápidas, mas o produto orienta criar uma wishlist para alertas mais úteis.

Alertas

Alertas são locais e persistidos no mesmo store local do Radar. Eles indicam:

  • novas vagas acima do score mínimo;
  • duplicatas;
  • erros de fonte;
  • histórico de rodada.

Notificação de navegador continua roadmap.

Match com currículo e wishlist

O score final do Radar é calculado no backend. O frontend apenas exibe:

  • Pontuação Radar;
  • Pontuação de compatibilidade;
  • ATS estimado;
  • motivos do match;
  • evidências usadas;
  • lacunas;
  • próximas ações.

Quando há currículo enviado na rodada, sinais do currículo entram como evidência adicional. Sem currículo, o score usa wishlist e texto da vaga.

IA opcional

A IA pode explicar por que a vaga combina usando o prompt job_radar_match_explanation_v1.

Regras:

  • IA não altera score final;
  • IA não inventa requisitos ou experiência;
  • fallback local mantém a rodada funcional;
  • nenhuma API key retorna ao frontend.

Manual vs automático

Automático local:

  • refresh manual de fontes configuradas;
  • normalização;
  • deduplicação;
  • cálculo local de score;
  • geração de alertas locais.

Manual:

  • escolher fontes;
  • revisar cada resultado;
  • salvar na Caixa de Entrada;
  • salvar em Candidaturas;
  • analisar compatibilidade;
  • candidatar-se fora do SotuHire.

Limitações conhecidas

  • Não há agendamento em background nesta versão.
  • API oficial é arquitetura preparada, não conector real universal.
  • Página pública simples depende das mesmas restrições de acesso seguro do importador de URL.
  • Alertas são locais, sem push remoto.
  • O Radar não substitui revisão humana da vaga.