v1.5.0 — Full Web Integration + AI Provider Routing¶
A v1.5.0 conecta o frontend moderno a mais módulos reais do backend, adiciona roteamento de IA por área e expõe uma ponte segura para capturas da extensão local.
Adicionado¶
- Roteamento backend-side de provider para currículo, vaga, compatibilidade, ATS, Tailor e GitHub.
- Uso do Prompt Registry para
match_analysis_evidence_based_v1,ats_analysis_v1,resume_tailor_v1ecareer_advice_v1, além dos prompts já existentes. - Badges de provider no frontend para indicar Local, Gemini ou fallback local.
- Painel Extensão Local em Fontes e Captura.
- Endpoints
/api/v1/extension/*para status, capturas e importações seguras. -WithCompanionno launcher Windows.- Auditoria de integração v1.5 e mapa de módulos.
Roteamento de IA¶
O backend decide o provider usando as configurações salvas em /api/v1/settings/ai:
provider
model
use_ai
allow_match
allow_ats
allow_tailor
allow_github
allow_memory_context
Regras:
- local continua padrão e não faz chamada externa;
- Gemini só roda com chave salva no backend local;
- toggles desligados forçam caminho local;
- falha de provider não quebra análise: retorna fallback local com warning;
- a chave nunca é retornada, logada ou persistida no navegador.
Extensão Local¶
A nova ponte FastAPI usa o store da Local Companion API existente:
GET /api/v1/extension/status
GET /api/v1/extension/captures
GET /api/v1/extension/profile-analysis
POST /api/v1/extension/import/job
POST /api/v1/extension/import/github
POST /api/v1/extension/import/tracker
O painel no frontend permite consultar capturas recentes e importar uma captura para a tela de Vaga ou para Candidaturas. A lógica sensível da extensão, Chromium/CDP, authenticated browser e scraping autenticado não foi alterada.
Launcher¶
O launcher consolidado continua em:
.\start-sotuhire.ps1
Flags:
.\start-sotuhire.ps1 -NoBrowser
.\start-sotuhire.ps1 -SkipInstall
.\start-sotuhire.ps1 -ApiOnly
.\start-sotuhire.ps1 -WebOnly
.\start-sotuhire.ps1 -Production
.\start-sotuhire.ps1 -WithCompanion
start-api.ps1 e start-web.ps1 foram removidos porque eram wrappers simples. A lógica agora fica
em scripts/windows/start-sotuhire.ps1.
Streamlit¶
Streamlit permanece como modo legado/dev/local debug:
streamlit run app.py
Segurança¶
- Sem auto-apply.
- Sem automação de login.
- Sem novo crawler logado ou scraper autenticado.
- Sem alteração nos docs protegidos.
- Sem segredo no frontend.
- Scores finais continuam no backend/core.
Testes adicionados¶
- Roteamento Gemini fake sem retorno de chave.
- Fallback local quando Gemini falha.
- Ponte
/api/v1/extension/status,/capturese/import/job. - Smoke frontend para painel Extensão Local.
Pendências para v1.6¶
- Melhorar importação de capturas para preencher estado entre rotas no frontend.
- Expandir análise de perfil da extensão quando houver contrato final.
- Adicionar testes E2E em modo API Real com backend rodando.
- Criar UX de histórico detalhado para warnings/fallbacks de IA.