context-first-cli 1.8.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/commands/create-orchestrator.d.ts.map +1 -1
  2. package/dist/commands/create-orchestrator.js +15 -3
  3. package/dist/commands/create-orchestrator.js.map +1 -1
  4. package/dist/commands/feature.d.ts.map +1 -1
  5. package/dist/commands/feature.js +33 -2
  6. package/dist/commands/feature.js.map +1 -1
  7. package/dist/commands/update-commands.d.ts.map +1 -1
  8. package/dist/commands/update-commands.js +42 -2
  9. package/dist/commands/update-commands.js.map +1 -1
  10. package/dist/templates/commands/en/engineer/plan.md +297 -0
  11. package/dist/templates/commands/en/engineer/pr.md +167 -0
  12. package/dist/templates/commands/en/engineer/pre-pr.md +262 -0
  13. package/dist/templates/commands/en/engineer/start.md +281 -0
  14. package/dist/templates/commands/en/engineer/work.md +197 -0
  15. package/dist/templates/commands/en/products/check.md +233 -0
  16. package/dist/templates/commands/en/products/collect.md +156 -0
  17. package/dist/templates/commands/en/products/refine.md +222 -0
  18. package/dist/templates/commands/en/products/spec.md +267 -0
  19. package/dist/templates/commands/en/quality/metrics.md +240 -0
  20. package/dist/templates/commands/en/quality/observe.md +168 -0
  21. package/dist/templates/commands/en/warm-up.md +78 -0
  22. package/dist/templates/commands/es/engineer/plan.md +297 -0
  23. package/dist/templates/commands/es/engineer/pr.md +167 -0
  24. package/dist/templates/commands/es/engineer/pre-pr.md +262 -0
  25. package/dist/templates/commands/es/engineer/start.md +281 -0
  26. package/dist/templates/commands/es/engineer/work.md +197 -0
  27. package/dist/templates/commands/es/products/check.md +233 -0
  28. package/dist/templates/commands/es/products/collect.md +156 -0
  29. package/dist/templates/commands/es/products/refine.md +222 -0
  30. package/dist/templates/commands/es/products/spec.md +267 -0
  31. package/dist/templates/commands/es/quality/metrics.md +240 -0
  32. package/dist/templates/commands/es/quality/observe.md +168 -0
  33. package/dist/templates/commands/es/warm-up.md +78 -0
  34. package/dist/utils/config.d.ts +1 -0
  35. package/dist/utils/config.d.ts.map +1 -1
  36. package/dist/utils/config.js.map +1 -1
  37. package/package.json +1 -1
  38. package/templates/commands/en/engineer/plan.md +297 -0
  39. package/templates/commands/en/engineer/pr.md +167 -0
  40. package/templates/commands/en/engineer/pre-pr.md +262 -0
  41. package/templates/commands/en/engineer/start.md +281 -0
  42. package/templates/commands/en/engineer/work.md +197 -0
  43. package/templates/commands/en/products/check.md +233 -0
  44. package/templates/commands/en/products/collect.md +156 -0
  45. package/templates/commands/en/products/refine.md +222 -0
  46. package/templates/commands/en/products/spec.md +267 -0
  47. package/templates/commands/en/quality/metrics.md +240 -0
  48. package/templates/commands/en/quality/observe.md +168 -0
  49. package/templates/commands/en/warm-up.md +78 -0
  50. package/templates/commands/es/engineer/plan.md +297 -0
  51. package/templates/commands/es/engineer/pr.md +167 -0
  52. package/templates/commands/es/engineer/pre-pr.md +262 -0
  53. package/templates/commands/es/engineer/start.md +281 -0
  54. package/templates/commands/es/engineer/work.md +197 -0
  55. package/templates/commands/es/products/check.md +233 -0
  56. package/templates/commands/es/products/collect.md +156 -0
  57. package/templates/commands/es/products/refine.md +222 -0
  58. package/templates/commands/es/products/spec.md +267 -0
  59. package/templates/commands/es/quality/metrics.md +240 -0
  60. package/templates/commands/es/quality/observe.md +168 -0
  61. package/templates/commands/es/warm-up.md +78 -0
  62. package/templates/commands/pt-BR/engineer/plan.md +297 -0
  63. package/templates/commands/pt-BR/engineer/pr.md +167 -0
  64. package/templates/commands/pt-BR/engineer/pre-pr.md +262 -0
  65. package/templates/commands/pt-BR/engineer/start.md +281 -0
  66. package/templates/commands/pt-BR/engineer/work.md +197 -0
  67. package/templates/commands/pt-BR/products/check.md +233 -0
  68. package/templates/commands/pt-BR/products/collect.md +156 -0
  69. package/templates/commands/pt-BR/products/refine.md +222 -0
  70. package/templates/commands/pt-BR/products/spec.md +267 -0
  71. package/templates/commands/pt-BR/quality/metrics.md +240 -0
  72. package/templates/commands/pt-BR/quality/observe.md +168 -0
  73. package/templates/commands/pt-BR/warm-up.md +78 -0
  74. /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/plan.md +0 -0
  75. /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/pr.md +0 -0
  76. /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/pre-pr.md +0 -0
  77. /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/start.md +0 -0
  78. /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/work.md +0 -0
  79. /package/{templates/commands → dist/templates/commands/pt-BR}/products/check.md +0 -0
  80. /package/{templates/commands → dist/templates/commands/pt-BR}/products/collect.md +0 -0
  81. /package/{templates/commands → dist/templates/commands/pt-BR}/products/refine.md +0 -0
  82. /package/{templates/commands → dist/templates/commands/pt-BR}/products/spec.md +0 -0
  83. /package/{templates/commands → dist/templates/commands/pt-BR}/quality/metrics.md +0 -0
  84. /package/{templates/commands → dist/templates/commands/pt-BR}/quality/observe.md +0 -0
  85. /package/{templates/commands → dist/templates/commands/pt-BR}/warm-up.md +0 -0
@@ -0,0 +1,168 @@
1
+ # Observabilidade de Decisões
2
+
3
+ Este comando registra decisões importantes tomadas durante o desenvolvimento, criando um log auditável para explicabilidade e rastreabilidade.
4
+
5
+ ## 🎯 Objetivo
6
+
7
+ Criar registro estruturado de decisões técnicas e de produto, garantindo:
8
+ - **Explicabilidade**: Por que cada decisão foi tomada
9
+ - **Rastreabilidade**: Quais fontes (PRD, metaspecs, ADRs) embasaram a decisão
10
+ - **Auditoria**: Histórico completo de escolhas para revisão futura
11
+ - **Aprendizado**: Documentação de trade-offs e alternativas consideradas
12
+
13
+ **IMPORTANTE**: Este comando NÃO gera decisões novas. Ele apenas REGISTRA decisões que já foram tomadas no processo de desenvolvimento.
14
+
15
+ ## 📋 Pré-requisitos
16
+
17
+ - Executou pelo menos um dos comandos que geram decisões:
18
+ - `/spec` - gera PRD com decisões de produto
19
+ - `/plan` - gera plan.md com decisões técnicas
20
+ - `/work` - implementação gera decisões durante desenvolvimento
21
+
22
+ ## 🔍 Processo de Observação
23
+
24
+ ### 1. Identificar Decisões Relevantes
25
+
26
+ Analise os arquivos da sessão (`./.sessions/<ISSUE-ID>/`) para identificar decisões:
27
+
28
+ **Após `/spec`** - Decisões de Produto:
29
+ - Leia `./.sessions/<ISSUE-ID>/prd.md`
30
+ - Identifique decisões em:
31
+ - Escopo (o que entra/não entra na feature)
32
+ - Personas atendidas (quem é o público-alvo)
33
+ - Métricas de sucesso (como medir resultados)
34
+ - Requisitos não-funcionais (performance, acessibilidade)
35
+ - Restrições e trade-offs
36
+
37
+ **Após `/plan`** - Decisões Técnicas:
38
+ - Leia `./.sessions/<ISSUE-ID>/plan.md`
39
+ - Identifique decisões em:
40
+ - Arquitetura de componentes/módulos
41
+ - Escolha de bibliotecas ou ferramentas
42
+ - Padrões de implementação
43
+ - Estrutura de dados
44
+ - Estratégia de testes
45
+
46
+ **Durante `/work`** - Decisões de Implementação:
47
+ - Leia `./.sessions/<ISSUE-ID>/work.md`
48
+ - Identifique decisões em:
49
+ - Refatorações realizadas
50
+ - Mudanças de abordagem
51
+ - Otimizações aplicadas
52
+ - Tratamento de edge cases
53
+
54
+ ### 2. Documentar Cada Decisão
55
+
56
+ Para cada decisão identificada, documente:
57
+
58
+ ```markdown
59
+ ## Decisão: [Título Claro]
60
+
61
+ **Contexto**: [Por que precisamos decidir isso? Qual o problema ou necessidade?]
62
+
63
+ **Opções Consideradas**:
64
+ 1. **Opção A**: [Descrição]
65
+ - Prós: [vantagens]
66
+ - Contras: [desvantagens]
67
+ 2. **Opção B**: [Descrição]
68
+ - Prós: [vantagens]
69
+ - Contras: [desvantagens]
70
+
71
+ **Decisão**: [Opção escolhida]
72
+
73
+ **Justificativa**: [Por que escolhemos esta opção? Quais critérios foram mais importantes?]
74
+
75
+ **Fontes**:
76
+ - [PRD seção X]
77
+ - [Metaspec Y]
78
+ - [ADR-00Z]
79
+
80
+ **Trade-offs Aceitos**: [Quais desvantagens aceitamos conscientemente?]
81
+
82
+ **Reversibilidade**: Fácil / Média / Difícil
83
+
84
+ **Data**: [data da decisão]
85
+ ```
86
+
87
+ ### 3. Criar Log de Decisões
88
+
89
+ Salve em `./.sessions/<ISSUE-ID>/decisions.md`:
90
+
91
+ ```markdown
92
+ # Log de Decisões - [ISSUE-ID]
93
+
94
+ ## Resumo
95
+ [Breve resumo das principais decisões tomadas nesta feature]
96
+
97
+ ## Decisões de Produto
98
+
99
+ ### [Decisão 1]
100
+ [Conforme template acima]
101
+
102
+ ### [Decisão 2]
103
+ [Conforme template acima]
104
+
105
+ ## Decisões Técnicas
106
+
107
+ ### [Decisão 3]
108
+ [Conforme template acima]
109
+
110
+ ### [Decisão 4]
111
+ [Conforme template acima]
112
+
113
+ ## Decisões de Implementação
114
+
115
+ ### [Decisão 5]
116
+ [Conforme template acima]
117
+
118
+ ## Lições Aprendidas
119
+ - [Lição 1]
120
+ - [Lição 2]
121
+
122
+ ## Decisões Pendentes
123
+ - [Decisão que ainda precisa ser tomada]
124
+ ```
125
+
126
+ ## 📊 Análise de Impacto
127
+
128
+ Para decisões críticas, documente o impacto:
129
+
130
+ ```markdown
131
+ ## Análise de Impacto
132
+
133
+ **Repositórios Afetados**: [lista]
134
+
135
+ **Componentes Impactados**: [lista]
136
+
137
+ **Dependências Criadas**: [lista]
138
+
139
+ **Riscos Introduzidos**: [lista]
140
+
141
+ **Mitigações Aplicadas**: [lista]
142
+ ```
143
+
144
+ ## 🔄 Revisão de Decisões
145
+
146
+ Periodicamente, revise as decisões tomadas:
147
+ - Ainda fazem sentido?
148
+ - Os trade-offs se provaram corretos?
149
+ - Há aprendizados para documentar?
150
+ - Alguma decisão precisa ser revertida?
151
+
152
+ ---
153
+
154
+ **Argumentos fornecidos**:
155
+
156
+ ```
157
+ #$ARGUMENTS
158
+ ```
159
+
160
+ ---
161
+
162
+ ## 🎯 Resultado
163
+
164
+ Após executar este comando, você terá:
165
+ - Log completo de decisões em `./.sessions/<ISSUE-ID>/decisions.md`
166
+ - Rastreabilidade de cada escolha feita
167
+ - Documentação para futuras referências
168
+ - Base para ADRs (se decisões forem de arquitetura)
@@ -0,0 +1,78 @@
1
+ # Aquecimento - Carregamento de Contexto
2
+
3
+ Este comando prepara o ambiente carregando o contexto completo do projeto e do workspace atual.
4
+
5
+ ## 1. Identificar Workspace Atual
6
+
7
+ Verifique se você está dentro de um workspace criado pelo `context-cli`:
8
+
9
+ ```bash
10
+ # Verificar se está em um diretório de workspace
11
+ pwd
12
+ # O workspace geralmente está em ~/workspaces/<ISSUE-ID>/
13
+ ```
14
+
15
+ Se não estiver em um workspace, pergunte ao usuário qual workspace usar ou se deve criar um novo com `feature:start`.
16
+
17
+ ## 2. Carregar Configuração do Projeto
18
+
19
+ Identifique o orchestrator do projeto:
20
+
21
+ 1. **Procure o arquivo `.contextrc.json`** em qualquer um dos repositórios do workspace
22
+ 2. Este arquivo contém a URL do repositório orchestrator
23
+ 3. Se o orchestrator ainda não estiver clonado localmente, clone-o
24
+
25
+ ## 3. Carregar Manifesto do Projeto
26
+
27
+ Leia o `context-manifest.json` do orchestrator para entender:
28
+ - Lista completa de repositórios do ecossistema
29
+ - URL do repositório de MetaSpecs
30
+ - Dependências entre repositórios
31
+ - Roles de cada repositório (application, library, service, specs-provider)
32
+
33
+ ## 4. Carregar MetaSpecs
34
+
35
+ O repositório de MetaSpecs está definido no `context-manifest.json` (geralmente com `role: "specs-provider"`).
36
+
37
+ **Leia sempre os arquivos de índice primeiro:**
38
+
39
+ 1. **`README.md`** - Visão geral do projeto e estrutura de documentação
40
+ 2. **`index.md`** (na raiz ou em subpastas) - Índice de especificações disponíveis
41
+
42
+ **Use os índices como referência** para navegar até as especificações específicas que você precisa. Não assuma que arquivos específicos existem - sempre consulte os índices primeiro.
43
+
44
+ ## 5. Carregar Sessão Atual (se existir)
45
+
46
+ Verifique se existe uma sessão salva para este workspace:
47
+
48
+ ```bash
49
+ # Procurar por sessão no orchestrator
50
+ ls -la .sessions/<ISSUE-ID>/ 2>/dev/null
51
+ ```
52
+
53
+ Se existir, leia os arquivos de sessão para recuperar o contexto da última execução.
54
+
55
+ ## 6. Contexto dos Repositórios
56
+
57
+ Para cada repositório presente no workspace, leia:
58
+ - `README.md` - Propósito e visão geral do repositório
59
+ - Arquivo de configuração principal (`package.json`, `pom.xml`, `requirements.txt`, etc.)
60
+
61
+ ## 7. Navegação Inteligente
62
+
63
+ - **Código**: Use ferramentas de busca (glob, grep) para localizar arquivos relevantes
64
+ - **Documentação**: Use os índices dos MetaSpecs como referência
65
+ - **Aguarde Instruções**: NÃO leia outros arquivos agora. Aguarde o próximo comando.
66
+
67
+ ## 8. Princípio Jidoka (Parar ao Detectar Problemas)
68
+
69
+ Se detectar desalinhamento, conflitos ou problemas:
70
+ 1. 🛑 **PARE** imediatamente
71
+ 2. 📝 **DOCUMENTE** o problema encontrado
72
+ 3. 💬 **ALERTE** o usuário antes de prosseguir
73
+
74
+ ---
75
+
76
+ **Argumentos fornecidos**: #$ARGUMENTS
77
+
78
+ **Status**: Contexto carregado. Aguardando próximo comando.