Skip to content

fix: estabiliza hooks, autoupdater e execução sem shell - #11

Closed
nikolasdehor wants to merge 1 commit into
verbeux-ai:mainfrom
nikolasdehor:fix/streaming-agent-reliability
Closed

fix: estabiliza hooks, autoupdater e execução sem shell#11
nikolasdehor wants to merge 1 commit into
verbeux-ai:mainfrom
nikolasdehor:fix/streaming-agent-reliability

Conversation

@nikolasdehor

Copy link
Copy Markdown

Resumo

  • Envolve a checagem de versao do autoupdater (fallback via npm) com withTimeoutSignal, alinhando o comportamento de timeout com o restante do fluxo de atualizacao.
  • Endurece sanitizeEnvironment em execFileNoThrow: valores de env com caracteres de controle agora sao rejeitados (erro explicito) em vez de silenciosamente descartados com um aviso no console.
  • Ajustes complementares em hooks (hookChains, registerFrontmatterHooks, registerSkillHooks, sessionHooks, schemas/types de hooks) e em markdownConfigLoader e permissions/filesystem para estabilizar a execucao sem depender de shell.
  • Atualiza os testes correspondentes (execFileNoThrow, hookChains, withRetry, openaiShim.diagnostics, loadSkillsDir, tools.lsp, knowledgeGraph.stress, repoSlug) para cobrir o novo comportamento.

Validacao (local)

  • bun run typecheck: falha com 1701 erros, mas o baseline em origin/main ja falha com 1721 erros (nenhuma regressao introduzida; a branch reduz 20 erros pre-existentes).
  • bun test: 2543 pass / 122 fail (5722 expect calls, 2665 testes). Baseline em origin/main: 2541 pass / 124 fail. As falhas remanescentes sao pre-existentes e decorrem de ausencia de credenciais Verboo (verboo /login) no ambiente local de teste, nao de regressao desta branch.
  • Nao existe script de lint configurado neste projeto (sem eslint/biome).

- hookChains e registro de hooks de frontmatter, skills e sessão com tipagem consistente
- execFileNoThrow e autoUpdater com tratamento de erro explícito
- schemas e types de hooks alinhados
- testes ajustados para o novo contrato
Copilot AI review requested due to automatic review settings July 29, 2026 18:56
@gemini-code-assist

Copy link
Copy Markdown

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@nikolasdehor

Copy link
Copy Markdown
Author

The smoke-and-tests failures on this PR are pre-existing on main, not introduced by this change.

This PR only touches hooks (hookChains, frontmatter/skill/session hook registration, hook schemas/types), autoUpdater, and execFileNoThrow — no code path related to provider profiles or API key verification.

Ran the exact failing test files (src/hooks/useApiKeyVerification.test.tsx and src/utils/providerProfiles.test.ts) on both this branch's HEAD and on the merge-base with main (commit bb5adac, i.e. main without this PR's commit). Same result on both: 59 pass / 14 fail, identical set of failing test names.

Failing tests on both HEAD and base:

  • useApiKeyVerification > resets stale missing status when the session switches to a third-party provider (times out on waitForCondition)
  • applyProviderProfileToProcessEnv > bedrock / gemini / github / mistral / openai / venice / xai / xiaomi mimo (8 cases)
  • setActiveProviderProfile > persists no-key / primary-model / Venice / Xiaomi MiMo profiles for restart fallback (4 cases)

A full bun test run on main (bb5adac) alone also fails independently of this PR: 2541 pass / 124 fail.

Flagging this so it doesn't block review, not proposing a fix for these here since they're unrelated to this change.

@ImPedro29 ImPedro29 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revisei este PR contra a main atual. Não é seguro mesclar como está: há conflitos, várias partes já chegaram à main e a alteração de execFileNoThrow volta a abortar o processo inteiro por valores de ambiente multilinha legítimos. A inversão global entre .claude e .verboo também não tem cobertura suficiente e contraria o teste existente de precedência de agentes. As correções válidas de paths, testes e permissões foram recuperadas de forma isolada no #14, sem a regressão de execução.

@ImPedro29

Copy link
Copy Markdown

Encerrando em favor do #14, que preserva as correções válidas e exclui as regressões e duplicações identificadas no review.

@ImPedro29 ImPedro29 closed this Jul 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants