Criação de um novo adaptador de harness
Manual operacional para criar e publicar um novo adaptador de harness do Apothem.
Use este manual operacional ao criar um novo adaptador de harness para inclusão nativa no Apothem ou como um pacote de terceiros.
Pré-requisitos
- Familiaridade com o protocolo HarnessAdapter
- Compreensão do formato de configuração do harness de destino
- Python 3.10+
Passos
1. Implemente o adaptador
Siga o exemplo Criação de um adaptador de harness
para implementar HarnessAdapter para o harness de destino.
Se o adaptador gravar um template de texto simples (um arquivo que não é JSON
nem YAML) com mode: write_text e ownership_class: operator-owned,
uninstall exclui o arquivo somente enquanto ele for uma cópia não editada de
um template que o Apothem entregou. Quando um lançamento posterior mudar o
template, adicione o digest SHA-256 do texto anterior à lista earlier_digests
dessa entrada do manifesto na mesma mudança, ou uninstall deixará no lugar
toda cópia não editada que o lançamento anterior gravou. Obtenha o digest do
texto na tag de lançamento mais recente com
git show <tag>:<template path> | sha256sum; o template não deve conter nenhum
token de caminho ${...}. tests/unit/test_template_digests.py falha quando um
template entregue não está contabilizado.
2. Escreva a página de documentação
Crie site/content/docs/harnesses/<slug>.mdx cobrindo:
- Fluxo de instalação
- Mapeamento do perfil para a configuração nativa
- Ressalvas de compatibilidade
- Receitas de verificação
- Receitas de atualização e desinstalação
- Superfície da porta de conformidade
- Tabela de resolução de problemas
- Tabela de ajustes de configuração
3. Escreva os testes
tests/packaging/test_<slug>_adapter.py
tests/unit/test_<slug>_adapter.pyCobertura mínima de testes:
test_install_creates_expected_filestest_verify_passes_after_installtest_uninstall_removes_files
4. Verifique localmente
apothem install --harness <slug>
apothem verify --harness <slug>
python -m apothem.conformity.gate --all .5. Envie o pull request
Abra um PR com:
- A implementação do adaptador
- A página de documentação em
site/content/docs/harnesses/<slug>.mdx - Os testes
- O registro do ponto de entrada em
pyproject.toml, uma entradaHARNESS_REGISTRYemsrc/apothem/lib/harness_registry_data.py(incrementandoSUPPORTED_HARNESS_COUNTali) e o ID no enumharnessIddesrc/apothem/schemas/profile.schema.json - Entrada no CHANGELOG
Configuração da conta de publicador
Configure o publicador confiável do npmjs.com para @ahmed-g-gad/apothem e os pré-requisitos de lançamento do lado do GitHub.
Lista de verificação de sincronização entre máquinas
Procedimento de verificação para confirmar que o adaptador do Claude Code instala, valida e desinstala corretamente em um host novo, com verificações completas de portabilidade.