Conversation
Signed-off-by: Hudson Lima Tavares <109999011+hltav@users.noreply.github.com>
…222) ## Card - [PAV-89](https://linear.app/tatame/issue/PAV-89/backend) ## O que foi feito - Adicionada a tabela `application_events` com vínculo ao usuário e à vaga salva. - Adicionadas migrations e snapshots do Drizzle. - Implementado registro de mudança de status na mesma transação da atualização da vaga. - Evitada a criação de eventos quando o status não muda. - Adicionado bloqueio da linha durante a atualização para evitar inconsistências concorrentes. - Adicionado o endpoint `GET /saved-jobs/:id/events`. - Eventos retornados em ordem cronológica. - Garantido isolamento por usuário autenticado. - Adicionados testes de service, controller e rota. ## Validação - `npm run validate` passou. - `npm run test:coverage --workspace=backend` passou. - 561 testes do backend passaram. - Cobertura do backend: - Statements: 91,34% - Branches: 81,13% - Functions: 92,29% - Lines: 92,47% - Fluxo validado manualmente: - mudança de status cria evento; - repetição do mesmo status não cria duplicata; - alteração sem mudança de status não cria evento; - timeline retorna eventos em ordem cronológica; - usuário não acessa eventos de outra conta.
## Resumo Fecha a PAV-74 repensando a geração de keywords do scraper após o fim do fluxo de submissão de keywords por usuário. ## O que foi feito - Adicionado gerador de keywords no scraper Go, combinando cargo + tecnologia por categoria compatível. - Criado `generator.json` separado de `keywords.json` para versionar a matriz de títulos, tecnologias e categorias. - Mantido fallback interno no Go caso `generator.json` não esteja disponível. - Aplicado `GenerateSearchKeywords` no carregamento padrão, store, scrape e cache key. - Desabilitado o fluxo de submissão de keywords por usuário com `KWSYNC_ENABLED=false`. - `POST /keywords` agora retorna `403` quando o kwsync está desligado. - `GET /keywords` permanece ativo. - `publish` e `publishBatch` não publicam no Valkey quando `KWSYNC_ENABLED=false`. - Consumer Go do `kwsync` não inicia quando a flag está desligada. - Documentada a flag em `.env.example` e `backend/.env.example`. - Adicionados/atualizados testes de backend e scraper. ## Validação - `npm test --workspace=backend` - `go test ./...` dentro de `scraper-go` - `git diff --check`
hltav
requested review from
Benevanio,
lima300 and
nayarakarinesilva
as code owners
August 18, 2026 22:38
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resumo
Fecha a PAV-74 repensando a geração de keywords do scraper após o fim do fluxo de submissão de keywords por usuário.
O que foi feito
generator.jsonseparado dekeywords.jsonpara versionar a matriz de títulos, tecnologias e categorias.generator.jsonnão esteja disponível.GenerateSearchKeywordsno carregamento padrão, store, scrape e cache key.KWSYNC_ENABLED=false.POST /keywordsagora retorna403quando o kwsync está desligado.GET /keywordspermanece ativo.publishepublishBatchnão publicam no Valkey quandoKWSYNC_ENABLED=false.kwsyncnão inicia quando a flag está desligada..env.exampleebackend/.env.example.Validação
npm test --workspace=backendgo test ./...dentro descraper-gogit diff --check