theforge-cli 0.2.3 → 0.2.4

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  Todas as mudanças notáveis deste projeto são documentadas aqui, no
4
4
  formato [Keep a Changelog](https://keepachangelog.com/pt-BR/1.1.0/).
5
5
 
6
+ ## [0.2.4] - 2026-10-20
7
+
8
+ ### Changed
9
+
10
+ - Cycle 12.1 local-source + environment discovery: gitless forge detection (`GITLESS_*` states, A/B/C identity), `local install|update|repair|uninstall` bound to managed artifacts, `forge/LocalForgeSourceDetection/v1` + `forge/EnvironmentDiscovery/v1` contracts, deterministic shell + python pipelines (`env discover`, `env paths`), FORGE-PYTHON/FORGE-SHELL refusal codes, `install.windows.sh` routed when PowerShell is unavailable, ubuntu+windows+macos CI matrix with a simulated no-PowerShell gate.
11
+
6
12
  ## [0.2.3] - 2026-10-20
7
13
 
8
14
  ### Changed
package/README.md CHANGED
@@ -19,10 +19,15 @@ feedback visual em tempo real.
19
19
  - **Provisionamento de `.env`**: antes de qualquer script de
20
20
  instalação, copia `.env.example` para `.env` ou cria um modelo com
21
21
  comentários. Um `.env` existente nunca é sobrescrito.
22
- - **Scripts por sistema operacional**: `install.ps1` no Windows e
23
- `install.sh` no Linux/macOS, detectados automaticamente.
22
+ - **Scripts por sistema operacional**: `install.ps1`/`setup.ps1` no
23
+ Windows (powershell.exe → pwsh → Git Bash via `install.windows.sh`) e
24
+ `install.sh`/`setup.sh` no Linux/macOS, detectados automaticamente.
25
+ - **Fonte local (gitless)**: `install <dir>` instala de ZIP extraído,
26
+ pasta copiada ou diretório sem `.git` — detecção por filesystem, sem
27
+ spawn de git e sem rede no caminho gitless.
24
28
  - **Verificação de ambiente (preflight)**: confirma `git`, Node.js
25
- > = 20 e `powershell.exe` (Windows) antes de qualquer alteração.
29
+ > = 20 e uma shell de instalação no Windows (powershell.exe, pwsh ou
30
+ > Git Bash) antes de qualquer alteração.
26
31
  - **Isolamento de falhas**: o erro em um repositório não interrompe os
27
32
  demais; o relatório final mostra `[OK]`, `[AVISO]` ou `[ERRO]` por
28
33
  item, com tempo de execução.
@@ -31,13 +36,17 @@ feedback visual em tempo real.
31
36
 
32
37
  ## Requisitos
33
38
 
34
- | Requisito | Versão | Observação |
35
- | --------------- | ---------------- | -------------------------------- |
36
- | Node.js | >= 20 | Verificado no preflight |
37
- | npm | >= 10 | Gerenciador de pacotes fixo |
38
- | Git | qualquer recente | Precisa estar no `PATH` |
39
- | PowerShell | qualquer | Somente Windows — `install.ps1` |
40
- | Credenciais Git | — | Acesso aos repositórios privados |
39
+ | Requisito | Versão | Observação |
40
+ | ---------------------- | ---------------- | ------------------------------------------------ |
41
+ | Node.js | >= 20 | Verificado no preflight |
42
+ | npm | >= 10 | Gerenciador de pacotes fixo |
43
+ | Git | qualquer recente | Precisa estar no `PATH` |
44
+ | PowerShell ou Git Bash | qualquer | Somente Windows — `.ps1` ou `install.windows.sh` |
45
+ | Credenciais Git | — | Acesso aos repositórios privados |
46
+
47
+ > PowerShell **não** é obrigatório no Windows: sem `powershell.exe`/`pwsh`
48
+ > o Git Bash executa `install.windows.sh`. WSL nunca substitui shell
49
+ > nativo — detalhes em [docs/installation.md](docs/installation.md).
41
50
 
42
51
  ## Instalação
43
52
 
@@ -119,6 +128,17 @@ recusado antes de qualquer mutação.
119
128
  - `uninstall --method registry` remove venv + receipt com plano e
120
129
  confirmação (`--yes`); `--all`/`--only` resolvem o conjunto instalado.
121
130
 
131
+ ## Fonte local (ZIP, pasta copiada, sem `.git`)
132
+
133
+ `forge-cli install <dir>` instala direto de um diretório — ZIP do GitHub
134
+ extraído, pasta copiada ou checkout sem `.git`. O bootstrap roda no
135
+ lugar, sem `git init`/clone/pull e sem rede; `update <dir-novo>`
136
+ reconcilia arquivos na fonte registrada, `reinstall <nome>` re-executa
137
+ o bootstrap e `uninstall <nome>` remove só os artefatos gerenciados
138
+ (a fonte e os arquivos do usuário nunca são apagados). Guia completo
139
+ por cenário: [docs/installation.md](docs/installation.md); códigos de
140
+ recusa: [docs/troubleshooting.md](docs/troubleshooting.md).
141
+
122
142
  ## Independência
123
143
 
124
144
  O forge-cli é uma conveniência opcional: nenhuma Forja depende dele e remover o CLI (`self uninstall`) não afeta Forjas já instaladas. Instalações feitas à mão são reconhecidas (`forge-cli status`) sem precisar reinstalar. Estes cenários estão cobertos em `tests/independence.test.ts`.
@@ -127,6 +147,8 @@ O forge-cli é uma conveniência opcional: nenhuma Forja depende dele e remover
127
147
 
128
148
  ```bash
129
149
  forge-cli install api-forge platform-forge # instala Forjas escolhidas
150
+ forge-cli install ./minha-fonte # fonte local (ZIP/cópia/sem .git)
151
+ forge-cli update ./minha-fonte-nova # update por diretório mais novo
130
152
  forge-cli install # fluxo interativo
131
153
  forge-cli clone api-forge # só clona/sincroniza, sem scripts
132
154
  forge-cli status # estado local (clonado, versão, alterações)
@@ -164,8 +186,9 @@ Execute `npm run dev` (ou `forge-cli`, se instalado globalmente) e siga
164
186
  o fluxo interativo:
165
187
 
166
188
  1. **Banner e verificação de ambiente.** O CLI exibe o banner do Forge
167
- e valida `git`, a versão do Node.js e o `powershell.exe` (no
168
- Windows). Falhas encerram o processo antes de qualquer prompt.
189
+ e valida `git`, a versão do Node.js e uma shell de instalação no
190
+ Windows (`powershell.exe`, `pwsh` ou Git Bash). Falhas encerram o
191
+ processo antes de qualquer prompt.
169
192
  2. **Diretório de instalação.** Informe onde os repositórios serão
170
193
  clonados. O padrão é `./forge-workspace`; o caminho é convertido
171
194
  para absoluto e o diretório criado se não existir.
@@ -263,6 +286,8 @@ factory/ # fluxo spec-driven (Loop Factory)
263
286
 
264
287
  - [Arquitetura e decisões de design](https://github.com/EdgarSocrates98/forge-cli/blob/v0.1.0/docs/arquitetura.md)
265
288
  - [Matriz de capacidades das Forjas](https://github.com/EdgarSocrates98/forge-cli/blob/v0.1.0/docs/capabilities.md)
289
+ - [Guia de instalação por cenário](docs/installation.md)
290
+ - [Códigos FORGE-* de recusa](docs/troubleshooting.md)
266
291
  - [Solução de problemas](https://github.com/EdgarSocrates98/forge-cli/blob/v0.1.0/docs/solucao-de-problemas.md)
267
292
  - [Como contribuir](https://github.com/EdgarSocrates98/forge-cli/blob/v0.1.0/CONTRIBUTING.md)
268
293
  - [Registro de mudanças](https://github.com/EdgarSocrates98/forge-cli/blob/v0.1.0/CHANGELOG.md)