Skip to content

feat(adapters): free OpenAI-compatible transport and image/file parts - #1826

Merged
EmersonBraun merged 14 commits into
mainfrom
EmersonBraun/ch-a-adapters
Oct 8, 2026
Merged

EmersonBraun merged 14 commits into
mainfrom
EmersonBraun/ch-a-adapters

Conversation

@EmersonBraun

Copy link
Copy Markdown
Member

Trilha 04 (padrão de chat), etapas 0, 1 e 8.

  • Adapter OpenAI-compatível com baseUrl/headers/fetch livres; presets OpenRouter, Cloudflare AI Gateway e Workers AI.
  • Serialização de image/file parts em openai, openai-compatible, anthropic, gemini/vertex e ollama (antes eram descartadas apesar de multiModal: true).
  • Correção das docs de visão; ADR 0041 (adapter content serialization); changeset.

Evidência local: adapters 585/585, suíte global 77/77 sem cache, quality gates 52/52, net ratchet 14/14, doc-bridge gate. Relatório: docs/evidence/adapters-multimodal-transport.md.

Draft: sem release/publicação até autorização.

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

Lighthouse

URL Performance Accessibility Best practices SEO
http://127.0.0.1:3000/ 61 100 96 100
http://127.0.0.1:3000/docs 79 100 96 100
http://127.0.0.1:3000/docs/get-started/getting-started/quickstart 80 100 96 100
http://127.0.0.1:3000/stack 96 100 96 100
http://127.0.0.1:3000/showcase 90 100 96 100

Run by .github/workflows/lighthouse.yml.

@EmersonBraun

Copy link
Copy Markdown
Member Author

Investigação PR-CI: os advisories atuais do audit atingem versões já presentes no lockfile da main 0e1c1aa92e69f29f41241e49753ecab8ae279119: source-map-js 1.2.1, seroval 1.5.4, shell-quote 1.10.0. O último CI equivalente da main passou antes destes advisories; não existe run de Dependency Review na main, pois esse workflow é exclusivo de PRs. Portanto a classificação como herdado vem da comparação do lockfile, e não de um suposto audit reprovado na main.

A correção de segurança será um commit separado com overrides de versões corrigidas e lockfile atualizado, sem alterar severidades, allowlists, budgets ou gates. A main não será modificada por esta tarefa.

Lychee: run do PR registrou zero erros de links e um timeout no registro MCP em reference/publications.mdx, já existente na main. O último Link check da main passou com zero timeouts; o novo CI verificará novamente o serviço, sem excluir o link.

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

Lighthouse

URL Performance Accessibility Best practices SEO
http://127.0.0.1:3000/ 62 100 96 100
http://127.0.0.1:3000/docs 86 100 96 100
http://127.0.0.1:3000/docs/get-started/getting-started/quickstart 84 100 96 100
http://127.0.0.1:3000/stack 96 100 96 100
http://127.0.0.1:3000/showcase 91 100 96 100

Run by .github/workflows/lighthouse.yml.

@EmersonBraun

Copy link
Copy Markdown
Member Author

CI final verde em dd6c98e3d11dc4df15ed095dbfad5806cc5e8a51: CI, audit e Lychee passaram, assim como os demais checks ativos; agregador CodeQL NEUTRAL. O PR permanece em rascunho.

Lychee havia falhado somente por timeout de serviço externo numa URL já existente, sem links quebrados; a nova execução passou sem exclusão ou alteração de docs. As versões vulneráveis também estavam na main, conforme comparação do lockfile e runs da main no comentário anterior; o commit separado dd6c98e3 fixa seroval 1.6.8, source-map-js 1.2.2 e shell-quote 1.11.0. O audit configurado passou sem mudar a waiver existente.

Pre-push normal concluiu quality gates, 60 tarefas de lint e 44 de build, sem bypass. Nenhum gate/budget/allowlist foi relaxado; não houve main write, merge ou release.

@EmersonBraun
EmersonBraun marked this pull request as ready for review October 7, 2026 13:12
@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Lighthouse

URL Performance Accessibility Best practices SEO
http://127.0.0.1:3000/ 59 100 96 100
http://127.0.0.1:3000/docs 87 100 96 100
http://127.0.0.1:3000/docs/get-started/getting-started/quickstart 87 100 96 100
http://127.0.0.1:3000/stack 96 100 96 100
http://127.0.0.1:3000/showcase 94 100 96 100

Run by .github/workflows/lighthouse.yml.

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Lighthouse

URL Performance Accessibility Best practices SEO
http://127.0.0.1:3000/ 53 100 96 100
http://127.0.0.1:3000/docs 84 100 96 100
http://127.0.0.1:3000/docs/get-started/getting-started/quickstart 85 100 96 100
http://127.0.0.1:3000/stack 96 100 96 100
http://127.0.0.1:3000/showcase 95 100 96 100

Run by .github/workflows/lighthouse.yml.

@EmersonBraun
EmersonBraun merged commit bbd4d97 into main Oct 8, 2026
18 checks passed
@EmersonBraun
EmersonBraun deleted the EmersonBraun/ch-a-adapters branch October 8, 2026 02:44
@EmersonBraun

Copy link
Copy Markdown
Member Author

Merge com --admin (contornando só a exigência de aprovação de outra conta), por decisão do responsável, após:

  • Decisão de produto: sem modelo multimodal, mensagens com imagem/arquivo caem para texto (com aviso), em vez de lançar CAPABILITY_UNSUPPORTED.
  • 3 rodadas de revisão independente: a 2ª encontrou que o fallback enviava a imagem inteira em base64 como texto ([image: data:...]); corrigido em ea4722b (marcadores [image omitted]/[file: nome], aviso no máximo uma vez por requisição, regra de partes binárias do assistente também na Anthropic). Veredito final: READY, com testes usando a saída real de partsToText.
  • CI: os 6 checks obrigatórios verdes.

Follow-ups não bloqueantes (pré-existentes): mensagem system/tool com partes binárias na Anthropic ainda lança CapabilityUnsupportedError; o caminho Gemini não tem fallback (sempre multimodal).

🤖 Generated with Claude Code

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.

1 participant