mirror of
https://github.com/fsolla/teqo.git
synced 2026-11-13 15:13:07 +00:00
5.4 KiB
5.4 KiB
Modelos das flags do worktree: --zen → Space Bunny Free e --free → Space Bunny Alpha
Status: rascunho Atualizado em: 2026-09-25 Issue: #1342 Priority: P2 Impeccable: A — N/A sem UI Design UI: N/A — sem UI Appetite: ~0,5 dia, uma troca values-only no mapa fixo Responsável: —
Intenção
Os atalhos de modelo do provisionamento de worktree devem acompanhar os modelos escolhidos para a equipe: Space Bunny Free pelo OpenCode Zen e Space Bunny Alpha pelo OpenRouter. A mudança afeta duas entradas do mesmo mapa, sem alterar o fluxo de seleção nem o contrato dos worktrees.
Persona e fluxo
- Persona / contexto: pessoa desenvolvedora ou operadora que cria um worktree e escolhe o modelo da sessão ao digitar a flag.
- Job principal: usar
--zenou--freee abrir a sessão no modelo correspondente sem decorar IDs ou consultar o catálogo antes. - Fluxo desejado: escolher
next,plan,newoufix, informar uma das flags e reconhecer no modelo da sessão o valor fixo associado. - Anti-goals de produto: não criar seletor, flag, alias, fallback ou mapa novo; não revisar as outras opções do catálogo; não persistir preferência.
Objetivo e aceite
pnpm worktree next|plan|new|fix --zenabre a sessão em Space Bunny Free pelo OpenCode Zen.pnpm worktree next|plan|new|fix --freeabre a sessão em Space Bunny Alpha pelo OpenRouter.- Código, ajuda, comandos, skills e pin unitário que exibem o mapa chegam à mesma associação, sem contrato divergente.
- O preset sem flag, as demais flags, o fail-high para flags múltiplas e a variante
maxpermanecem inalterados. - Planos e changelogs antigos continuam como registro histórico e não são reescritos.
Dados (intenção)
- Vou apresentar dados? Não. É uma troca de configuração, sem métrica ou visualização.
- Decisões desbloqueadas: a pessoa confia que cada flag abre o modelo que o nome anuncia.
- Forma: N/A. O formato técnico fica para o plano de implementação.
Dados da decisão (literais)
| Flag | Valor atual | Valor novo |
|---|---|---|
--zen |
opencode/muse-spark-1.3-contributor-free |
opencode/space-bunny-free |
--free |
openrouter/openrouter/free |
openrouter/stealth/space-bunny-alpha |
--zendeve mostrar Space Bunny Free do provider OpenCode Zen (opencode).--freedeve mostrar Space Bunny Alpha do provider OpenRouter (openrouter).- Os dois modelos aceitam a variante
max;MODEL_VARIANTcontinua sendomax.
Direção no codebase (hipótese)
- Áreas prováveis:
scripts/lib/worktree.mjs,scripts/worktree.mjs,.agents/shell/worktree.sh,.opencode/commands/worktree.md,.agents/skills/worktree-next-issue/SKILL.mdetests/unit/worktree.unit.spec.ts. - Precedente a olhar: OPS112 trocou
--zenno mesmo mapa; OPS100 introduziu--free; OPS127 aplicamaxà sessão e permanece ortogonal. - Risco de acoplamento:
WORKTREE_MODEL_MAPé o owner do contrato. Alterações paralelas, aliases ou exceções por purpose criariam dois caminhos para a mesma escolha.
Dependências
- Nenhuma.
Fora de escopo
- Mudar o preset sem flag, o parser, a precedência ou o guardrail at-most-one.
- Revisar
cheap,pro,go,alibabaouglm, adicionar aliases ou configurar fallback. - Alterar
MODEL_VARIANT, o ciclo de sessões ou a forma como o modelo é transportado. - Tocar schema, migration, Payload, Consent, URL pública ou UI.
- Editar planos e changelogs históricos.
Rabbit holes de produto
- Criar um mapa paralelo. Isso faria duas fontes dizerem qual modelo cada flag abre. Corte: manter o mapa existente como único owner.
- Adicionar aliases para os modelos antigos. O pedido é uma troca direta, não uma política de compatibilidade. Corte: os valores antigos saem sem alias.
- Reescrever o cardápio inteiro. Isso mistura a troca pedida com outra decisão sobre o catálogo. Corte: mudar somente
zenefree.
Questões em aberto (produto)
- Nenhuma. Os providers, os nomes e os IDs foram definidos no pedido e conferidos no catálogo local.
Referências
scripts/lib/worktree.mjs:55-81(owner do mapa e da resolução)scripts/worktree.mjs:22-30escripts/worktree.mjs:992-996(docblock e ajuda derivada).agents/shell/worktree.sh:23-28(documentação viva do launcher).opencode/commands/worktree.md:7(comando/worktree).agents/skills/worktree-next-issue/SKILL.md:32-34(contrato do lançamento)tests/unit/worktree.unit.spec.ts:469-523(pin do mapa e das flags)docs/changelog/2026-09-15-ops112.md(precedente de--zen)docs/changelog/2026-08-27-ops100.md(precedente de--free)AGENTS.mdeAGENTS-infra.md(convenções do projeto)- Design UI: N/A, sem UI.
Self-score (shaping)
- Fatia: 5/5. As duas flags formam um único outcome verificável.
- Apetite: 5/5. A troca cabe em ~0,5 dia sem ampliar o mecanismo.
- Persona e aceite: 5/5. Quem usa, o que precisa alcançar e as garantias preservadas estão explícitos.
- Direção no codebase: 5/5. Os caminhos são hipóteses para a implementação, não um desenho técnico fechado.
- Decisões de engenharia: 5/5. O plano fixa apenas intenção, literais, guardrails e limites.
Total: 5/5.