specweave 0.28.13 → 0.28.15
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/dist/src/cli/commands/archive.d.ts +0 -1
- package/dist/src/cli/commands/archive.d.ts.map +1 -1
- package/dist/src/cli/commands/archive.js +1 -4
- package/dist/src/cli/commands/archive.js.map +1 -1
- package/dist/src/cli/commands/import-external.d.ts.map +1 -1
- package/dist/src/cli/commands/import-external.js +128 -16
- package/dist/src/cli/commands/import-external.js.map +1 -1
- package/dist/src/cli/commands/init.js +5 -5
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/helpers/init/external-import.d.ts +3 -1
- package/dist/src/cli/helpers/init/external-import.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/external-import.js +407 -19
- package/dist/src/cli/helpers/init/external-import.js.map +1 -1
- package/dist/src/cli/helpers/init/next-steps.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/next-steps.js +77 -5
- package/dist/src/cli/helpers/init/next-steps.js.map +1 -1
- package/dist/src/cli/helpers/init/smart-reinit.d.ts +2 -0
- package/dist/src/cli/helpers/init/smart-reinit.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/smart-reinit.js +371 -36
- package/dist/src/cli/helpers/init/smart-reinit.js.map +1 -1
- package/dist/src/cli/helpers/init/testing-config.d.ts +5 -2
- package/dist/src/cli/helpers/init/testing-config.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/testing-config.js +322 -31
- package/dist/src/cli/helpers/init/testing-config.js.map +1 -1
- package/dist/src/core/feature-deleter/validator.d.ts +1 -0
- package/dist/src/core/feature-deleter/validator.d.ts.map +1 -1
- package/dist/src/core/feature-deleter/validator.js +8 -10
- package/dist/src/core/feature-deleter/validator.js.map +1 -1
- package/dist/src/core/increment/increment-archiver.d.ts.map +1 -1
- package/dist/src/core/increment/increment-archiver.js +12 -5
- package/dist/src/core/increment/increment-archiver.js.map +1 -1
- package/dist/src/core/living-docs/feature-archiver.d.ts +25 -3
- package/dist/src/core/living-docs/feature-archiver.d.ts.map +1 -1
- package/dist/src/core/living-docs/feature-archiver.js +131 -129
- package/dist/src/core/living-docs/feature-archiver.js.map +1 -1
- package/dist/src/core/living-docs/feature-consistency-validator.d.ts +23 -22
- package/dist/src/core/living-docs/feature-consistency-validator.d.ts.map +1 -1
- package/dist/src/core/living-docs/feature-consistency-validator.js +68 -150
- package/dist/src/core/living-docs/feature-consistency-validator.js.map +1 -1
- package/dist/src/core/living-docs/feature-id-manager.d.ts +5 -1
- package/dist/src/core/living-docs/feature-id-manager.d.ts.map +1 -1
- package/dist/src/core/living-docs/feature-id-manager.js +43 -23
- package/dist/src/core/living-docs/feature-id-manager.js.map +1 -1
- package/dist/src/core/living-docs/hierarchy-mapper.d.ts +21 -12
- package/dist/src/core/living-docs/hierarchy-mapper.d.ts.map +1 -1
- package/dist/src/core/living-docs/hierarchy-mapper.js +89 -70
- package/dist/src/core/living-docs/hierarchy-mapper.js.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.d.ts +10 -11
- package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.js +24 -56
- package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
- package/dist/src/core/repo-structure/repo-bulk-discovery.d.ts +1 -1
- package/dist/src/core/repo-structure/repo-bulk-discovery.d.ts.map +1 -1
- package/dist/src/core/repo-structure/repo-bulk-discovery.js +168 -126
- package/dist/src/core/repo-structure/repo-bulk-discovery.js.map +1 -1
- package/dist/src/core/spec-detector.js +2 -2
- package/dist/src/core/spec-detector.js.map +1 -1
- package/dist/src/importers/duplicate-detector.d.ts +6 -0
- package/dist/src/importers/duplicate-detector.d.ts.map +1 -1
- package/dist/src/importers/duplicate-detector.js +8 -2
- package/dist/src/importers/duplicate-detector.js.map +1 -1
- package/dist/src/importers/external-importer.d.ts +6 -0
- package/dist/src/importers/external-importer.d.ts.map +1 -1
- package/dist/src/importers/import-coordinator.d.ts +38 -2
- package/dist/src/importers/import-coordinator.d.ts.map +1 -1
- package/dist/src/importers/import-coordinator.js +142 -5
- package/dist/src/importers/import-coordinator.js.map +1 -1
- package/dist/src/importers/item-converter.d.ts +39 -1
- package/dist/src/importers/item-converter.d.ts.map +1 -1
- package/dist/src/importers/item-converter.js +202 -24
- package/dist/src/importers/item-converter.js.map +1 -1
- package/dist/src/living-docs/fs-id-allocator.d.ts +9 -2
- package/dist/src/living-docs/fs-id-allocator.d.ts.map +1 -1
- package/dist/src/living-docs/fs-id-allocator.js +24 -10
- package/dist/src/living-docs/fs-id-allocator.js.map +1 -1
- package/dist/src/sync/sync-metadata.d.ts.map +1 -1
- package/dist/src/sync/sync-metadata.js +31 -2
- package/dist/src/sync/sync-metadata.js.map +1 -1
- package/dist/src/utils/project-detection.d.ts +13 -10
- package/dist/src/utils/project-detection.d.ts.map +1 -1
- package/dist/src/utils/project-detection.js +26 -11
- package/dist/src/utils/project-detection.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/agents/AGENTS-INDEX.md +0 -9
- package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +12 -0
- package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +18 -0
|
@@ -13,15 +13,232 @@ import { ItemConverter } from '../../../importers/item-converter.js';
|
|
|
13
13
|
import { loadImportConfig } from '../../../config/import-config.js';
|
|
14
14
|
import { selectRepositories } from '../github-repo-selector.js';
|
|
15
15
|
import { detectAllConfigs } from './config-detection.js';
|
|
16
|
+
/**
|
|
17
|
+
* Get translated strings for external import
|
|
18
|
+
*/
|
|
19
|
+
function getExternalImportStrings(language) {
|
|
20
|
+
const strings = {
|
|
21
|
+
en: {
|
|
22
|
+
toolDetectionHeader: '🔍 External Tool Detection',
|
|
23
|
+
found: 'Found:',
|
|
24
|
+
ciSkipping: 'CI mode: Skipping import (can run manually later)',
|
|
25
|
+
skipImport: '✓ Skipping import',
|
|
26
|
+
useExistingProfiles: 'Using existing sync profiles:',
|
|
27
|
+
failedReadProfiles: '⚠️ Failed to read sync profiles:',
|
|
28
|
+
importQuestion: 'Import existing work items to living docs?',
|
|
29
|
+
importItems: '✨ Yes, import items',
|
|
30
|
+
skipForNow: '⏭️ Skip for now',
|
|
31
|
+
importComplete: 'Import complete!',
|
|
32
|
+
someImportsFailed: '⚠️ Some imports failed:',
|
|
33
|
+
largeDataset: '⚠️ Imported items (large dataset)',
|
|
34
|
+
largeDatasetHint: '→ Consider using time range filters for faster imports',
|
|
35
|
+
livingDocsCreated: '→ Living docs created with E suffix (US-001E, US-002E, ...)',
|
|
36
|
+
organizedIntoRepos: '→ Organized into project folders',
|
|
37
|
+
organizedIntoFeatures: '→ Organized into feature folder(s)',
|
|
38
|
+
autoArchived: '→ Auto-archived items older than 30 days',
|
|
39
|
+
location: '→ Location: .specweave/docs/internal/specs/',
|
|
40
|
+
nextStepsHeader: '💡 Next steps:',
|
|
41
|
+
nextStepReview: '→ Review imported User Stories in living docs',
|
|
42
|
+
nextStepCreate: '→ Create increments manually when ready: /specweave:increment "feature"',
|
|
43
|
+
},
|
|
44
|
+
ru: {
|
|
45
|
+
toolDetectionHeader: '🔍 Обнаружение внешних инструментов',
|
|
46
|
+
found: 'Найдено:',
|
|
47
|
+
ciSkipping: 'CI режим: Пропуск импорта (можно запустить позже)',
|
|
48
|
+
skipImport: '✓ Пропуск импорта',
|
|
49
|
+
useExistingProfiles: 'Использование существующих профилей синхронизации:',
|
|
50
|
+
failedReadProfiles: '⚠️ Не удалось прочитать профили синхронизации:',
|
|
51
|
+
importQuestion: 'Импортировать существующие рабочие элементы в living docs?',
|
|
52
|
+
importItems: '✨ Да, импортировать',
|
|
53
|
+
skipForNow: '⏭️ Пропустить',
|
|
54
|
+
importComplete: 'Импорт завершён!',
|
|
55
|
+
someImportsFailed: '⚠️ Некоторые импорты не удались:',
|
|
56
|
+
largeDataset: '⚠️ Импортировано элементов (большой набор данных)',
|
|
57
|
+
largeDatasetHint: '→ Рекомендуем использовать фильтры по времени для быстрого импорта',
|
|
58
|
+
livingDocsCreated: '→ Living docs созданы с суффиксом E (US-001E, US-002E, ...)',
|
|
59
|
+
organizedIntoRepos: '→ Организовано в папки проектов',
|
|
60
|
+
organizedIntoFeatures: '→ Организовано в папки фич',
|
|
61
|
+
autoArchived: '→ Автоархивированы элементы старше 30 дней',
|
|
62
|
+
location: '→ Расположение: .specweave/docs/internal/specs/',
|
|
63
|
+
nextStepsHeader: '💡 Следующие шаги:',
|
|
64
|
+
nextStepReview: '→ Просмотрите импортированные User Stories в living docs',
|
|
65
|
+
nextStepCreate: '→ Создайте инкременты когда будете готовы: /specweave:increment "feature"',
|
|
66
|
+
},
|
|
67
|
+
es: {
|
|
68
|
+
toolDetectionHeader: '🔍 Detección de herramientas externas',
|
|
69
|
+
found: 'Encontrado:',
|
|
70
|
+
ciSkipping: 'Modo CI: Omitiendo importación (puede ejecutarse manualmente después)',
|
|
71
|
+
skipImport: '✓ Omitiendo importación',
|
|
72
|
+
useExistingProfiles: 'Usando perfiles de sincronización existentes:',
|
|
73
|
+
failedReadProfiles: '⚠️ Error al leer perfiles de sincronización:',
|
|
74
|
+
importQuestion: '¿Importar elementos de trabajo existentes a living docs?',
|
|
75
|
+
importItems: '✨ Sí, importar elementos',
|
|
76
|
+
skipForNow: '⏭️ Omitir por ahora',
|
|
77
|
+
importComplete: '¡Importación completada!',
|
|
78
|
+
someImportsFailed: '⚠️ Algunas importaciones fallaron:',
|
|
79
|
+
largeDataset: '⚠️ Elementos importados (conjunto de datos grande)',
|
|
80
|
+
largeDatasetHint: '→ Considere usar filtros de rango de tiempo para importaciones más rápidas',
|
|
81
|
+
livingDocsCreated: '→ Living docs creados con sufijo E (US-001E, US-002E, ...)',
|
|
82
|
+
organizedIntoRepos: '→ Organizado en carpetas de proyectos',
|
|
83
|
+
organizedIntoFeatures: '→ Organizado en carpeta(s) de características',
|
|
84
|
+
autoArchived: '→ Auto-archivados elementos mayores a 30 días',
|
|
85
|
+
location: '→ Ubicación: .specweave/docs/internal/specs/',
|
|
86
|
+
nextStepsHeader: '💡 Próximos pasos:',
|
|
87
|
+
nextStepReview: '→ Revise las User Stories importadas en living docs',
|
|
88
|
+
nextStepCreate: '→ Cree incrementos cuando esté listo: /specweave:increment "feature"',
|
|
89
|
+
},
|
|
90
|
+
zh: {
|
|
91
|
+
toolDetectionHeader: '🔍 外部工具检测',
|
|
92
|
+
found: '已找到:',
|
|
93
|
+
ciSkipping: 'CI 模式:跳过导入(可稍后手动运行)',
|
|
94
|
+
skipImport: '✓ 跳过导入',
|
|
95
|
+
useExistingProfiles: '使用现有同步配置:',
|
|
96
|
+
failedReadProfiles: '⚠️ 读取同步配置失败:',
|
|
97
|
+
importQuestion: '将现有工作项导入到 living docs?',
|
|
98
|
+
importItems: '✨ 是的,导入项目',
|
|
99
|
+
skipForNow: '⏭️ 暂时跳过',
|
|
100
|
+
importComplete: '导入完成!',
|
|
101
|
+
someImportsFailed: '⚠️ 部分导入失败:',
|
|
102
|
+
largeDataset: '⚠️ 已导入项目(大数据集)',
|
|
103
|
+
largeDatasetHint: '→ 建议使用时间范围过滤器加快导入',
|
|
104
|
+
livingDocsCreated: '→ Living docs 已创建,带 E 后缀 (US-001E, US-002E, ...)',
|
|
105
|
+
organizedIntoRepos: '→ 已整理到项目文件夹',
|
|
106
|
+
organizedIntoFeatures: '→ 已整理到功能文件夹',
|
|
107
|
+
autoArchived: '→ 已自动归档超过30天的项目',
|
|
108
|
+
location: '→ 位置:.specweave/docs/internal/specs/',
|
|
109
|
+
nextStepsHeader: '💡 下一步:',
|
|
110
|
+
nextStepReview: '→ 在 living docs 中查看导入的用户故事',
|
|
111
|
+
nextStepCreate: '→ 准备好后创建增量:/specweave:increment "feature"',
|
|
112
|
+
},
|
|
113
|
+
de: {
|
|
114
|
+
toolDetectionHeader: '🔍 Externe Tool-Erkennung',
|
|
115
|
+
found: 'Gefunden:',
|
|
116
|
+
ciSkipping: 'CI-Modus: Import überspringen (kann später manuell ausgeführt werden)',
|
|
117
|
+
skipImport: '✓ Import überspringen',
|
|
118
|
+
useExistingProfiles: 'Verwende bestehende Sync-Profile:',
|
|
119
|
+
failedReadProfiles: '⚠️ Fehler beim Lesen der Sync-Profile:',
|
|
120
|
+
importQuestion: 'Bestehende Arbeitselemente in Living Docs importieren?',
|
|
121
|
+
importItems: '✨ Ja, Elemente importieren',
|
|
122
|
+
skipForNow: '⏭️ Vorerst überspringen',
|
|
123
|
+
importComplete: 'Import abgeschlossen!',
|
|
124
|
+
someImportsFailed: '⚠️ Einige Importe fehlgeschlagen:',
|
|
125
|
+
largeDataset: '⚠️ Importierte Elemente (großer Datensatz)',
|
|
126
|
+
largeDatasetHint: '→ Zeitbereichsfilter für schnellere Importe empfohlen',
|
|
127
|
+
livingDocsCreated: '→ Living Docs mit E-Suffix erstellt (US-001E, US-002E, ...)',
|
|
128
|
+
organizedIntoRepos: '→ In Projektordner organisiert',
|
|
129
|
+
organizedIntoFeatures: '→ In Feature-Ordner organisiert',
|
|
130
|
+
autoArchived: '→ Elemente älter als 30 Tage automatisch archiviert',
|
|
131
|
+
location: '→ Speicherort: .specweave/docs/internal/specs/',
|
|
132
|
+
nextStepsHeader: '💡 Nächste Schritte:',
|
|
133
|
+
nextStepReview: '→ Importierte User Stories in Living Docs überprüfen',
|
|
134
|
+
nextStepCreate: '→ Bei Bedarf Inkremente erstellen: /specweave:increment "feature"',
|
|
135
|
+
},
|
|
136
|
+
fr: {
|
|
137
|
+
toolDetectionHeader: '🔍 Détection des outils externes',
|
|
138
|
+
found: 'Trouvé :',
|
|
139
|
+
ciSkipping: 'Mode CI : Import ignoré (peut être exécuté manuellement plus tard)',
|
|
140
|
+
skipImport: '✓ Import ignoré',
|
|
141
|
+
useExistingProfiles: 'Utilisation des profils de synchronisation existants :',
|
|
142
|
+
failedReadProfiles: '⚠️ Échec de lecture des profils de synchronisation :',
|
|
143
|
+
importQuestion: 'Importer les éléments de travail existants vers living docs ?',
|
|
144
|
+
importItems: '✨ Oui, importer les éléments',
|
|
145
|
+
skipForNow: '⏭️ Passer pour l\'instant',
|
|
146
|
+
importComplete: 'Import terminé !',
|
|
147
|
+
someImportsFailed: '⚠️ Certains imports ont échoué :',
|
|
148
|
+
largeDataset: '⚠️ Éléments importés (grand ensemble de données)',
|
|
149
|
+
largeDatasetHint: '→ Envisagez d\'utiliser des filtres de plage de temps pour des imports plus rapides',
|
|
150
|
+
livingDocsCreated: '→ Living docs créés avec suffixe E (US-001E, US-002E, ...)',
|
|
151
|
+
organizedIntoRepos: '→ Organisé en dossiers de projets',
|
|
152
|
+
organizedIntoFeatures: '→ Organisé en dossier(s) de fonctionnalités',
|
|
153
|
+
autoArchived: '→ Éléments de plus de 30 jours auto-archivés',
|
|
154
|
+
location: '→ Emplacement : .specweave/docs/internal/specs/',
|
|
155
|
+
nextStepsHeader: '💡 Prochaines étapes :',
|
|
156
|
+
nextStepReview: '→ Examiner les User Stories importées dans living docs',
|
|
157
|
+
nextStepCreate: '→ Créer des incréments si prêt : /specweave:increment "feature"',
|
|
158
|
+
},
|
|
159
|
+
ja: {
|
|
160
|
+
toolDetectionHeader: '🔍 外部ツール検出',
|
|
161
|
+
found: '検出:',
|
|
162
|
+
ciSkipping: 'CIモード:インポートをスキップ(後で手動実行可能)',
|
|
163
|
+
skipImport: '✓ インポートをスキップ',
|
|
164
|
+
useExistingProfiles: '既存の同期プロファイルを使用:',
|
|
165
|
+
failedReadProfiles: '⚠️ 同期プロファイルの読み取りに失敗:',
|
|
166
|
+
importQuestion: '既存の作業項目をliving docsにインポートしますか?',
|
|
167
|
+
importItems: '✨ はい、インポート',
|
|
168
|
+
skipForNow: '⏭️ 今はスキップ',
|
|
169
|
+
importComplete: 'インポート完了!',
|
|
170
|
+
someImportsFailed: '⚠️ 一部のインポートが失敗:',
|
|
171
|
+
largeDataset: '⚠️ インポートされた項目(大規模データセット)',
|
|
172
|
+
largeDatasetHint: '→ より高速なインポートには時間範囲フィルターの使用を推奨',
|
|
173
|
+
livingDocsCreated: '→ Living docsがEサフィックスで作成されました (US-001E, US-002E, ...)',
|
|
174
|
+
organizedIntoRepos: '→ プロジェクトフォルダに整理',
|
|
175
|
+
organizedIntoFeatures: '→ 機能フォルダに整理',
|
|
176
|
+
autoArchived: '→ 30日以上前の項目を自動アーカイブ',
|
|
177
|
+
location: '→ 場所:.specweave/docs/internal/specs/',
|
|
178
|
+
nextStepsHeader: '💡 次のステップ:',
|
|
179
|
+
nextStepReview: '→ living docsでインポートされたユーザーストーリーを確認',
|
|
180
|
+
nextStepCreate: '→ 準備ができたらインクリメントを作成:/specweave:increment "feature"',
|
|
181
|
+
},
|
|
182
|
+
ko: {
|
|
183
|
+
toolDetectionHeader: '🔍 외부 도구 감지',
|
|
184
|
+
found: '발견:',
|
|
185
|
+
ciSkipping: 'CI 모드: 가져오기 건너뜀 (나중에 수동으로 실행 가능)',
|
|
186
|
+
skipImport: '✓ 가져오기 건너뜀',
|
|
187
|
+
useExistingProfiles: '기존 동기화 프로필 사용:',
|
|
188
|
+
failedReadProfiles: '⚠️ 동기화 프로필 읽기 실패:',
|
|
189
|
+
importQuestion: '기존 작업 항목을 living docs로 가져올까요?',
|
|
190
|
+
importItems: '✨ 예, 항목 가져오기',
|
|
191
|
+
skipForNow: '⏭️ 지금은 건너뛰기',
|
|
192
|
+
importComplete: '가져오기 완료!',
|
|
193
|
+
someImportsFailed: '⚠️ 일부 가져오기 실패:',
|
|
194
|
+
largeDataset: '⚠️ 가져온 항목 (대용량 데이터셋)',
|
|
195
|
+
largeDatasetHint: '→ 더 빠른 가져오기를 위해 시간 범위 필터 사용 권장',
|
|
196
|
+
livingDocsCreated: '→ Living docs가 E 접미사로 생성됨 (US-001E, US-002E, ...)',
|
|
197
|
+
organizedIntoRepos: '→ 프로젝트 폴더로 정리됨',
|
|
198
|
+
organizedIntoFeatures: '→ 기능 폴더로 정리됨',
|
|
199
|
+
autoArchived: '→ 30일 이상 된 항목 자동 보관',
|
|
200
|
+
location: '→ 위치: .specweave/docs/internal/specs/',
|
|
201
|
+
nextStepsHeader: '💡 다음 단계:',
|
|
202
|
+
nextStepReview: '→ living docs에서 가져온 사용자 스토리 검토',
|
|
203
|
+
nextStepCreate: '→ 준비되면 증분 생성: /specweave:increment "feature"',
|
|
204
|
+
},
|
|
205
|
+
pt: {
|
|
206
|
+
toolDetectionHeader: '🔍 Detecção de ferramentas externas',
|
|
207
|
+
found: 'Encontrado:',
|
|
208
|
+
ciSkipping: 'Modo CI: Pulando importação (pode ser executado manualmente depois)',
|
|
209
|
+
skipImport: '✓ Pulando importação',
|
|
210
|
+
useExistingProfiles: 'Usando perfis de sincronização existentes:',
|
|
211
|
+
failedReadProfiles: '⚠️ Falha ao ler perfis de sincronização:',
|
|
212
|
+
importQuestion: 'Importar itens de trabalho existentes para living docs?',
|
|
213
|
+
importItems: '✨ Sim, importar itens',
|
|
214
|
+
skipForNow: '⏭️ Pular por enquanto',
|
|
215
|
+
importComplete: 'Importação concluída!',
|
|
216
|
+
someImportsFailed: '⚠️ Algumas importações falharam:',
|
|
217
|
+
largeDataset: '⚠️ Itens importados (grande conjunto de dados)',
|
|
218
|
+
largeDatasetHint: '→ Considere usar filtros de intervalo de tempo para importações mais rápidas',
|
|
219
|
+
livingDocsCreated: '→ Living docs criados com sufixo E (US-001E, US-002E, ...)',
|
|
220
|
+
organizedIntoRepos: '→ Organizado em pastas de projetos',
|
|
221
|
+
organizedIntoFeatures: '→ Organizado em pasta(s) de recursos',
|
|
222
|
+
autoArchived: '→ Itens com mais de 30 dias auto-arquivados',
|
|
223
|
+
location: '→ Local: .specweave/docs/internal/specs/',
|
|
224
|
+
nextStepsHeader: '💡 Próximos passos:',
|
|
225
|
+
nextStepReview: '→ Revise as User Stories importadas em living docs',
|
|
226
|
+
nextStepCreate: '→ Crie incrementos quando estiver pronto: /specweave:increment "feature"',
|
|
227
|
+
},
|
|
228
|
+
};
|
|
229
|
+
return strings[language] || strings.en;
|
|
230
|
+
}
|
|
16
231
|
/**
|
|
17
232
|
* Prompt user and run external tool import
|
|
18
233
|
* Detects GitHub/JIRA/ADO configuration and imports work items
|
|
19
234
|
*
|
|
20
235
|
* @param targetDir - Project directory
|
|
21
236
|
* @param isCI - Whether running in CI mode
|
|
237
|
+
* @param language - Language for translations
|
|
22
238
|
* @returns Import result
|
|
23
239
|
*/
|
|
24
|
-
export async function promptAndRunExternalImport(targetDir, isCI) {
|
|
240
|
+
export async function promptAndRunExternalImport(targetDir, isCI, language = 'en') {
|
|
241
|
+
const strings = getExternalImportStrings(language);
|
|
25
242
|
// Load import configuration
|
|
26
243
|
const importConfig = loadImportConfig(targetDir);
|
|
27
244
|
// Check if import is disabled via config
|
|
@@ -34,27 +251,39 @@ export async function promptAndRunExternalImport(targetDir, isCI) {
|
|
|
34
251
|
if (availableTools.length === 0) {
|
|
35
252
|
return emptyResult();
|
|
36
253
|
}
|
|
37
|
-
console.log(chalk.blue('\n
|
|
38
|
-
console.log(chalk.gray(`
|
|
254
|
+
console.log(chalk.blue('\n' + strings.toolDetectionHeader));
|
|
255
|
+
console.log(chalk.gray(` ${strings.found} ${availableTools.join(', ')}`));
|
|
39
256
|
console.log('');
|
|
40
257
|
// In CI mode, skip import without prompting
|
|
41
258
|
if (isCI) {
|
|
42
|
-
console.log(chalk.gray(' →
|
|
259
|
+
console.log(chalk.gray(' → ' + strings.ciSkipping + '\n'));
|
|
43
260
|
return emptyResult();
|
|
44
261
|
}
|
|
45
262
|
// Prompt user to import
|
|
46
263
|
const shouldImport = await confirm({
|
|
47
|
-
message:
|
|
264
|
+
message: `${strings.importQuestion} (${availableTools.join(', ')})`,
|
|
48
265
|
default: false
|
|
49
266
|
});
|
|
50
267
|
if (!shouldImport) {
|
|
51
|
-
console.log(chalk.gray('
|
|
268
|
+
console.log(chalk.gray(' ' + strings.skipImport + '\n'));
|
|
52
269
|
return emptyResult();
|
|
53
270
|
}
|
|
54
271
|
// Handle multi-repo selection for GitHub
|
|
55
272
|
let repoSelectionConfig = null;
|
|
56
273
|
if (github && process.env.GITHUB_TOKEN) {
|
|
57
|
-
|
|
274
|
+
// First check if sync profiles already exist (from umbrella repo setup)
|
|
275
|
+
const existingProfiles = getExistingSyncProfiles(targetDir);
|
|
276
|
+
if (existingProfiles && existingProfiles.length > 0) {
|
|
277
|
+
console.log(chalk.gray(` Using existing sync profiles: ${existingProfiles.length} repositories`));
|
|
278
|
+
repoSelectionConfig = {
|
|
279
|
+
repositories: existingProfiles,
|
|
280
|
+
selectionStrategy: 'explicit'
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
// No existing profiles - prompt for multi-repo selection
|
|
285
|
+
repoSelectionConfig = await promptMultiRepoSelection(targetDir);
|
|
286
|
+
}
|
|
58
287
|
}
|
|
59
288
|
// Map config timeRangeMonths to closest prompt option
|
|
60
289
|
let defaultTimeRange = 3;
|
|
@@ -84,15 +313,27 @@ export async function promptAndRunExternalImport(targetDir, isCI) {
|
|
|
84
313
|
includeClosed: false,
|
|
85
314
|
pageSize: importConfig.pageSize
|
|
86
315
|
},
|
|
87
|
-
parallel: true
|
|
316
|
+
parallel: true,
|
|
317
|
+
projectRoot: targetDir
|
|
88
318
|
};
|
|
89
|
-
// Add GitHub config if
|
|
319
|
+
// Add GitHub config - prefer multi-repo if selected
|
|
90
320
|
if (github) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
321
|
+
if (repoSelectionConfig && repoSelectionConfig.repositories.length > 0) {
|
|
322
|
+
// Multi-repo mode: import from all selected repositories
|
|
323
|
+
coordinatorConfig.githubRepositories = repoSelectionConfig.repositories.map(fullRepo => {
|
|
324
|
+
const [owner, repo] = fullRepo.split('/');
|
|
325
|
+
return { owner, repo };
|
|
326
|
+
});
|
|
327
|
+
coordinatorConfig.githubToken = process.env.GITHUB_TOKEN;
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
// Single repo mode (backwards compatible)
|
|
331
|
+
coordinatorConfig.github = {
|
|
332
|
+
owner: github.owner,
|
|
333
|
+
repo: github.repo,
|
|
334
|
+
token: process.env.GITHUB_TOKEN
|
|
335
|
+
};
|
|
336
|
+
}
|
|
96
337
|
}
|
|
97
338
|
// Add JIRA config if available
|
|
98
339
|
if (jira) {
|
|
@@ -113,6 +354,37 @@ export async function promptAndRunExternalImport(targetDir, isCI) {
|
|
|
113
354
|
// Run import with progress tracking
|
|
114
355
|
return await runImport(targetDir, coordinatorConfig);
|
|
115
356
|
}
|
|
357
|
+
/**
|
|
358
|
+
* Get existing sync profiles from config.json
|
|
359
|
+
* Returns array of "owner/repo" strings if profiles exist
|
|
360
|
+
*/
|
|
361
|
+
function getExistingSyncProfiles(targetDir) {
|
|
362
|
+
try {
|
|
363
|
+
const configPath = path.join(targetDir, '.specweave', 'config.json');
|
|
364
|
+
if (!fs.existsSync(configPath)) {
|
|
365
|
+
return null;
|
|
366
|
+
}
|
|
367
|
+
const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
368
|
+
// Check for sync.profiles structure (umbrella repo setup)
|
|
369
|
+
if (config.sync?.profiles && typeof config.sync.profiles === 'object') {
|
|
370
|
+
const profiles = config.sync.profiles;
|
|
371
|
+
const repos = [];
|
|
372
|
+
for (const [profileId, profile] of Object.entries(profiles)) {
|
|
373
|
+
const p = profile;
|
|
374
|
+
if (p.config?.owner && p.config?.repo) {
|
|
375
|
+
repos.push(`${p.config.owner}/${p.config.repo}`);
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
return repos.length > 0 ? repos : null;
|
|
379
|
+
}
|
|
380
|
+
return null;
|
|
381
|
+
}
|
|
382
|
+
catch (error) {
|
|
383
|
+
// Log warning for debugging - config parsing errors shouldn't be silent
|
|
384
|
+
console.warn(chalk.yellow(` ⚠️ Failed to read sync profiles: ${error instanceof Error ? error.message : String(error)}`));
|
|
385
|
+
return null;
|
|
386
|
+
}
|
|
387
|
+
}
|
|
116
388
|
/**
|
|
117
389
|
* Prompt for multi-repository selection
|
|
118
390
|
*/
|
|
@@ -165,8 +437,45 @@ async function promptMultiRepoSelection(targetDir) {
|
|
|
165
437
|
*/
|
|
166
438
|
async function runImport(targetDir, coordinatorConfig) {
|
|
167
439
|
const spinner = ora('Importing items...').start();
|
|
168
|
-
|
|
169
|
-
|
|
440
|
+
let lastRepo = '';
|
|
441
|
+
// Enhanced progress callback with percentage and ETA
|
|
442
|
+
coordinatorConfig.onProgressEnhanced = (info) => {
|
|
443
|
+
const parts = [];
|
|
444
|
+
// Show repo name for multi-repo imports
|
|
445
|
+
if (info.sourceRepo && info.sourceRepo !== lastRepo) {
|
|
446
|
+
lastRepo = info.sourceRepo;
|
|
447
|
+
}
|
|
448
|
+
const repoLabel = info.sourceRepo ? ` (${info.sourceRepo})` : '';
|
|
449
|
+
// Build progress string
|
|
450
|
+
if (info.total && info.percentage !== undefined) {
|
|
451
|
+
parts.push(`[${info.current}/${info.total}] ${info.percentage}%`);
|
|
452
|
+
}
|
|
453
|
+
else {
|
|
454
|
+
parts.push(`${info.current} items`);
|
|
455
|
+
}
|
|
456
|
+
// Add rate if available
|
|
457
|
+
if (info.rate !== undefined && info.rate > 0) {
|
|
458
|
+
parts.push(`${info.rate}/s`);
|
|
459
|
+
}
|
|
460
|
+
// Add ETA if available
|
|
461
|
+
if (info.eta !== undefined && info.eta > 0) {
|
|
462
|
+
const minutes = Math.floor(info.eta / 60);
|
|
463
|
+
const seconds = info.eta % 60;
|
|
464
|
+
if (minutes > 0) {
|
|
465
|
+
parts.push(`ETA: ${minutes}m ${seconds}s`);
|
|
466
|
+
}
|
|
467
|
+
else {
|
|
468
|
+
parts.push(`ETA: ${seconds}s`);
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
spinner.text = `Importing from ${info.platform}${repoLabel}... ${parts.join(' | ')}`;
|
|
472
|
+
};
|
|
473
|
+
// Legacy progress callback (fallback)
|
|
474
|
+
coordinatorConfig.onProgress = (platform, count, total) => {
|
|
475
|
+
if (!coordinatorConfig.onProgressEnhanced) {
|
|
476
|
+
const totalStr = total ? `/${total}` : '';
|
|
477
|
+
spinner.text = `Importing from ${platform}... (${count}${totalStr} items)`;
|
|
478
|
+
}
|
|
170
479
|
};
|
|
171
480
|
try {
|
|
172
481
|
const coordinator = new ImportCoordinator(coordinatorConfig);
|
|
@@ -211,10 +520,56 @@ async function convertToLivingDocs(targetDir, result, spinner) {
|
|
|
211
520
|
spinner.start('Converting to living docs...');
|
|
212
521
|
try {
|
|
213
522
|
const specsDir = path.join(targetDir, '.specweave', 'docs', 'internal', 'specs');
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
523
|
+
// Track counts
|
|
524
|
+
let archivedCount = 0;
|
|
525
|
+
let totalConverted = 0;
|
|
526
|
+
const allConvertedStories = [];
|
|
527
|
+
// Group items by sourceRepo for proper multi-repo folder allocation
|
|
528
|
+
const itemsByRepo = groupItemsBySourceRepo(result.allItems);
|
|
529
|
+
const repoCount = itemsByRepo.size;
|
|
530
|
+
for (const [repoKey, items] of itemsByRepo.entries()) {
|
|
531
|
+
// Determine project ID:
|
|
532
|
+
// - For multi-repo: use repo name (e.g., "sw-thumbnail-ab-be")
|
|
533
|
+
// - For single-repo/no sourceRepo: null (items go directly to specs/)
|
|
534
|
+
const projectId = repoKey === '_default' ? null : repoKey;
|
|
535
|
+
spinner.text = projectId
|
|
536
|
+
? `Converting items from ${projectId}...`
|
|
537
|
+
: 'Converting items to living docs...';
|
|
538
|
+
// Create converter for this project/repo
|
|
539
|
+
const converter = new ItemConverter({
|
|
540
|
+
specsDir,
|
|
541
|
+
projectRoot: targetDir,
|
|
542
|
+
enableFeatureAllocation: true,
|
|
543
|
+
// For multi-repo: use repo name as project folder
|
|
544
|
+
// For single-repo: undefined means direct to specs/ (no project subfolder)
|
|
545
|
+
projectId: projectId || undefined,
|
|
546
|
+
autoArchiveAfterDays: 30,
|
|
547
|
+
onFeatureCreated: (featureId, featurePath) => {
|
|
548
|
+
const label = projectId ? `${projectId}/${featureId}` : featureId;
|
|
549
|
+
spinner.text = `Created feature folder: ${label}`;
|
|
550
|
+
},
|
|
551
|
+
onItemArchived: (usId, reason) => {
|
|
552
|
+
archivedCount++;
|
|
553
|
+
spinner.text = `Archived ${usId} (${reason})`;
|
|
554
|
+
}
|
|
555
|
+
});
|
|
556
|
+
const convertedStories = await converter.convertItems(items);
|
|
557
|
+
allConvertedStories.push(...convertedStories);
|
|
558
|
+
totalConverted += convertedStories.length;
|
|
559
|
+
}
|
|
560
|
+
// Count unique features created
|
|
561
|
+
const uniqueFeatures = new Set(allConvertedStories.map(s => s.featureId).filter(Boolean));
|
|
562
|
+
spinner.succeed(`Converted ${totalConverted} User Stories to living docs`);
|
|
217
563
|
console.log(chalk.gray(' → Living docs created with E suffix (US-001E, US-002E, ...)'));
|
|
564
|
+
if (repoCount > 1) {
|
|
565
|
+
console.log(chalk.gray(` → Organized into ${repoCount} project folders`));
|
|
566
|
+
}
|
|
567
|
+
if (uniqueFeatures.size > 0) {
|
|
568
|
+
console.log(chalk.gray(` → Organized into ${uniqueFeatures.size} feature folder(s)`));
|
|
569
|
+
}
|
|
570
|
+
if (archivedCount > 0) {
|
|
571
|
+
console.log(chalk.gray(` → Auto-archived ${archivedCount} items older than 30 days`));
|
|
572
|
+
}
|
|
218
573
|
console.log(chalk.gray(' → Location: .specweave/docs/internal/specs/'));
|
|
219
574
|
console.log('');
|
|
220
575
|
// Validate that no increments were auto-created
|
|
@@ -236,6 +591,39 @@ async function convertToLivingDocs(targetDir, result, spinner) {
|
|
|
236
591
|
throw conversionError;
|
|
237
592
|
}
|
|
238
593
|
}
|
|
594
|
+
/**
|
|
595
|
+
* Group items by their source repository
|
|
596
|
+
* Items without sourceRepo go into '_default' group
|
|
597
|
+
*/
|
|
598
|
+
function groupItemsBySourceRepo(items) {
|
|
599
|
+
const groups = new Map();
|
|
600
|
+
for (const item of items) {
|
|
601
|
+
// Extract repo name from sourceRepo (e.g., "owner/repo" -> "repo")
|
|
602
|
+
let repoKey = '_default';
|
|
603
|
+
if (item.sourceRepo) {
|
|
604
|
+
// sourceRepo is "owner/repo", we want just "repo"
|
|
605
|
+
const parts = item.sourceRepo.split('/');
|
|
606
|
+
const rawRepoName = parts.length > 1 ? parts[1] : item.sourceRepo;
|
|
607
|
+
// Sanitize repo name to prevent path injection:
|
|
608
|
+
// - Allow only alphanumeric, hyphens, underscores
|
|
609
|
+
// - Trim leading/trailing hyphens
|
|
610
|
+
// - Limit to 100 chars
|
|
611
|
+
repoKey = rawRepoName
|
|
612
|
+
.replace(/[^a-zA-Z0-9-_]/g, '-')
|
|
613
|
+
.replace(/^-+|-+$/g, '')
|
|
614
|
+
.slice(0, 100);
|
|
615
|
+
// Fall back to _default if sanitization results in empty string
|
|
616
|
+
if (!repoKey) {
|
|
617
|
+
repoKey = '_default';
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
if (!groups.has(repoKey)) {
|
|
621
|
+
groups.set(repoKey, []);
|
|
622
|
+
}
|
|
623
|
+
groups.get(repoKey).push(item);
|
|
624
|
+
}
|
|
625
|
+
return groups;
|
|
626
|
+
}
|
|
239
627
|
/**
|
|
240
628
|
* Create empty result object
|
|
241
629
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-import.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/external-import.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"external-import.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/external-import.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-steps.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/next-steps.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"next-steps.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/next-steps.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAgFrE;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,eAAe,GAAE,OAAe,EAChC,mBAAmB,GAAE,OAAe,GACnC,IAAI,CA+DN"}
|