@promovaweb/specsfy 0.7.0 → 0.9.1
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 +53 -0
- package/README.md +68 -32
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +155 -4
- package/dist/cli.js.map +1 -1
- package/dist/clickupfy.d.ts +16 -0
- package/dist/clickupfy.d.ts.map +1 -0
- package/dist/clickupfy.js +36 -0
- package/dist/clickupfy.js.map +1 -0
- package/dist/installer.d.ts +2 -2
- package/dist/installer.d.ts.map +1 -1
- package/dist/installer.js +18 -42
- package/dist/installer.js.map +1 -1
- package/dist/lifecycle.d.ts +40 -0
- package/dist/lifecycle.d.ts.map +1 -0
- package/dist/lifecycle.js +254 -0
- package/dist/lifecycle.js.map +1 -0
- package/dist/milestones.d.ts +31 -0
- package/dist/milestones.d.ts.map +1 -0
- package/dist/milestones.js +148 -0
- package/dist/milestones.js.map +1 -0
- package/dist/prerequisites.d.ts +28 -0
- package/dist/prerequisites.d.ts.map +1 -0
- package/dist/prerequisites.js +112 -0
- package/dist/prerequisites.js.map +1 -0
- package/dist/progress.d.ts +2 -0
- package/dist/progress.d.ts.map +1 -1
- package/dist/progress.js +25 -28
- package/dist/progress.js.map +1 -1
- package/dist/tui.d.ts +29 -0
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +259 -91
- package/dist/tui.js.map +1 -1
- package/dist/updater.d.ts +15 -3
- package/dist/updater.d.ts.map +1 -1
- package/dist/updater.js +147 -35
- package/dist/updater.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,59 @@ Todas as mudanças relevantes do Specsfy CLI são registradas neste arquivo.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.9.1] - 2026-08-22
|
|
8
|
+
|
|
9
|
+
- Corrige a navegação da TUI, o foco após fechar telas, o fechamento por
|
|
10
|
+
`Ctrl+Q` e a atualização de painéis durante a execução de testes.
|
|
11
|
+
- Preserva seleções de skills durante refresh e impede que operações
|
|
12
|
+
assíncronas devolvam a pessoa para uma aba antiga.
|
|
13
|
+
- Faz o updater comparar a versão publicada no npm, evita avisos repetidos e
|
|
14
|
+
atualiza executáveis avulsos com validação e substituição atômica.
|
|
15
|
+
- Completa a importação de MVP com defaults óbvios, pendências explícitas,
|
|
16
|
+
backlogs somente para desenvolvimento e specs derivadas desses backlogs.
|
|
17
|
+
|
|
18
|
+
## [0.9.0] - 2026-08-21
|
|
19
|
+
|
|
20
|
+
- Adiciona especialistas essenciais ao setup e amplia o catálogo de
|
|
21
|
+
especialistas do Specsfy.
|
|
22
|
+
- Torna a descoberta de MVP contextual e preserva seu resultado em inboxes.
|
|
23
|
+
- Suporta projetos em subdiretórios do Hub e padroniza interfaces React com
|
|
24
|
+
ReUI.
|
|
25
|
+
- Publica aliases estáveis do ebook e amplia o contexto auxiliar do CLI.
|
|
26
|
+
|
|
27
|
+
## [0.8.1] - 2026-08-13
|
|
28
|
+
|
|
29
|
+
- Inclui o pacote oficial `skills` como dependência do CLI e o localiza mesmo
|
|
30
|
+
quando um launcher inicia o Specsfy com um `PATH` reduzido.
|
|
31
|
+
- Alinha o requisito mínimo ao Node.js 22.20 exigido pelo materializador.
|
|
32
|
+
- Adiciona `specsfy setup` como alias de `specsfy install`, com o mesmo
|
|
33
|
+
diagnóstico de Node.js, Git, projeto e materializador de skills.
|
|
34
|
+
- Adiciona `specsfy doctor` e executa o mesmo diagnóstico antes do setup para
|
|
35
|
+
conferir Node.js, Git, npm, projeto e disponibilidade do `skills` ou `npx`.
|
|
36
|
+
- Adiciona `specsfy update` para atualizar todas as skills Specsfy instaladas e
|
|
37
|
+
preserva `specsfy skills update` como comando compatível.
|
|
38
|
+
- Adiciona `specsfy upgrade` para consultar uma versão estável mais recente e
|
|
39
|
+
atualizar o próprio CLI pelo pacote oficial do npm sem fazer downgrade.
|
|
40
|
+
- Documenta separadamente instalação, atualização das skills e atualização do
|
|
41
|
+
CLI nos guias, na referência de comandos, no ebook e no site.
|
|
42
|
+
|
|
43
|
+
## [0.8.0] - 2026-08-12
|
|
44
|
+
|
|
45
|
+
- Adiciona os comandos `transition`, `migrate` e `effort` para manter pasta,
|
|
46
|
+
status e estimativa das specs pela mesma interface, com saída JSON e
|
|
47
|
+
integração opcional com o ClickUpfy.
|
|
48
|
+
- Adiciona `milestones sync` para projetar o progresso dos milestones em
|
|
49
|
+
`specs.md` e `specs/milestones/`, preservando o conteúdo escrito pelo
|
|
50
|
+
usuário.
|
|
51
|
+
- Passa a ler o ciclo de vida em `specs/<estado>/`, mantém compatibilidade com
|
|
52
|
+
o layout anterior e inclui Effort e perfil de execução no progresso.
|
|
53
|
+
- Amplia o bootstrap com as skills de entrevista e governança de milestones e
|
|
54
|
+
mantém a instalação protegida por fingerprints.
|
|
55
|
+
- Reorganiza a paleta escura da TUI com cores semânticas e contraste verificado
|
|
56
|
+
para texto, foco, seleção, bordas, campos, botões e barras de rolagem.
|
|
57
|
+
- Atualiza capturas, documentação de usuário e desenvolvimento, referência de
|
|
58
|
+
comandos, ebook e publicação dos guias no site da Promovaweb.
|
|
59
|
+
|
|
7
60
|
## [0.7.0] - 2026-07-30
|
|
8
61
|
|
|
9
62
|
- Migra o CLI e a TUI de Python para Node.js 22, com instalação global por
|
package/README.md
CHANGED
|
@@ -3,8 +3,12 @@
|
|
|
3
3
|
<!-- markdownlint-disable MD033 -->
|
|
4
4
|
<p align="center">
|
|
5
5
|
<picture>
|
|
6
|
-
<source srcset="
|
|
7
|
-
<img
|
|
6
|
+
<source srcset="https://promovaweb.com/opensource/specsfy/icon.svg" type="image/svg+xml">
|
|
7
|
+
<img
|
|
8
|
+
src="https://promovaweb.com/opensource/specsfy/icon.png"
|
|
9
|
+
alt="Logo do Specsfy"
|
|
10
|
+
width="128"
|
|
11
|
+
>
|
|
8
12
|
</picture>
|
|
9
13
|
</p>
|
|
10
14
|
<!-- markdownlint-enable MD033 -->
|
|
@@ -14,10 +18,8 @@ tecnologias e acompanhar em tempo real o progresso das specs de um projeto.
|
|
|
14
18
|
|
|
15
19
|
## Pré-requisitos
|
|
16
20
|
|
|
17
|
-
- Node.js 22.
|
|
18
|
-
-
|
|
19
|
-
[`vercel-labs/skills`](https://github.com/vercel-labs/skills), ou `npx`
|
|
20
|
-
disponível para executá-lo sob demanda.
|
|
21
|
+
- Node.js 22.20 ou superior, com o npm disponível.
|
|
22
|
+
- Git para obter o framework e acesso de escrita ao projeto consumidor.
|
|
21
23
|
- acesso autenticado ao repositório privado: execute `gh auth login` no uso
|
|
22
24
|
interativo ou defina `GH_TOKEN`/`GITHUB_TOKEN` na automação.
|
|
23
25
|
|
|
@@ -39,9 +41,15 @@ O npm instala o pacote publicado e disponibiliza o comando `specsfy`. Para
|
|
|
39
41
|
atualizar a instalação global:
|
|
40
42
|
|
|
41
43
|
```bash
|
|
42
|
-
|
|
44
|
+
specsfy upgrade
|
|
43
45
|
```
|
|
44
46
|
|
|
47
|
+
A instalação pelo npm inclui o `skills`, do projeto
|
|
48
|
+
[`vercel-labs/skills`](https://github.com/vercel-labs/skills). O Specsfy também
|
|
49
|
+
aceita uma instalação global, `SPECSFY_SKILLS_CLI` ou `npx` como alternativas.
|
|
50
|
+
O executável avulso de `get.specsfy.dev` não carrega pacotes externos; nesse
|
|
51
|
+
caso, mantenha `skills` ou `npx` disponível no `PATH`.
|
|
52
|
+
|
|
45
53
|
O catálogo e a verificação de versões usam a API do GitHub. O CLI procura,
|
|
46
54
|
nesta ordem, `GH_TOKEN`, `GITHUB_TOKEN` e a sessão retornada por
|
|
47
55
|
`gh auth token`. As credenciais não são gravadas pelo Specsfy.
|
|
@@ -49,13 +57,14 @@ nesta ordem, `GH_TOKEN`, `GITHUB_TOKEN` e a sessão retornada por
|
|
|
49
57
|
Para instalar uma versão específica, informe a versão no próprio pacote:
|
|
50
58
|
|
|
51
59
|
```bash
|
|
52
|
-
npm install --global @promovaweb/specsfy@0.
|
|
60
|
+
npm install --global @promovaweb/specsfy@0.8.1
|
|
53
61
|
```
|
|
54
62
|
|
|
55
63
|
## Comandos
|
|
56
64
|
|
|
57
65
|
```bash
|
|
58
66
|
specsfy
|
|
67
|
+
specsfy doctor --project .
|
|
59
68
|
specsfy install --project .
|
|
60
69
|
specsfy install --project . --detected
|
|
61
70
|
specsfy install --project . \
|
|
@@ -63,12 +72,19 @@ specsfy install --project . \
|
|
|
63
72
|
--specialist specsfy-specialist-postgres
|
|
64
73
|
specsfy skills list
|
|
65
74
|
specsfy skills detect --project .
|
|
66
|
-
|
|
75
|
+
npx skills add https://github.com/promovaweb/specsfy \
|
|
76
|
+
--skill specsfy-specialist-laravel --agent universal --copy --full-depth
|
|
67
77
|
specsfy skills remove specsfy-specialist-laravel --project .
|
|
68
|
-
specsfy
|
|
78
|
+
specsfy update --project .
|
|
79
|
+
specsfy upgrade
|
|
80
|
+
specsfy transition 0001-recuperar-senha defined --project .
|
|
81
|
+
specsfy migrate --project .
|
|
82
|
+
specsfy effort 0001-recuperar-senha 7 \
|
|
83
|
+
--reason "Inclui migração e integração externa." --project .
|
|
69
84
|
specsfy progress --project .
|
|
70
85
|
specsfy progress --project . --json
|
|
71
86
|
specsfy progress --project . --watch
|
|
87
|
+
specsfy milestones sync --project .
|
|
72
88
|
specsfy test --project .
|
|
73
89
|
specsfy config show --project .
|
|
74
90
|
specsfy config set --project . --watch-interval 0.5
|
|
@@ -79,7 +95,8 @@ exemplo, instalar `specsfy-specialist-react-ui-components` também instala
|
|
|
79
95
|
`specsfy-specialist-ui-design`, tanto pelo comando quanto pela TUI:
|
|
80
96
|
|
|
81
97
|
```bash
|
|
82
|
-
|
|
98
|
+
npx skills add https://github.com/promovaweb/specsfy \
|
|
99
|
+
--skill specsfy-specialist-react-ui-components --agent universal --copy --full-depth
|
|
83
100
|
```
|
|
84
101
|
|
|
85
102
|
Sem subcomando, `specsfy` abre o dashboard TUI no diretório atual. A interface
|
|
@@ -97,18 +114,23 @@ possui seis abas:
|
|
|
97
114
|
por um painel de detalhes e resumo das alterações pendentes.
|
|
98
115
|
- **Sobre**: versão e finalidade do CLI.
|
|
99
116
|
|
|
117
|
+
A interface usa a paleta escura oficial do Specsfy. O turquesa identifica foco
|
|
118
|
+
e abas ativas, o violeta marca seleções e o petróleo diferencia superfícies e
|
|
119
|
+
ações primárias. Os estados continuam nomeados no próprio controle para que a
|
|
120
|
+
cor não seja o único sinal disponível.
|
|
121
|
+
|
|
100
122
|
## Capturas de tela
|
|
101
123
|
|
|
102
|
-

|
|
103
125
|
|
|
104
|
-

|
|
105
127
|
|
|
106
|
-

|
|
107
129
|
|
|
108
|
-

|
|
109
131
|
|
|
110
132
|
Alterações em `specs/inbox/*.md`, `specs/backlog/*.md`,
|
|
111
|
-
`specs
|
|
133
|
+
`specs/<estado>/*/spec.md` e no `skills-lock.json` são detectadas
|
|
112
134
|
automaticamente.
|
|
113
135
|
|
|
114
136
|
Em projetos Laravel com Pest, `specsfy test --project .` detecta `artisan` e
|
|
@@ -118,8 +140,9 @@ mostra status, runner, comando, duração e resumo em uma subaba. A outra exibe
|
|
|
118
140
|
cada teste e falha. Relatórios Pest estruturados são convertidos em linhas
|
|
119
141
|
legíveis com arquivo, linha e mensagem.
|
|
120
142
|
|
|
121
|
-
O bootstrap instala as
|
|
122
|
-
`specsfy-update-spec` para pedidos surgidos depois da definição,
|
|
143
|
+
O bootstrap instala as treze skills base, incluindo `specsfy-01-inbox` e
|
|
144
|
+
`specsfy-update-spec` para pedidos surgidos depois da definição, as skills de
|
|
145
|
+
conversa e as de milestones,
|
|
123
146
|
`specsfy-setup`,
|
|
124
147
|
`specsfy-documentator` e as três skills `specsfy-aux-*`, publica as regras em
|
|
125
148
|
`.specsfy/Spec.md`, os templates `Inbox.md`, `Backlog.md`, `Spec.md`, `Tasks.md`,
|
|
@@ -165,36 +188,46 @@ descarte alterações locais.
|
|
|
165
188
|
|
|
166
189
|
Na aba Skills, o botão `Atualizar ^R` baixa as origens atuais e atualiza de uma
|
|
167
190
|
vez todas as skills Specsfy instaladas. O comando equivalente é
|
|
168
|
-
`specsfy
|
|
169
|
-
|
|
191
|
+
`specsfy update --project .`. O nome anterior
|
|
192
|
+
`specsfy skills update --project .` permanece compatível. Customizações locais
|
|
193
|
+
continuam protegidas e só podem ser substituídas explicitamente com `--force`.
|
|
194
|
+
|
|
195
|
+
## Atualização automática do CLI
|
|
170
196
|
|
|
171
|
-
|
|
197
|
+
`specsfy update` atualiza as skills do projeto. `specsfy upgrade` consulta a
|
|
198
|
+
versão estável publicada no registro npm e atualiza o próprio CLI. O segundo
|
|
199
|
+
comando só instala quando encontra uma versão superior à atual.
|
|
172
200
|
|
|
173
201
|
Ao abrir `specsfy` ou `specsfy tui` em um terminal interativo, o CLI consulta
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
202
|
+
o registro npm. As tags semânticas do GitHub são consultadas apenas para
|
|
203
|
+
associar a versão publicada ao commit de origem. A consulta é limitada pelo
|
|
204
|
+
cache global `~/.specsfy/cli.json`, cujo intervalo padrão é de 24 horas. Falha
|
|
205
|
+
de rede, do npm ou do GitHub nunca impede a abertura do dashboard.
|
|
177
206
|
|
|
178
207
|
Quando existe versão mais recente, o CLI mostra as versões atual e disponível e
|
|
179
208
|
pergunta antes de atualizar. Uma resposta negativa abre a aplicação normalmente.
|
|
180
|
-
Uma resposta positiva
|
|
181
|
-
|
|
209
|
+
Uma resposta positiva usa npm para uma instalação global e baixa o executável
|
|
210
|
+
oficial quando o processo atual é um binário avulso. O download é validado com
|
|
211
|
+
`--version` e substituído atomicamente. O processo então fecha. Abra o
|
|
182
212
|
`specsfy` novamente para iniciar a versão instalada.
|
|
183
213
|
|
|
184
214
|
O arquivo global usa permissão `0600`, preserva chaves desconhecidas e separa:
|
|
185
215
|
|
|
186
216
|
- `settings.check_updates_on_startup`.
|
|
187
217
|
- `settings.check_interval_seconds`.
|
|
188
|
-
- `cache.last_checked_at`,
|
|
218
|
+
- `cache.last_checked_at`, versão publicada, tag, commit, ETags e eventual erro
|
|
219
|
+
recente.
|
|
189
220
|
|
|
190
221
|
Para publicar uma versão atualizável a partir do workspace de desenvolvimento,
|
|
191
|
-
use a skill local `$specsfy-release-cli
|
|
192
|
-
|
|
222
|
+
use a skill local `$specsfy-release-cli`, em
|
|
223
|
+
[`cli/.agents/skills/specsfy-release-cli/`](.agents/skills/specsfy-release-cli/).
|
|
224
|
+
Ela promove as notas confirmadas para o [`CHANGELOG.md`](CHANGELOG.md), atualiza
|
|
225
|
+
as versões do pacote e o lock,
|
|
193
226
|
reconstrói os artefatos versionados, cria a tag anotada `v<versão>` no mesmo
|
|
194
227
|
commit e usa exatamente a seção promovida como corpo do GitHub Release. O CI
|
|
195
228
|
valida o build e a correspondência da tag.
|
|
196
229
|
|
|
197
|
-
Novas specs usam `specs/
|
|
230
|
+
Novas specs usam `specs/draft/<NNNN>-<slug>/spec.md`. Capturas imediatas ficam
|
|
198
231
|
em `specs/inbox/<data-hora>-<slug>.md` e itens refináveis em
|
|
199
232
|
`specs/backlog/<NNNN>-<slug>.md`. O dashboard mantém leitura do layout
|
|
200
233
|
legado. A skill de especificação renderiza cada arquivo novo a partir do
|
|
@@ -216,7 +249,7 @@ falha quando o artefato não corresponde ao estado atual.
|
|
|
216
249
|
O pacote publicado no npm usa `@promovaweb/specsfy`. A tag estável dispara o
|
|
217
250
|
job de publicação depois que tipos, testes, build, instalação local e
|
|
218
251
|
executável versionado passam no CI. O job inclui proveniência quando o
|
|
219
|
-
repositório estiver público
|
|
252
|
+
repositório estiver público. Enquanto ele permanecer privado, publica com o
|
|
220
253
|
token do registro e sem essa atestação.
|
|
221
254
|
|
|
222
255
|
## Atalhos da TUI
|
|
@@ -245,4 +278,7 @@ com um clique e atualiza o dashboard depois da confirmação. `Esc` retorna, e o
|
|
|
245
278
|
mouse opera abas, linhas e botões. Nada é instalado ou removido antes de
|
|
246
279
|
`Aplicar`.
|
|
247
280
|
|
|
248
|
-
A documentação completa está
|
|
281
|
+
A documentação completa está no
|
|
282
|
+
[portal público do Specsfy](https://promovaweb.com/docs/specsfy/). A
|
|
283
|
+
[referência dos comandos](https://promovaweb.com/docs/specsfy/referencia-cli/)
|
|
284
|
+
detalha parâmetros, saídas, efeitos persistentes e exemplos de automação.
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAA0B,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAA0B,MAAM,WAAW,CAAC;AAqC5D,sDAAsD;AACtD,wBAAgB,YAAY,IAAI,OAAO,CA0StC;AAED,0EAA0E;AAC1E,wBAAsB,MAAM,CAAC,IAAI,WAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBjE"}
|
package/dist/cli.js
CHANGED
|
@@ -8,11 +8,15 @@ import { Command, CommanderError, Option } from "commander";
|
|
|
8
8
|
import { createInterface } from "node:readline/promises";
|
|
9
9
|
import { stdin, stdout } from "node:process";
|
|
10
10
|
import { Catalog } from "./catalog.js";
|
|
11
|
+
import { clickUpfyHandoff } from "./clickupfy.js";
|
|
11
12
|
import { loadConfig, updateConfig } from "./config.js";
|
|
12
13
|
import { SkillInstaller } from "./installer.js";
|
|
14
|
+
import { migrateSpecs, SPEC_FOLDERS, transitionSpec, updateSpecEffort, } from "./lifecycle.js";
|
|
15
|
+
import { syncMilestones } from "./milestones.js";
|
|
13
16
|
import { scanSpecs, serializeSpec, specsFingerprint, summarizeSpecs, } from "./progress.js";
|
|
14
17
|
import { runProjectTests } from "./project-testing.js";
|
|
15
|
-
import {
|
|
18
|
+
import { assertPrerequisites, checkPrerequisites, } from "./prerequisites.js";
|
|
19
|
+
import { checkForUpdate, offerStartupUpdate, upgradeCurrentInstallation, } from "./updater.js";
|
|
16
20
|
import { VERSION } from "./version.js";
|
|
17
21
|
/** Constrói o parser público sem executar efeitos. */
|
|
18
22
|
export function buildProgram() {
|
|
@@ -34,6 +38,8 @@ export function buildProgram() {
|
|
|
34
38
|
.option("--specialist <nome>", "especialista explícito; pode ser repetido", collect, [])
|
|
35
39
|
.option("--json", "emite resultado JSON")
|
|
36
40
|
.action(async (options) => {
|
|
41
|
+
const checks = await checkPrerequisites(options.project);
|
|
42
|
+
assertPrerequisites(checks, ["node", "git", "skills", "project"]);
|
|
37
43
|
const installer = await SkillInstaller.create(options.project, options.force);
|
|
38
44
|
const changed = await installer.installBase();
|
|
39
45
|
let specialistNames = [...options.specialist];
|
|
@@ -49,6 +55,43 @@ export function buildProgram() {
|
|
|
49
55
|
}
|
|
50
56
|
printInstallation(changed, Boolean(options.json));
|
|
51
57
|
});
|
|
58
|
+
program
|
|
59
|
+
.command("doctor")
|
|
60
|
+
.description("verifica os pré-requisitos do Specsfy")
|
|
61
|
+
.addOption(projectOption())
|
|
62
|
+
.option("--json", "emite resultado JSON")
|
|
63
|
+
.action(async (options) => {
|
|
64
|
+
const checks = await checkPrerequisites(options.project);
|
|
65
|
+
printPrerequisites(checks, Boolean(options.json));
|
|
66
|
+
if (checks.some(({ ok }) => !ok))
|
|
67
|
+
process.exitCode = 1;
|
|
68
|
+
});
|
|
69
|
+
program
|
|
70
|
+
.command("update")
|
|
71
|
+
.description("atualiza todas as skills Specsfy instaladas")
|
|
72
|
+
.addOption(projectOption())
|
|
73
|
+
.option("--force", "substitui arquivos gerenciados alterados")
|
|
74
|
+
.option("--json", "emite resultado JSON")
|
|
75
|
+
.action((options) => updateSkills(options));
|
|
76
|
+
program
|
|
77
|
+
.command("upgrade")
|
|
78
|
+
.description("atualiza o próprio Specsfy CLI")
|
|
79
|
+
.option("--json", "emite resultado JSON")
|
|
80
|
+
.action(async (options) => {
|
|
81
|
+
const checks = await checkPrerequisites(process.cwd());
|
|
82
|
+
assertPrerequisites(checks, ["node", "npm"]);
|
|
83
|
+
const update = await checkForUpdate(VERSION, { force: true });
|
|
84
|
+
if (!update) {
|
|
85
|
+
printUpgrade({ upgraded: false, current_version: VERSION }, Boolean(options.json));
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
await upgradeCurrentInstallation(update.latest_version);
|
|
89
|
+
printUpgrade({
|
|
90
|
+
upgraded: true,
|
|
91
|
+
current_version: VERSION,
|
|
92
|
+
latest_version: update.latest_version,
|
|
93
|
+
}, Boolean(options.json));
|
|
94
|
+
});
|
|
52
95
|
const skills = program.command("skills").description("gerencia especialistas");
|
|
53
96
|
skills
|
|
54
97
|
.command("list")
|
|
@@ -67,7 +110,7 @@ export function buildProgram() {
|
|
|
67
110
|
printCatalog(await catalog.detect(options.project), Boolean(options.json));
|
|
68
111
|
});
|
|
69
112
|
skills
|
|
70
|
-
.command("
|
|
113
|
+
.command("install")
|
|
71
114
|
.description("instala especialistas")
|
|
72
115
|
.argument("<names...>", "nomes das skills")
|
|
73
116
|
.addOption(projectOption())
|
|
@@ -93,9 +136,59 @@ export function buildProgram() {
|
|
|
93
136
|
.description("atualiza todas as skills Specsfy instaladas")
|
|
94
137
|
.addOption(projectOption())
|
|
95
138
|
.option("--force", "substitui arquivos gerenciados alterados")
|
|
139
|
+
.option("--json", "emite resultado JSON")
|
|
140
|
+
.action((options) => updateSkills(options));
|
|
141
|
+
program
|
|
142
|
+
.command("transition")
|
|
143
|
+
.description("move uma spec para o próximo estado")
|
|
144
|
+
.argument("<identificador>", "ID e slug da spec")
|
|
145
|
+
.argument("<status>", "pasta de destino")
|
|
146
|
+
.addOption(projectOption())
|
|
147
|
+
.option("--json", "emite resultado JSON")
|
|
148
|
+
.action(async (identifier, status, options) => {
|
|
149
|
+
if (!SPEC_FOLDERS.includes(status)) {
|
|
150
|
+
throw new Error(`status de pasta inválido: ${status}`);
|
|
151
|
+
}
|
|
152
|
+
const result = await transitionSpec(options.project, identifier, status);
|
|
153
|
+
await syncMilestones(options.project);
|
|
154
|
+
printTransition(result, await clickUpfyHandoff(options.project, result.path, "transition"), Boolean(options.json));
|
|
155
|
+
});
|
|
156
|
+
program
|
|
157
|
+
.command("migrate")
|
|
158
|
+
.description("migra specs do layout anterior para pastas de estado")
|
|
159
|
+
.addOption(projectOption())
|
|
160
|
+
.option("--json", "emite resultado JSON")
|
|
96
161
|
.action(async (options) => {
|
|
97
|
-
const
|
|
98
|
-
|
|
162
|
+
const migrated = await migrateSpecs(options.project);
|
|
163
|
+
if (migrated.length)
|
|
164
|
+
await syncMilestones(options.project);
|
|
165
|
+
if (options.json)
|
|
166
|
+
console.log(JSON.stringify({ migrated }));
|
|
167
|
+
else if (migrated.length) {
|
|
168
|
+
for (const item of migrated) {
|
|
169
|
+
printTransition(item, await clickUpfyHandoff(options.project, item.path, "transition"), false);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
else
|
|
173
|
+
console.log("nenhuma spec legada para migrar");
|
|
174
|
+
});
|
|
175
|
+
program
|
|
176
|
+
.command("effort")
|
|
177
|
+
.description("atualiza o esforço estimado de uma spec")
|
|
178
|
+
.argument("<identificador>", "ID e slug da spec")
|
|
179
|
+
.argument("<pontuacao>", "inteiro de 1 a 10", Number)
|
|
180
|
+
.requiredOption("--reason <texto>", "justificativa da estimativa")
|
|
181
|
+
.addOption(projectOption())
|
|
182
|
+
.option("--json", "emite resultado JSON")
|
|
183
|
+
.action(async (identifier, score, options) => {
|
|
184
|
+
const result = await updateSpecEffort(options.project, identifier, score, options.reason);
|
|
185
|
+
const handoff = await clickUpfyHandoff(options.project, result.path, "effort");
|
|
186
|
+
if (options.json)
|
|
187
|
+
console.log(JSON.stringify({ ...result, clickupfy: handoff }));
|
|
188
|
+
else {
|
|
189
|
+
console.log(`${result.identifier}\tEffort ${result.effort}/10`);
|
|
190
|
+
printClickUpfyHandoff(handoff);
|
|
191
|
+
}
|
|
99
192
|
});
|
|
100
193
|
program
|
|
101
194
|
.command("progress")
|
|
@@ -105,6 +198,26 @@ export function buildProgram() {
|
|
|
105
198
|
.option("--watch", "emite novo resumo quando uma spec muda")
|
|
106
199
|
.option("--interval <segundos>", "intervalo do watch em segundos", Number)
|
|
107
200
|
.action(async (options) => runProgress(options));
|
|
201
|
+
const milestones = program
|
|
202
|
+
.command("milestones")
|
|
203
|
+
.description("mantém os marcos derivados de specs e backlog");
|
|
204
|
+
milestones
|
|
205
|
+
.command("sync")
|
|
206
|
+
.description("atualiza specs.md e o progresso dos milestones")
|
|
207
|
+
.addOption(projectOption())
|
|
208
|
+
.option("--json", "emite resultado JSON")
|
|
209
|
+
.action(async (options) => {
|
|
210
|
+
const result = await syncMilestones(options.project);
|
|
211
|
+
if (options.json)
|
|
212
|
+
console.log(JSON.stringify(result));
|
|
213
|
+
else {
|
|
214
|
+
console.log(`Índice\t${result.index_path}`);
|
|
215
|
+
for (const milestone of result.milestones) {
|
|
216
|
+
console.log(`${milestone.id}\t${milestone.completed_specs}/${milestone.total_specs} specs\t` +
|
|
217
|
+
`${milestone.backlog_items} backlog\t${milestone.percent}%`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
});
|
|
108
221
|
program
|
|
109
222
|
.command("test")
|
|
110
223
|
.description("executa os testes do projeto")
|
|
@@ -255,4 +368,42 @@ function printInstallation(paths, json) {
|
|
|
255
368
|
console.log("skills já estão atualizadas");
|
|
256
369
|
}
|
|
257
370
|
}
|
|
371
|
+
async function updateSkills(options) {
|
|
372
|
+
const checks = await checkPrerequisites(options.project);
|
|
373
|
+
assertPrerequisites(checks, ["node", "git", "skills", "project"]);
|
|
374
|
+
const installer = await SkillInstaller.create(options.project, options.force);
|
|
375
|
+
printInstallation(await installer.updateAll(), Boolean(options.json));
|
|
376
|
+
}
|
|
377
|
+
function printPrerequisites(checks, json) {
|
|
378
|
+
if (json) {
|
|
379
|
+
console.log(JSON.stringify({ ok: checks.every(({ ok }) => ok), checks }));
|
|
380
|
+
return;
|
|
381
|
+
}
|
|
382
|
+
for (const check of checks) {
|
|
383
|
+
console.log(`${check.ok ? "OK" : "FALHA"}\t${check.name}\t${check.detail}`);
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
function printUpgrade(result, json) {
|
|
387
|
+
if (json)
|
|
388
|
+
console.log(JSON.stringify(result));
|
|
389
|
+
else if (result.upgraded) {
|
|
390
|
+
console.log(`Specsfy CLI atualizado: ${result.current_version} → ${result.latest_version}.`);
|
|
391
|
+
}
|
|
392
|
+
else {
|
|
393
|
+
console.log(`Specsfy CLI já está atualizado em ${result.current_version}.`);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
function printTransition(transition, handoff, json) {
|
|
397
|
+
if (json)
|
|
398
|
+
console.log(JSON.stringify({ ...transition, clickupfy: handoff }));
|
|
399
|
+
else {
|
|
400
|
+
console.log(`${transition.identifier}\t${transition.from} → ${transition.to}\t${transition.status}`);
|
|
401
|
+
printClickUpfyHandoff(handoff);
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
function printClickUpfyHandoff(handoff) {
|
|
405
|
+
if (handoff.available && handoff.task_id) {
|
|
406
|
+
console.log(`ClickUpfy\tencaminhar ${handoff.action} para a tarefa ${handoff.task_id}`);
|
|
407
|
+
}
|
|
408
|
+
}
|
|
258
409
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface ClickUpfyHandoff {
|
|
2
|
+
available: boolean;
|
|
3
|
+
task_id?: string;
|
|
4
|
+
action?: "transition" | "effort";
|
|
5
|
+
}
|
|
6
|
+
/** Detecta a skill instalada e lê o vínculo de tarefa do metadado da spec. */
|
|
7
|
+
export declare function clickUpfyHandoff(project: string, specPath: string, action: "transition" | "effort"): Promise<ClickUpfyHandoff>;
|
|
8
|
+
/**
|
|
9
|
+
* Verifica as instalações atual e legada do ClickUpfy.
|
|
10
|
+
*
|
|
11
|
+
* A versão atual usa `clickup-issue-implement` em `.codex/skills`, com
|
|
12
|
+
* instalação local ou global. A pasta `.agents/skills` permanece como
|
|
13
|
+
* compatibilidade para projetos que ainda usam a integração anterior.
|
|
14
|
+
*/
|
|
15
|
+
export declare function hasClickUpfySkill(project: string, userHome?: string): Promise<boolean>;
|
|
16
|
+
//# sourceMappingURL=clickupfy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clickupfy.d.ts","sourceRoot":"","sources":["../src/clickupfy.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;CAClC;AAED,8EAA8E;AAC9E,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,YAAY,GAAG,QAAQ,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAK3B;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,SAAY,GACnB,OAAO,CAAC,OAAO,CAAC,CAiBlB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** Integração opcional com ClickUpfy, sem substituir a spec local. */
|
|
2
|
+
import { access, readFile } from "node:fs/promises";
|
|
3
|
+
import { homedir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
/** Detecta a skill instalada e lê o vínculo de tarefa do metadado da spec. */
|
|
6
|
+
export async function clickUpfyHandoff(project, specPath, action) {
|
|
7
|
+
const available = await hasClickUpfySkill(project);
|
|
8
|
+
const content = await readFile(specPath, "utf8");
|
|
9
|
+
const task = content.match(/^\|\s*ClickUp Task\s*\|\s*([^|]+?)\s*\|\s*$/imu)?.[1]?.trim();
|
|
10
|
+
return task ? { available, task_id: task, action } : { available };
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Verifica as instalações atual e legada do ClickUpfy.
|
|
14
|
+
*
|
|
15
|
+
* A versão atual usa `clickup-issue-implement` em `.codex/skills`, com
|
|
16
|
+
* instalação local ou global. A pasta `.agents/skills` permanece como
|
|
17
|
+
* compatibilidade para projetos que ainda usam a integração anterior.
|
|
18
|
+
*/
|
|
19
|
+
export async function hasClickUpfySkill(project, userHome = homedir()) {
|
|
20
|
+
const candidates = [
|
|
21
|
+
join(project, ".codex", "skills", "clickup-issue-implement", "SKILL.md"),
|
|
22
|
+
join(userHome, ".codex", "skills", "clickup-issue-implement", "SKILL.md"),
|
|
23
|
+
join(project, ".agents", "skills", "clickupfy-executar-tarefa", "SKILL.md"),
|
|
24
|
+
];
|
|
25
|
+
for (const candidate of candidates) {
|
|
26
|
+
try {
|
|
27
|
+
await access(candidate);
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
// A ausência de uma candidata apenas leva à próxima instalação possível.
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=clickupfy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clickupfy.js","sourceRoot":"","sources":["../src/clickupfy.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAQjC,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAe,EACf,QAAgB,EAChB,MAA+B;IAE/B,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IAC1F,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;AACrE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAe,EACf,QAAQ,GAAG,OAAO,EAAE;IAEpB,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,yBAAyB,EAAE,UAAU,CAAC;QACxE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,yBAAyB,EAAE,UAAU,CAAC;QACzE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,2BAA2B,EAAE,UAAU,CAAC;KAC5E,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,yEAAyE;QAC3E,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/installer.d.ts
CHANGED
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
export declare const MONOREPO_REPOSITORY = "https://github.com/promovaweb/specsfy.git";
|
|
8
8
|
export declare const BASE_DIRECTORY = "skills";
|
|
9
9
|
export declare const SPECIALISTS_DIRECTORY = "specialists";
|
|
10
|
-
export declare const BASE_SKILLS: readonly ["specsfy-01-inbox", "specsfy-02-backlog", "specsfy-03-specify", "specsfy-04-validate", "specsfy-05-tasks", "specsfy-06-tdd-bdd", "specsfy-07-implement", "specsfy-update-spec", "specsfy-progress"];
|
|
10
|
+
export declare const BASE_SKILLS: readonly ["specsfy-01-inbox", "specsfy-02-backlog", "specsfy-03-specify", "specsfy-04-validate", "specsfy-05-tasks", "specsfy-06-tdd-bdd", "specsfy-07-implement", "specsfy-update-spec", "specsfy-progress", "specsfy-interviewer", "specsfy-mvp-milestone-interviewer", "specsfy-roadmap-milestone-interviewer", "specsfy-milestone-governor", "specsfy-data-discovery"];
|
|
11
11
|
export declare const AUXILIARY_SKILLS: readonly ["specsfy-aux-stack", "specsfy-aux-rules", "specsfy-aux-database"];
|
|
12
12
|
export declare const DOCUMENTATION_SKILLS: readonly ["specsfy-documentator"];
|
|
13
|
-
export declare const FRAMEWORK_SKILLS: readonly ["specsfy-setup", "specsfy-aux-stack", "specsfy-aux-rules", "specsfy-aux-database", "specsfy-documentator", "specsfy-01-inbox", "specsfy-02-backlog", "specsfy-03-specify", "specsfy-04-validate", "specsfy-05-tasks", "specsfy-06-tdd-bdd", "specsfy-07-implement", "specsfy-update-spec", "specsfy-progress"];
|
|
13
|
+
export declare const FRAMEWORK_SKILLS: readonly ["specsfy-setup", "specsfy-aux-stack", "specsfy-aux-rules", "specsfy-aux-database", "specsfy-documentator", "specsfy-01-inbox", "specsfy-02-backlog", "specsfy-03-specify", "specsfy-04-validate", "specsfy-05-tasks", "specsfy-06-tdd-bdd", "specsfy-07-implement", "specsfy-update-spec", "specsfy-progress", "specsfy-interviewer", "specsfy-mvp-milestone-interviewer", "specsfy-roadmap-milestone-interviewer", "specsfy-milestone-governor", "specsfy-data-discovery"];
|
|
14
14
|
export declare const RENAMED_BASE_SKILLS: Readonly<Record<string, string>>;
|
|
15
15
|
/** Instalador de um projeto consumidor explicitamente selecionado. */
|
|
16
16
|
export declare class SkillInstaller {
|
package/dist/installer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgCH,eAAO,MAAM,mBAAmB,8CACa,CAAC;AAC9C,eAAO,MAAM,cAAc,WAAW,CAAC;AACvC,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AACnD,eAAO,MAAM,WAAW,YACtB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgCH,eAAO,MAAM,mBAAmB,8CACa,CAAC;AAC9C,eAAO,MAAM,cAAc,WAAW,CAAC;AACvC,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AACnD,eAAO,MAAM,WAAW,YACtB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,mCAAmC,EACnC,uCAAuC,EACvC,4BAA4B,EAC5B,wBAAwB,CAChB,CAAC;AACX,eAAO,MAAM,gBAAgB,YAC3B,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,CACd,CAAC;AACX,eAAO,MAAM,oBAAoB,YAAI,sBAAsB,CAAU,CAAC;AACtE,eAAO,MAAM,gBAAgB,udAKnB,CAAC;AACX,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYhE,CAAC;AAoCF,sEAAsE;AACtE,qBAAa,cAAc;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAExB,OAAO,eAGN;IAED,4EAA4E;IAC5E,OAAa,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAK3E;IAED,qCAAqC;IAC/B,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAErC;IAED,uDAAuD;IACjD,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAW7D;IAED,0EAA0E;IACpE,uBAAuB,CAC3B,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,SAAS,MAAM,EAAgB,GACrC,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;IAED,+DAA+D;IACzD,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAwHtE;IAED,iDAAiD;IAC3C,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAO3D;IAED,uDAAuD;IACjD,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAYnC;IAED,mEAAmE;IAC7D,qBAAqB,CACzB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAInB;IAED,oEAAoE;IAC9D,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CA6EnB;IAED,4EAA4E;IACtE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAsD/C;YAEa,yBAAyB;YAuBzB,iBAAiB;YAoBjB,gBAAgB;YAsBhB,QAAQ;YAeR,SAAS;CAMxB;AAwKD,4EAA4E;AAC5E,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqB/D"}
|