sedd 0.1.7 → 0.1.9

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.
@@ -0,0 +1,373 @@
1
+ # /sedd.validate - Validate Implementation Against Expectation
2
+
3
+ ## Purpose
4
+
5
+ Validate that the implementation covers the original expectation, show git diff of changes, and create follow-up tasks if gaps are found.
6
+
7
+ ## Trigger
8
+
9
+ - `/sedd.validate` - Validate current migration
10
+ - `/sedd.validate 001` - Validate specific migration
11
+ - `/sedd.validate --auto` - Auto-create tasks for gaps
12
+
13
+ ## Pre-flight Checks
14
+
15
+ 1. **Load Configuration**
16
+ ```
17
+ Read sedd.config.json (or use defaults)
18
+ Default specsDir: .sedd
19
+ ```
20
+
21
+ 2. **Verify Feature Exists**
22
+ - Must have spec.md with expectation
23
+ - Must have at least one migration
24
+ - Must have tasks.md in migration
25
+
26
+ 3. **Check Git Status**
27
+ - Ensure git is available
28
+ - Get list of changed files since migration start
29
+
30
+ ## Workflow
31
+
32
+ ### Step 1: Load Expectation
33
+
34
+ Read from `_meta.json`:
35
+
36
+ ```json
37
+ {
38
+ "expectation": {
39
+ "summary": "User can toggle dark mode and persist across sessions",
40
+ "must": [
41
+ "Criar toggle de dark mode em settings",
42
+ "Persistir preferência no banco"
43
+ ],
44
+ "mustNot": [
45
+ "Usar localStorage",
46
+ "Criar endpoint em serviço X"
47
+ ]
48
+ }
49
+ }
50
+ ```
51
+
52
+ ### Step 2: Load Tasks Status
53
+
54
+ Read `tasks.md` and parse:
55
+
56
+ ```
57
+ Completed: [x] T001-001, [x] T001-002
58
+ Pending: [ ] T001-003, [ ] T001-004
59
+ ```
60
+
61
+ ### Step 3: Get Git Diff
62
+
63
+ Execute git commands:
64
+
65
+ ```bash
66
+ # Get files changed in this migration
67
+ git diff --stat {{BASE_COMMIT}}..HEAD
68
+
69
+ # Get detailed diff
70
+ git diff {{BASE_COMMIT}}..HEAD
71
+ ```
72
+
73
+ ### Step 4: Analyze Coverage
74
+
75
+ For each expectation item in `must[]`:
76
+
77
+ ```typescript
78
+ {
79
+ expectationItem: "Criar toggle de dark mode",
80
+ status: "covered", // covered | partial | gap
81
+ coveredByTasks: ["T001-002", "T001-003"],
82
+ confidence: 90,
83
+ notes: "Implemented in ToggleSwitch.tsx"
84
+ }
85
+ ```
86
+
87
+ ### Step 5: Check Violations
88
+
89
+ For each item in `mustNot[]`:
90
+
91
+ ```typescript
92
+ // Scan changed files for violations
93
+ const violations = [];
94
+
95
+ for (const file of changedFiles) {
96
+ if (file.includes('services/x/')) {
97
+ violations.push({
98
+ rule: "Não criar endpoint em serviço X",
99
+ violatedBy: file,
100
+ severity: "critical"
101
+ });
102
+ }
103
+ }
104
+ ```
105
+
106
+ ### Step 6: Identify Gaps
107
+
108
+ Compare expectation tokens with task descriptions:
109
+
110
+ ```
111
+ Expectation: "User can toggle dark mode and persist across sessions"
112
+
113
+ Tokens: [toggle, dark, mode, persist, sessions]
114
+
115
+ Tasks coverage:
116
+ ✅ toggle → T001-002
117
+ ✅ dark → T001-002, T001-003
118
+ ✅ mode → T001-002, T001-003
119
+ ✅ persist → T001-003
120
+ ❌ sessions → NOT FOUND
121
+
122
+ Gap identified: "sessions" not covered
123
+ ```
124
+
125
+ ### Step 7: Generate validation.md
126
+
127
+ Create `.sedd/{FEATURE}/{MIGRATION}/validation.md`:
128
+
129
+ ```markdown
130
+ # Validação: Migration {{MIGRATION_ID}}
131
+
132
+ > Feature: {{FEATURE_NAME}}
133
+ > Validado em: {{TIMESTAMP}}
134
+ > Status: {{STATUS}}
135
+
136
+ ---
137
+
138
+ ## Expectativa Original
139
+
140
+ > {{EXPECTATION_SUMMARY}}
141
+
142
+ ### DEVE (Must)
143
+ {{#each must}}
144
+ - {{this}}
145
+ {{/each}}
146
+
147
+ ### NÃO DEVE (Must Not)
148
+ {{#each mustNot}}
149
+ - {{this}}
150
+ {{/each}}
151
+
152
+ ---
153
+
154
+ ## Cobertura de Expectativa
155
+
156
+ | Critério | Status | Coberto por | Confiança |
157
+ |----------|--------|-------------|-----------|
158
+ | Toggle dark mode | ✅ Coberto | T001-002 | 95% |
159
+ | Persist preference | ✅ Coberto | T001-003 | 90% |
160
+ | Across sessions | ❌ Gap | - | - |
161
+
162
+ **Cobertura Total: {{COVERAGE}}%**
163
+
164
+ ```
165
+ ████████████░░░░ 75%
166
+ ```
167
+
168
+ ---
169
+
170
+ ## Violações de Restrições
171
+
172
+ {{#if violations}}
173
+ ⚠️ **VIOLAÇÕES ENCONTRADAS:**
174
+
175
+ | Regra | Arquivo | Severidade |
176
+ |-------|---------|------------|
177
+ {{#each violations}}
178
+ | {{rule}} | {{violatedBy}} | {{severity}} |
179
+ {{/each}}
180
+ {{else}}
181
+ ✅ Nenhuma violação de restrições encontrada.
182
+ {{/if}}
183
+
184
+ ---
185
+
186
+ ## Arquivos Alterados
187
+
188
+ | Arquivo | Adições | Remoções | Tipo |
189
+ |---------|---------|----------|------|
190
+ {{#each filesChanged}}
191
+ | {{filePath}} | +{{linesAdded}} | -{{linesRemoved}} | {{type}} |
192
+ {{/each}}
193
+
194
+ **Total:** {{totalFiles}} arquivos, +{{totalAdded}} -{{totalRemoved}} linhas
195
+
196
+ ---
197
+
198
+ ## Git Diff Summary
199
+
200
+ ```diff
201
+ {{GIT_DIFF_SUMMARY}}
202
+ ```
203
+
204
+ <details>
205
+ <summary>Ver diff completo</summary>
206
+
207
+ ```diff
208
+ {{FULL_DIFF}}
209
+ ```
210
+
211
+ </details>
212
+
213
+ ---
214
+
215
+ ## Gaps Identificados
216
+
217
+ {{#if gaps}}
218
+ Os seguintes gaps foram identificados entre expectativa e implementação:
219
+
220
+ {{#each gaps}}
221
+ ### Gap {{@index}}: {{description}}
222
+
223
+ - **Expectativa:** {{expectationItem}}
224
+ - **Severidade:** {{severity}}
225
+ - **Task Sugerida:** {{suggestedTask.id}} - {{suggestedTask.description}}
226
+
227
+ {{/each}}
228
+
229
+ ### Tasks Sugeridas para Gaps
230
+
231
+ {{#each gaps}}
232
+ - [ ] {{suggestedTask.id}} [Follow-up] {{suggestedTask.description}}
233
+ {{/each}}
234
+ {{else}}
235
+ ✅ Nenhum gap identificado. Implementação cobre a expectativa.
236
+ {{/if}}
237
+
238
+ ---
239
+
240
+ ## Tasks Completadas
241
+
242
+ {{#each tasksCompleted}}
243
+ - [x] {{this}}
244
+ {{/each}}
245
+
246
+ ## Tasks Pendentes
247
+
248
+ {{#each tasksPending}}
249
+ - [ ] {{this}}
250
+ {{/each}}
251
+
252
+ ---
253
+
254
+ ## Recomendação
255
+
256
+ {{#if (eq recommendation "complete")}}
257
+ ✅ **FEATURE COMPLETA**
258
+
259
+ A implementação cobre todos os critérios da expectativa.
260
+ Próximo passo: Merge para branch principal.
261
+ {{/if}}
262
+
263
+ {{#if (eq recommendation "needs-followup")}}
264
+ ⚠️ **REQUER FOLLOW-UP**
265
+
266
+ Gaps identificados requerem tasks adicionais.
267
+ Próximo passo: `/sedd.clarify` para criar nova migration com gaps.
268
+ {{/if}}
269
+
270
+ {{#if (eq recommendation "needs-revision")}}
271
+ ❌ **REQUER REVISÃO**
272
+
273
+ Violações de restrições encontradas.
274
+ Próximo passo: Reverter alterações que violam restrições.
275
+ {{/if}}
276
+
277
+ ---
278
+
279
+ ## Próximos Passos
280
+
281
+ {{#each nextSteps}}
282
+ {{@index}}. {{this}}
283
+ {{/each}}
284
+ ```
285
+
286
+ ### Step 8: Create Follow-up Tasks (if gaps)
287
+
288
+ If gaps found and `--auto` flag or user confirms:
289
+
290
+ ```markdown
291
+ # New tasks added to tasks.md
292
+
293
+ - [ ] T001-NEW-001 [Follow-up] Implement session persistence for theme
294
+ - [ ] T001-NEW-002 [Follow-up] Add session storage fallback
295
+ ```
296
+
297
+ ### Step 9: Display Summary
298
+
299
+ ```
300
+ 🔍 VALIDAÇÃO COMPLETA
301
+
302
+ ┌─────────────────────────────────────────────┐
303
+ │ Feature: Dark Mode Toggle │
304
+ │ Migration: 001 │
305
+ ├─────────────────────────────────────────────┤
306
+ │ Cobertura: 75% ████████████░░░░ │
307
+ │ Tasks: 3/4 completadas │
308
+ │ Arquivos: 5 alterados (+180, -12) │
309
+ │ Violações: 0 │
310
+ │ Gaps: 1 encontrado │
311
+ └─────────────────────────────────────────────┘
312
+
313
+ 📄 Arquivo gerado: .sedd/024-dark-mode/001_.../validation.md
314
+
315
+ ⚠️ Gap encontrado: "sessions" não coberto
316
+
317
+ Criar task de follow-up? [Y/n]
318
+ ```
319
+
320
+ ## Output
321
+
322
+ 1. **validation.md** - Relatório completo de validação
323
+ 2. **tasks.md** - Atualizado com novas tasks (se gaps)
324
+ 3. **_meta.json** - Atualizado com `lastValidation` timestamp
325
+
326
+ ## Rules
327
+
328
+ - SEMPRE comparar contra expectativa original
329
+ - SEMPRE mostrar git diff
330
+ - NUNCA marcar como completo se há violações críticas
331
+ - Criar tasks automáticas só com confirmação do usuário
332
+ - Manter histórico de validações
333
+
334
+ ## CLI Alternative
335
+
336
+ ```bash
337
+ # Validate current migration
338
+ sedd validate
339
+
340
+ # Validate specific migration
341
+ sedd validate --migration 001
342
+
343
+ # Auto-create tasks for gaps
344
+ sedd validate --auto
345
+
346
+ # Show full diff
347
+ sedd validate --full-diff
348
+ ```
349
+
350
+ ## Integration with /sedd.clarify
351
+
352
+ After `/sedd.validate` finds gaps:
353
+
354
+ ```
355
+ Gaps encontrados. Deseja:
356
+
357
+ 1. /sedd.clarify - Criar nova migration para os gaps
358
+ 2. Adicionar tasks na migration atual
359
+ 3. Ignorar gaps (marcar como known limitations)
360
+ ```
361
+
362
+ ## Suggested at End of /sedd.implement
363
+
364
+ When `/sedd.implement` completes all tasks:
365
+
366
+ ```
367
+ 🏁 Todas as tasks concluídas!
368
+
369
+ 📍 Próximo passo recomendado:
370
+ /sedd.validate - Validar implementação contra expectativa
371
+
372
+ Executar validação agora? [Y/n]
373
+ ```
@@ -0,0 +1,8 @@
1
+ interface EstimateOptions {
2
+ path?: string;
3
+ description?: string;
4
+ json?: boolean;
5
+ }
6
+ export declare function estimate(options?: EstimateOptions): Promise<void>;
7
+ export {};
8
+ //# sourceMappingURL=estimate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimate.d.ts","sourceRoot":"","sources":["../../src/cli/estimate.ts"],"names":[],"mappings":"AAOA,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAyCD,wBAAsB,QAAQ,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6N3E"}
@@ -0,0 +1,217 @@
1
+ import { existsSync, readFileSync, writeFileSync, readdirSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import chalk from 'chalk';
4
+ import { GitOperations } from '../utils/git.js';
5
+ import { MigrationManager } from '../core/migration-manager.js';
6
+ import { loadConfig } from '../types/index.js';
7
+ function calculateComplexity(hours) {
8
+ if (hours <= 2)
9
+ return 'XS';
10
+ if (hours <= 4)
11
+ return 'S';
12
+ if (hours <= 8)
13
+ return 'M';
14
+ if (hours <= 16)
15
+ return 'L';
16
+ return 'XL';
17
+ }
18
+ function generateProgressBar(percent, width = 20) {
19
+ const filled = Math.round((percent / 100) * width);
20
+ const empty = width - filled;
21
+ return '█'.repeat(filled) + '░'.repeat(empty);
22
+ }
23
+ export async function estimate(options = {}) {
24
+ const cwd = process.cwd();
25
+ const git = new GitOperations(cwd);
26
+ const config = loadConfig(cwd);
27
+ const specsDir = join(cwd, config.specsDir);
28
+ if (!existsSync(specsDir)) {
29
+ console.log(chalk.yellow(`\n⚠ No ${config.specsDir}/ directory found. Run "sedd init" first.\n`));
30
+ return;
31
+ }
32
+ // Find current feature
33
+ let currentFeature = null;
34
+ if (git.hasGit()) {
35
+ const branch = git.getCurrentBranch();
36
+ if (git.isFeatureBranch(branch)) {
37
+ const featureDir = join(specsDir, branch);
38
+ if (existsSync(featureDir)) {
39
+ currentFeature = branch;
40
+ }
41
+ }
42
+ }
43
+ if (!currentFeature) {
44
+ const features = readdirSync(specsDir, { withFileTypes: true })
45
+ .filter((d) => d.isDirectory() && /^\d{3}-/.test(d.name))
46
+ .map((d) => d.name)
47
+ .sort()
48
+ .reverse();
49
+ if (features.length > 0) {
50
+ currentFeature = features[0];
51
+ }
52
+ }
53
+ if (!currentFeature) {
54
+ console.log(chalk.yellow('\n⚠ No features found. Use /sedd.specify to create one.\n'));
55
+ return;
56
+ }
57
+ const featureDir = join(specsDir, currentFeature);
58
+ const mm = new MigrationManager(featureDir);
59
+ const meta = mm.loadMeta();
60
+ if (!meta) {
61
+ console.log(chalk.yellow('⚠ This feature uses the old structure. Run sedd migrate first.'));
62
+ return;
63
+ }
64
+ // Load tasks from current migration
65
+ const breakdown = [];
66
+ let totalHuman = 0;
67
+ let totalAi = 0;
68
+ if (meta.currentMigration) {
69
+ const migration = meta.migrations[meta.currentMigration];
70
+ if (migration) {
71
+ const tasksPath = join(featureDir, migration.folder, 'tasks.md');
72
+ if (existsSync(tasksPath)) {
73
+ const content = readFileSync(tasksPath, 'utf-8');
74
+ const taskLines = content.match(/- \[ \] (T\d{3}-\d{3}) \[([^\]]+)\] (.+)/g) || [];
75
+ for (const line of taskLines) {
76
+ const match = line.match(/- \[ \] (T\d{3}-\d{3}) \[([^\]]+)\] (.+)/);
77
+ if (match) {
78
+ const [, taskId, category, description] = match;
79
+ // Estimate based on category
80
+ let human = 1;
81
+ let ai = 2;
82
+ if (category === 'Foundation') {
83
+ human = 0.5;
84
+ ai = 1.5;
85
+ }
86
+ else if (category.startsWith('US')) {
87
+ human = 1;
88
+ ai = 3;
89
+ }
90
+ else if (category === 'Tests') {
91
+ human = 0.5;
92
+ ai = 2;
93
+ }
94
+ const total = human + ai;
95
+ totalHuman += human;
96
+ totalAi += ai;
97
+ breakdown.push({
98
+ taskId,
99
+ description: description.split('`')[0].trim(),
100
+ humanHours: human,
101
+ aiHours: ai,
102
+ totalHours: total,
103
+ confidence: 75,
104
+ complexity: calculateComplexity(total),
105
+ });
106
+ }
107
+ }
108
+ }
109
+ }
110
+ }
111
+ // If no tasks, estimate from spec
112
+ if (breakdown.length === 0) {
113
+ const specPath = join(featureDir, 'spec.md');
114
+ if (existsSync(specPath)) {
115
+ const content = readFileSync(specPath, 'utf-8');
116
+ const userStories = (content.match(/### US\d+:/g) || []).length;
117
+ const requirements = (content.match(/\| FR-\d{3}/g) || []).length;
118
+ // Estimate based on spec content
119
+ const estimatedTasks = Math.max(userStories * 2, requirements);
120
+ totalHuman = estimatedTasks * 1;
121
+ totalAi = estimatedTasks * 2;
122
+ breakdown.push({
123
+ taskId: 'SPEC-EST',
124
+ description: `Estimated from ${userStories} user stories, ${requirements} requirements`,
125
+ humanHours: totalHuman,
126
+ aiHours: totalAi,
127
+ totalHours: totalHuman + totalAi,
128
+ confidence: 60,
129
+ complexity: calculateComplexity(totalHuman + totalAi),
130
+ });
131
+ }
132
+ }
133
+ const totalHours = totalHuman + totalAi;
134
+ const avgConfidence = breakdown.length > 0
135
+ ? Math.round(breakdown.reduce((sum, b) => sum + b.confidence, 0) / breakdown.length)
136
+ : 0;
137
+ const estimation = {
138
+ featureId: meta.featureId,
139
+ featureName: meta.featureName,
140
+ createdAt: new Date().toISOString(),
141
+ totalHours,
142
+ humanHours: totalHuman,
143
+ aiHours: totalAi,
144
+ complexity: calculateComplexity(totalHours),
145
+ averageConfidence: avgConfidence,
146
+ breakdown,
147
+ contextPath: options.path,
148
+ risks: [],
149
+ assumptions: [
150
+ 'AI assistant available for implementation',
151
+ 'No major blockers or dependencies',
152
+ 'Existing codebase patterns can be followed',
153
+ ],
154
+ };
155
+ if (options.json) {
156
+ console.log(JSON.stringify(estimation, null, 2));
157
+ return;
158
+ }
159
+ // Display estimation
160
+ console.log(chalk.blue(`\n📊 Estimativa: ${meta.featureName}\n`));
161
+ const humanPercent = Math.round((totalHuman / totalHours) * 100) || 0;
162
+ const aiPercent = 100 - humanPercent;
163
+ console.log(chalk.bold('Resumo:'));
164
+ console.log(` Total: ${chalk.cyan(totalHours + 'h')}`);
165
+ console.log(` Humano: ${chalk.yellow(totalHuman + 'h')} (${humanPercent}%)`);
166
+ console.log(` AI: ${chalk.green(totalAi + 'h')} (${aiPercent}%)`);
167
+ console.log(` Complexidade: ${chalk.magenta(estimation.complexity)}`);
168
+ console.log(` Confiança: ${chalk.gray(avgConfidence + '%')}`);
169
+ console.log();
170
+ console.log(chalk.bold('Distribuição:'));
171
+ console.log(` Humano: ${generateProgressBar(humanPercent)} ${humanPercent}%`);
172
+ console.log(` AI: ${generateProgressBar(aiPercent)} ${aiPercent}%`);
173
+ console.log();
174
+ if (breakdown.length > 0 && breakdown[0].taskId !== 'SPEC-EST') {
175
+ console.log(chalk.bold('Breakdown por Task:'));
176
+ console.log(chalk.gray(' Task | Humano | AI | Total | Conf'));
177
+ console.log(chalk.gray(' -----------|--------|-------|-------|-----'));
178
+ for (const item of breakdown.slice(0, 10)) {
179
+ console.log(` ${item.taskId} | ${item.humanHours}h | ${item.aiHours}h | ${item.totalHours}h | ${item.confidence}%`);
180
+ }
181
+ if (breakdown.length > 10) {
182
+ console.log(chalk.gray(` ... +${breakdown.length - 10} more`));
183
+ }
184
+ console.log();
185
+ }
186
+ // Save estimate.md
187
+ const estimatePath = join(featureDir, 'estimate.md');
188
+ const estimateMd = `# Estimativa: ${meta.featureName}
189
+
190
+ > Feature ID: ${meta.featureId}
191
+ > Gerado: ${estimation.createdAt}
192
+ > Confiança Média: ${avgConfidence}%
193
+
194
+ ## Resumo
195
+
196
+ | Métrica | Valor |
197
+ |---------|-------|
198
+ | **Total** | ${totalHours}h |
199
+ | **Humano** | ${totalHuman}h (${humanPercent}%) |
200
+ | **AI** | ${totalAi}h (${aiPercent}%) |
201
+ | **Complexidade** | ${estimation.complexity} |
202
+
203
+ ## Breakdown
204
+
205
+ | Task | Descrição | Humano | AI | Total |
206
+ |------|-----------|--------|-----|-------|
207
+ ${breakdown.map((b) => `| ${b.taskId} | ${b.description} | ${b.humanHours}h | ${b.aiHours}h | ${b.totalHours}h |`).join('\n')}
208
+
209
+ ## Premissas
210
+
211
+ ${estimation.assumptions.map((a) => `- ${a}`).join('\n')}
212
+ `;
213
+ writeFileSync(estimatePath, estimateMd, 'utf-8');
214
+ console.log(chalk.green(`✓ Estimativa salva em: ${estimatePath}`));
215
+ console.log();
216
+ }
217
+ //# sourceMappingURL=estimate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimate.js","sourceRoot":"","sources":["../../src/cli/estimate.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -17,6 +17,8 @@ import { specify } from './specify.js';
17
17
  import { clarify } from './clarify.js';
18
18
  import { addTasks, completeTask } from './tasks.js';
19
19
  import { update } from './update.js';
20
+ import { estimate } from './estimate.js';
21
+ import { validate } from './validate.js';
20
22
  import { checkForUpdates, showUpdateNotification, getInstalledVersion } from './version-check.js';
21
23
  const SEDD_DIR = '.sedd';
22
24
  function getFeatures(seddPath) {
@@ -177,6 +179,21 @@ async function main() {
177
179
  .option('-f, --force', 'Skip confirmation prompt')
178
180
  .option('-b, --backup', 'Create backup before updating')
179
181
  .action(update);
182
+ program
183
+ .command('estimate')
184
+ .description('Generate effort estimation for current feature')
185
+ .option('-p, --path <path>', 'File path to investigate')
186
+ .option('-d, --description <desc>', 'Feature description to estimate')
187
+ .option('-j, --json', 'Output as JSON')
188
+ .action(estimate);
189
+ program
190
+ .command('validate')
191
+ .description('Validate implementation against expectation')
192
+ .option('-m, --migration <id>', 'Specific migration ID to validate')
193
+ .option('-a, --auto', 'Auto-create tasks for gaps')
194
+ .option('--full-diff', 'Show full git diff')
195
+ .option('-j, --json', 'Output as JSON')
196
+ .action(validate);
180
197
  // No arguments - show welcome
181
198
  if (args.length === 0) {
182
199
  showWelcome();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAaA,UAAU,WAAW;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAgCD,wBAAsB,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6OzF"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAaA,UAAU,WAAW;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAgCD,wBAAsB,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgPzF"}