Skip to content

Design Decisions pt

Hermes Agent edited this page Oct 1, 2026 · 1 revision

Decisões de design — "por que o browsa não faz X"

English | 中文 | 日本語 | 한국어 | Español | Português | Русский

Estas decisões estão CONSOLIDADAS. Cada uma tem uma história real de falha/argumento por trás; não reapresente a proposta sem fatos novos. Os registros formais vivem em docs/adr — esta página é o índice legível por humanos.

Fronteiras de produto

Decisão Motivo em uma linha Registro
UI de download de mídia removida, não restaurar a injeção de cabeçalhos em requisições chrome.downloads não é confiável + anti-bot de PO-token do YouTube; os usuários do browsa têm cat-catch/yt-dlp. A própria máquina de fetch do pipeline de ASR não é afetada ADR-0001
Sem auto-troca de sessão por aba trocar de conversa ao trocar de aba tira o controle do usuário; conversa única global + novas sessões explícitas é o padrão ADR-0002
Sem "recibos de contexto" por mensagem construído e removido por não ser útil; os botões 检查/撤销 do chip de anexo continuam sendo a única inspeção de conteúdo enviado mesmo ADR
Fallback de ASR tabCapture "gravar enquanto reproduz" rejeitado a duração da captura em tempo real = a duração da reprodução; segmentos pausados/pulados são silêncio — um vídeo não reproduzido não pode ser transcrito, matando o caso central AGENTS.md 2026-09-28
Direção "escrever/agir" em páginas genéricas arquivada a linha de base copiar-colar cobre escrita de blob único; o resto é episódico; "做好太复杂" — um reinício precisa de um fluxo concreto de formulário/lote que copiar-colar não cobre notas de roadmap do projeto
Direção de aprendizado sim, formas "quiz me / barra de percepção" não as FORMAS foram rejeitadas, não a direção; qualquer reinício se alinha primeiro na forma notas do learning-pivot

Dados e privacidade

Decisão Motivo em uma linha Registro
Pixels de imagens armazenados NUNCA são destruídos as bolhas mostram o que foi enviado (dirigido por relatos de usuário); compressão apenas no lado da requisição (rótulos imagesSeen) ADR-0013
Snapshots de sessão mantêm os bytes das imagens (sem remoção) o primeiro turno de uma sessão restaurada reenvia os pixels reais para que perguntas de follow-up em nível de pixel permaneçam respondíveis ADR-0005

Protocolo e arquitetura

Decisão Motivo em uma linha Registro
thinking tem padrão omit; o echo guard do runs está correto reasoning.available reproduz a resposta — exibi-la duplica ADR-0004
A thread de detalhe diverge deliberadamente da escada de turn-request sessões/escopo isolados são a promessa do produto, não dívida técnica ADR-0007
Um escopo de recall de histórico de entrada por superfície de entrada ↑ em um cartão de follow-up lembra follow-ups, nunca envios do chat principal ADR-0006
Funções injetadas no MAIN world mantêm seus helpers aninhados executeScript serializa uma função; um ReferenceError no Chrome real ensinou isso ADR-0009
Restrições de carregamento de vendors (cópia RAW do Mol* / wasm de office sem pré-aquecimento / verificação na extensão real) três regras permanentes ADR-0008
Tamanho do CAPABILITY_HINTS congelado; renderizadores renderizam automaticamente, sem botões os hints são um contrato de interface, não few-shot; botões são decorativos ADR-0010
Commit de blocos em streaming; sem parser incremental de vendor mantém as formas HTML idênticas byte a byte; O(n) alcançado ADR-0011
Lista de wontfix da auditoria de eficiência trade-offs consolidados (lista de chaves do getAll etc.); não relate de novo ADR-0012
Regra de porte: técnicas sim, features de assinatura não a visão de legendas bilíngues do youtube-digest foi construída e revertida — a assinatura de uma ferramenta de aprendizado não é a do browsa ADR-0003
Contratos de saída do modelo preferem formatos com prior de treinamento a lição do nn: uma spec inventada não tem prior → o modelo adivinha → degradação silenciosa; substituído por dot notas do render-contract

Duas regras permanentes para features do painel lateral

  1. Qualquer feature do painel que faça sua própria chamada de LLM deve suportar os quatro apiStyles ou falhar VISIVELMENTE — o cartão de auxílio à leitura de papers foi removido porque silenciosamente pulava o Hermes (custo de ramificação por protocolo > valor marginal).
  2. Sem toggles de configuração que ninguém pediu: autoCleanBeforeExtract foi explicitamente removido por decisão do usuário — o comportamento simplesmente é fixo.

Versões autoritativas: Design-Decisions (inglês) / Design-Decisions-zh (chinês) — instantâneo de primeira tradução por IA, sincronizado em 2026-10-01.

Clone this wiki locally