specweave 0.32.3 → 0.32.6
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/CLAUDE.md +12 -9
- package/bin/specweave.js +78 -0
- package/dist/src/cli/commands/docs.d.ts +45 -0
- package/dist/src/cli/commands/docs.d.ts.map +1 -0
- package/dist/src/cli/commands/docs.js +307 -0
- package/dist/src/cli/commands/docs.js.map +1 -0
- package/dist/src/cli/commands/init-multiproject.js +1 -1
- package/dist/src/cli/commands/init-multiproject.js.map +1 -1
- package/dist/src/cli/commands/migrate-to-multiproject.js +2 -2
- package/dist/src/cli/commands/migrate-to-multiproject.js.map +1 -1
- package/dist/src/cli/helpers/init/repository-setup.d.ts +14 -2
- package/dist/src/cli/helpers/init/repository-setup.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/repository-setup.js +292 -188
- package/dist/src/cli/helpers/init/repository-setup.js.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/index.js +9 -3
- package/dist/src/cli/helpers/issue-tracker/index.js.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/jira.d.ts +18 -2
- package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/jira.js +325 -25
- package/dist/src/cli/helpers/issue-tracker/jira.js.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/sync-config-writer.d.ts.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/sync-config-writer.js +61 -1
- package/dist/src/cli/helpers/issue-tracker/sync-config-writer.js.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/types.d.ts +25 -0
- package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/types.js.map +1 -1
- package/dist/src/core/living-docs/cross-project-sync.d.ts +97 -0
- package/dist/src/core/living-docs/cross-project-sync.d.ts.map +1 -0
- package/dist/src/core/living-docs/cross-project-sync.js +135 -0
- package/dist/src/core/living-docs/cross-project-sync.js.map +1 -0
- package/dist/src/core/living-docs/external-sync-orchestrator.d.ts +106 -0
- package/dist/src/core/living-docs/external-sync-orchestrator.d.ts.map +1 -0
- package/dist/src/core/living-docs/external-sync-orchestrator.js +146 -0
- package/dist/src/core/living-docs/external-sync-orchestrator.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/organization-synthesizer.js +1 -1
- package/dist/src/core/living-docs/living-docs-sync.d.ts +1 -0
- package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.js +77 -2
- package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
- package/dist/src/core/living-docs/sync-helpers/generators.d.ts +8 -1
- package/dist/src/core/living-docs/sync-helpers/generators.d.ts.map +1 -1
- package/dist/src/core/living-docs/sync-helpers/generators.js +18 -1
- package/dist/src/core/living-docs/sync-helpers/generators.js.map +1 -1
- package/dist/src/core/living-docs/sync-helpers/index.d.ts +1 -1
- package/dist/src/core/living-docs/sync-helpers/index.d.ts.map +1 -1
- package/dist/src/core/living-docs/sync-helpers/index.js.map +1 -1
- package/dist/src/core/living-docs/sync-helpers/parsers.d.ts +3 -1
- package/dist/src/core/living-docs/sync-helpers/parsers.d.ts.map +1 -1
- package/dist/src/core/living-docs/sync-helpers/parsers.js +24 -2
- package/dist/src/core/living-docs/sync-helpers/parsers.js.map +1 -1
- package/dist/src/core/living-docs/types.d.ts +6 -0
- package/dist/src/core/living-docs/types.d.ts.map +1 -1
- package/dist/src/core/living-docs/validators/index.d.ts +7 -0
- package/dist/src/core/living-docs/validators/index.d.ts.map +1 -0
- package/dist/src/core/living-docs/validators/index.js +7 -0
- package/dist/src/core/living-docs/validators/index.js.map +1 -0
- package/dist/src/core/living-docs/validators/project-validator.d.ts +92 -0
- package/dist/src/core/living-docs/validators/project-validator.d.ts.map +1 -0
- package/dist/src/core/living-docs/validators/project-validator.js +142 -0
- package/dist/src/core/living-docs/validators/project-validator.js.map +1 -0
- package/dist/src/core/project/project-manager.d.ts.map +1 -1
- package/dist/src/core/project/project-manager.js +19 -17
- package/dist/src/core/project/project-manager.js.map +1 -1
- package/dist/src/core/types/config.d.ts +4 -2
- package/dist/src/core/types/config.d.ts.map +1 -1
- package/dist/src/core/types/config.js.map +1 -1
- package/dist/src/core/types/increment-metadata.d.ts +34 -0
- package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
- package/dist/src/utils/cross-cutting-detector.d.ts +66 -0
- package/dist/src/utils/cross-cutting-detector.d.ts.map +1 -0
- package/dist/src/utils/cross-cutting-detector.js +179 -0
- package/dist/src/utils/cross-cutting-detector.js.map +1 -0
- package/dist/src/utils/docs-preview/config-generator.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/config-generator.js +12 -16
- package/dist/src/utils/docs-preview/config-generator.js.map +1 -1
- package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/docusaurus-setup.js +24 -5
- package/dist/src/utils/docs-preview/docusaurus-setup.js.map +1 -1
- package/dist/src/utils/docs-preview/package-installer.d.ts +3 -0
- package/dist/src/utils/docs-preview/package-installer.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/package-installer.js +18 -9
- package/dist/src/utils/docs-preview/package-installer.js.map +1 -1
- package/dist/src/utils/docs-preview/server-manager.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/server-manager.js +2 -1
- package/dist/src/utils/docs-preview/server-manager.js.map +1 -1
- package/dist/src/utils/project-detection.d.ts +12 -8
- package/dist/src/utils/project-detection.d.ts.map +1 -1
- package/dist/src/utils/project-detection.js +13 -19
- package/dist/src/utils/project-detection.js.map +1 -1
- package/dist/src/utils/validators/jira-validator.d.ts +25 -1
- package/dist/src/utils/validators/jira-validator.d.ts.map +1 -1
- package/dist/src/utils/validators/jira-validator.js +254 -172
- package/dist/src/utils/validators/jira-validator.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/commands/specweave-status.md +64 -0
- package/plugins/specweave/hooks/hooks.json +1 -1
- package/plugins/specweave/hooks/spec-project-validator.sh +2 -1
- package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +34 -0
- package/plugins/specweave/skills/increment-planner/SKILL.md +77 -2
- package/plugins/specweave/skills/spec-generator/SKILL.md +78 -7
- package/plugins/specweave/commands/specweave-switch-project.md +0 -168
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cross-Cutting Feature Detector
|
|
3
|
+
*
|
|
4
|
+
* Detects when a feature spans multiple projects based on keywords,
|
|
5
|
+
* tech stack mentions, and component references.
|
|
6
|
+
*
|
|
7
|
+
* @module utils/cross-cutting-detector
|
|
8
|
+
* @since v0.33.0
|
|
9
|
+
*/
|
|
10
|
+
import { consoleLogger } from './logger.js';
|
|
11
|
+
/**
|
|
12
|
+
* Cross-cutting detection keywords and mappings
|
|
13
|
+
*/
|
|
14
|
+
const CROSS_CUTTING_PATTERNS = {
|
|
15
|
+
// Frontend indicators
|
|
16
|
+
frontend: ['frontend', 'ui', 'react', 'vue', 'angular', 'next.js', 'nuxt', 'svelte', 'client-side', 'browser'],
|
|
17
|
+
// Backend indicators
|
|
18
|
+
backend: ['backend', 'api', 'server', 'node', 'express', 'fastify', 'django', 'flask', 'rails', 'spring', 'graphql', 'rest api'],
|
|
19
|
+
// Infrastructure indicators
|
|
20
|
+
infrastructure: ['infrastructure', 'infra', 'devops', 'ci/cd', 'pipeline', 'kubernetes', 'k8s', 'docker', 'terraform', 'aws', 'azure', 'gcp'],
|
|
21
|
+
// Database indicators
|
|
22
|
+
database: ['database', 'db', 'postgres', 'mysql', 'mongodb', 'redis', 'elasticsearch', 'migration', 'schema'],
|
|
23
|
+
// Security indicators
|
|
24
|
+
security: ['security', 'auth', 'oauth', 'authentication', 'authorization', 'rbac', 'permissions', 'jwt', 'sso'],
|
|
25
|
+
// Mobile indicators
|
|
26
|
+
mobile: ['mobile', 'ios', 'android', 'react native', 'flutter', 'app store', 'play store'],
|
|
27
|
+
// Shared/common indicators
|
|
28
|
+
shared: ['shared', 'common', 'library', 'sdk', 'package', 'module', 'types', 'models']
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Explicit cross-cutting phrases
|
|
32
|
+
*/
|
|
33
|
+
const EXPLICIT_CROSS_CUTTING = [
|
|
34
|
+
'across projects',
|
|
35
|
+
'multiple repos',
|
|
36
|
+
'cross-project',
|
|
37
|
+
'cross-team',
|
|
38
|
+
'frontend and backend',
|
|
39
|
+
'end-to-end',
|
|
40
|
+
'full-stack',
|
|
41
|
+
'fullstack',
|
|
42
|
+
'from ui to api',
|
|
43
|
+
'from client to server',
|
|
44
|
+
'all services',
|
|
45
|
+
'all teams',
|
|
46
|
+
'affects multiple',
|
|
47
|
+
'impacts all'
|
|
48
|
+
];
|
|
49
|
+
/**
|
|
50
|
+
* Cross-Cutting Detector
|
|
51
|
+
*/
|
|
52
|
+
export class CrossCuttingDetector {
|
|
53
|
+
constructor(options = {}) {
|
|
54
|
+
this.customMappings = {};
|
|
55
|
+
this.logger = options.logger ?? consoleLogger;
|
|
56
|
+
this.customMappings = options.customMappings ?? {};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Detect if a description indicates cross-cutting concerns
|
|
60
|
+
*/
|
|
61
|
+
detect(description) {
|
|
62
|
+
const normalized = description.toLowerCase();
|
|
63
|
+
const detectedPatterns = [];
|
|
64
|
+
const suggestedProjects = new Set();
|
|
65
|
+
// 1. Check explicit cross-cutting phrases (high confidence)
|
|
66
|
+
for (const phrase of EXPLICIT_CROSS_CUTTING) {
|
|
67
|
+
if (normalized.includes(phrase)) {
|
|
68
|
+
detectedPatterns.push({
|
|
69
|
+
type: 'explicit',
|
|
70
|
+
matched: phrase
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
// 2. Check keyword patterns
|
|
75
|
+
const allPatterns = { ...CROSS_CUTTING_PATTERNS, ...this.customMappings };
|
|
76
|
+
for (const [project, keywords] of Object.entries(allPatterns)) {
|
|
77
|
+
for (const keyword of keywords) {
|
|
78
|
+
// Use word boundary matching for more accuracy
|
|
79
|
+
const regex = new RegExp(`\\b${this.escapeRegex(keyword)}\\b`, 'i');
|
|
80
|
+
if (regex.test(description)) {
|
|
81
|
+
detectedPatterns.push({
|
|
82
|
+
type: 'keyword',
|
|
83
|
+
matched: keyword,
|
|
84
|
+
suggestedProject: project
|
|
85
|
+
});
|
|
86
|
+
suggestedProjects.add(project);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// 3. Determine if cross-cutting
|
|
91
|
+
const uniqueProjects = [...suggestedProjects];
|
|
92
|
+
const isCrossCutting = uniqueProjects.length >= 2 || detectedPatterns.some(p => p.type === 'explicit');
|
|
93
|
+
// 4. Calculate confidence
|
|
94
|
+
let confidence = 'low';
|
|
95
|
+
if (detectedPatterns.some(p => p.type === 'explicit')) {
|
|
96
|
+
confidence = 'high';
|
|
97
|
+
}
|
|
98
|
+
else if (uniqueProjects.length >= 3) {
|
|
99
|
+
confidence = 'high';
|
|
100
|
+
}
|
|
101
|
+
else if (uniqueProjects.length === 2) {
|
|
102
|
+
// Check if multiple keywords matched per project
|
|
103
|
+
const projectKeywordCounts = new Map();
|
|
104
|
+
for (const pattern of detectedPatterns) {
|
|
105
|
+
if (pattern.suggestedProject) {
|
|
106
|
+
projectKeywordCounts.set(pattern.suggestedProject, (projectKeywordCounts.get(pattern.suggestedProject) || 0) + 1);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
const minMatches = Math.min(...projectKeywordCounts.values());
|
|
110
|
+
confidence = minMatches >= 2 ? 'high' : 'medium';
|
|
111
|
+
}
|
|
112
|
+
// 5. Generate reason
|
|
113
|
+
let reason;
|
|
114
|
+
if (isCrossCutting) {
|
|
115
|
+
if (detectedPatterns.some(p => p.type === 'explicit')) {
|
|
116
|
+
const explicit = detectedPatterns.find(p => p.type === 'explicit');
|
|
117
|
+
reason = `Explicit cross-cutting phrase detected: "${explicit?.matched}"`;
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
reason = `Multiple project domains detected: ${uniqueProjects.join(', ')}`;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
isCrossCutting,
|
|
125
|
+
confidence,
|
|
126
|
+
suggestedProjects: uniqueProjects,
|
|
127
|
+
detectedPatterns,
|
|
128
|
+
reason
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Add custom project mappings
|
|
133
|
+
*/
|
|
134
|
+
addCustomMapping(project, keywords) {
|
|
135
|
+
this.customMappings[project] = [
|
|
136
|
+
...(this.customMappings[project] || []),
|
|
137
|
+
...keywords
|
|
138
|
+
];
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Load custom mappings from config
|
|
142
|
+
*/
|
|
143
|
+
loadMappingsFromConfig(projectMappings) {
|
|
144
|
+
// Extract project IDs as potential mapping targets
|
|
145
|
+
for (const projectId of Object.keys(projectMappings)) {
|
|
146
|
+
// Add the project ID itself as a keyword
|
|
147
|
+
if (!this.customMappings[projectId]) {
|
|
148
|
+
this.customMappings[projectId] = [projectId];
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Escape regex special characters
|
|
154
|
+
*/
|
|
155
|
+
escapeRegex(str) {
|
|
156
|
+
return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Convenience function for one-off detection
|
|
161
|
+
*/
|
|
162
|
+
export function detectCrossCutting(description, options) {
|
|
163
|
+
const detector = new CrossCuttingDetector(options);
|
|
164
|
+
return detector.detect(description);
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Get suggested project for a single-project feature
|
|
168
|
+
*/
|
|
169
|
+
export function suggestSingleProject(description) {
|
|
170
|
+
const result = detectCrossCutting(description);
|
|
171
|
+
if (result.isCrossCutting) {
|
|
172
|
+
return null; // Ambiguous - needs user selection
|
|
173
|
+
}
|
|
174
|
+
if (result.suggestedProjects.length === 1) {
|
|
175
|
+
return result.suggestedProjects[0];
|
|
176
|
+
}
|
|
177
|
+
return null; // No clear suggestion
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=cross-cutting-detector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-cutting-detector.js","sourceRoot":"","sources":["../../../src/utils/cross-cutting-detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-generator.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/config-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"config-generator.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/config-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAqHzE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtG;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAuCzD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA8EvD;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKpF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA8DxE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKrG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAsB/C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1E"}
|
|
@@ -113,14 +113,10 @@ const config = {
|
|
|
113
113
|
}),
|
|
114
114
|
|
|
115
115
|
// Mermaid diagrams support
|
|
116
|
+
// Use 'md' format since SpecWeave docs are .md files, not .mdx
|
|
116
117
|
markdown: {
|
|
117
118
|
mermaid: true,
|
|
118
|
-
format: '
|
|
119
|
-
mdx1Compat: {
|
|
120
|
-
comments: true,
|
|
121
|
-
admonitions: true,
|
|
122
|
-
headingIds: true,
|
|
123
|
-
},
|
|
119
|
+
format: 'md',
|
|
124
120
|
},
|
|
125
121
|
themes: ['@docusaurus/theme-mermaid'],
|
|
126
122
|
};
|
|
@@ -158,21 +154,21 @@ export function generatePackageJSON(title) {
|
|
|
158
154
|
'write-heading-ids': 'docusaurus write-heading-ids'
|
|
159
155
|
},
|
|
160
156
|
dependencies: {
|
|
161
|
-
'@docusaurus/core': '^3.
|
|
162
|
-
'@docusaurus/preset-classic': '^3.
|
|
163
|
-
'@docusaurus/theme-mermaid': '^3.
|
|
157
|
+
'@docusaurus/core': '^3.9.0',
|
|
158
|
+
'@docusaurus/preset-classic': '^3.9.0',
|
|
159
|
+
'@docusaurus/theme-mermaid': '^3.9.0',
|
|
164
160
|
'@mdx-js/react': '^3.0.0',
|
|
165
161
|
clsx: '^2.0.0',
|
|
166
|
-
'prism-react-renderer': '^2.
|
|
167
|
-
react: '^
|
|
168
|
-
'react-dom': '^
|
|
162
|
+
'prism-react-renderer': '^2.3.0',
|
|
163
|
+
react: '^19.0.0',
|
|
164
|
+
'react-dom': '^19.0.0'
|
|
169
165
|
},
|
|
170
166
|
devDependencies: {
|
|
171
|
-
'@docusaurus/module-type-aliases': '^3.
|
|
172
|
-
'@docusaurus/types': '^3.
|
|
167
|
+
'@docusaurus/module-type-aliases': '^3.9.0',
|
|
168
|
+
'@docusaurus/types': '^3.9.0'
|
|
173
169
|
},
|
|
174
170
|
engines: {
|
|
175
|
-
node: '>=
|
|
171
|
+
node: '>=20.0'
|
|
176
172
|
}
|
|
177
173
|
}, null, 2);
|
|
178
174
|
}
|
|
@@ -284,7 +280,7 @@ import clsx from 'clsx';
|
|
|
284
280
|
import Link from '@docusaurus/Link';
|
|
285
281
|
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
|
|
286
282
|
import Layout from '@theme/Layout';
|
|
287
|
-
import styles from './index.module.css
|
|
283
|
+
import styles from './index.module.css';
|
|
288
284
|
|
|
289
285
|
function HomepageHeader() {
|
|
290
286
|
const {siteConfig} = useDocusaurusContext();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-generator.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/config-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAG/C;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAwB;IAC/D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC;IAE7E,OAAO;;;gBAGO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;;;;;;YAM5B,KAAK;cACH,OAAO;;;;UAIX,GAAG;cACC,OAAO;;;;;;;;;;;;;;;;;;;;;;;mBAuBF,QAAQ;;;;;;;;;;;;;;;;;;;;;;;kBAuBT,KAAK;;kBAEL,KAAK
|
|
1
|
+
{"version":3,"file":"config-generator.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/config-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docusaurus-setup.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAE,YAAY,EAAoB,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3E;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"docusaurus-setup.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAE,YAAY,EAAoB,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3E;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA2F1E;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BnE;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GACtE,OAAO,CAAC,aAAa,CAAC,CAwBxB;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqCxE;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGzE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import * as path from 'path';
|
|
6
6
|
import * as fs from '../../utils/fs-native.js';
|
|
7
7
|
import { checkNodeVersion, installDocusaurus, isDocusaurusInstalled } from './package-installer.js';
|
|
8
|
-
import { buildSidebar,
|
|
8
|
+
import { buildSidebar, countDocuments, countCategories } from './sidebar-builder.js';
|
|
9
9
|
import { writeDocusaurusConfig, writePackageJSON, writeCustomCSS, writeIndexPage, writeIndexModuleCSS } from './config-generator.js';
|
|
10
10
|
import { startDevServer, findAvailablePort } from './server-manager.js';
|
|
11
11
|
/**
|
|
@@ -43,20 +43,39 @@ export async function setupDocusaurus(options) {
|
|
|
43
43
|
console.log('5. Generating docusaurus.config.js...');
|
|
44
44
|
await writeDocusaurusConfig(targetDir, config);
|
|
45
45
|
console.log(' ✅ Configuration generated\n');
|
|
46
|
-
// Step 7:
|
|
46
|
+
// Step 7: Count docs for info display (but use autogenerated sidebar)
|
|
47
47
|
console.log('6. Scanning documentation folders...');
|
|
48
48
|
const sidebar = await buildSidebar({
|
|
49
49
|
docsPath,
|
|
50
|
-
excludeFolders: config.excludeFolders || ['legacy', 'node_modules'],
|
|
50
|
+
excludeFolders: config.excludeFolders || ['legacy', 'node_modules', '_archive'],
|
|
51
51
|
maxDepth: 5
|
|
52
52
|
});
|
|
53
53
|
const docCount = countDocuments(sidebar);
|
|
54
54
|
const catCount = countCategories(sidebar);
|
|
55
55
|
console.log(` ✅ Found ${docCount} documents in ${catCount} categories\n`);
|
|
56
|
-
// Step 8: Write sidebar
|
|
56
|
+
// Step 8: Write autogenerated sidebar (Docusaurus handles all edge cases)
|
|
57
57
|
console.log('7. Generating sidebars.js...');
|
|
58
58
|
const sidebarPath = path.join(targetDir, 'sidebars.js');
|
|
59
|
-
|
|
59
|
+
// Use Docusaurus autogenerated sidebar - much more reliable for large doc sets
|
|
60
|
+
const autogeneratedSidebar = `/**
|
|
61
|
+
* Auto-generated sidebar for SpecWeave documentation
|
|
62
|
+
* Generated: ${new Date().toISOString()}
|
|
63
|
+
* Uses Docusaurus autogenerated sidebar for reliability with large doc sets
|
|
64
|
+
*/
|
|
65
|
+
|
|
66
|
+
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
|
|
67
|
+
const sidebars = {
|
|
68
|
+
docs: [
|
|
69
|
+
{
|
|
70
|
+
type: 'autogenerated',
|
|
71
|
+
dirName: '.',
|
|
72
|
+
},
|
|
73
|
+
],
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
module.exports = sidebars;
|
|
77
|
+
`;
|
|
78
|
+
await fs.writeFile(sidebarPath, autogeneratedSidebar, 'utf-8');
|
|
60
79
|
console.log(' ✅ Sidebar generated\n');
|
|
61
80
|
// Step 9: Create landing page
|
|
62
81
|
console.log('8. Creating landing page...');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docusaurus-setup.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpG,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"docusaurus-setup.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,9 @@ export declare function checkNodeVersion(): Promise<NodeVersion>;
|
|
|
13
13
|
export declare function checkNpmInstalled(): Promise<boolean>;
|
|
14
14
|
/**
|
|
15
15
|
* Install npm packages
|
|
16
|
+
*
|
|
17
|
+
* IMPORTANT: Uses public npm registry to bypass private registry configurations.
|
|
18
|
+
* This is critical for user projects that may have Azure DevOps/private registries configured.
|
|
16
19
|
*/
|
|
17
20
|
export declare function installPackages(options: InstallOptions): Promise<void>;
|
|
18
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-installer.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/package-installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqB7D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO1D;AAED
|
|
1
|
+
{"version":3,"file":"package-installer.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/package-installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqB7D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO1D;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAqD5E;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BxE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAyB/E;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAEnD;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAatG;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C"}
|
|
@@ -43,13 +43,21 @@ export async function checkNpmInstalled() {
|
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
45
|
* Install npm packages
|
|
46
|
+
*
|
|
47
|
+
* IMPORTANT: Uses public npm registry to bypass private registry configurations.
|
|
48
|
+
* This is critical for user projects that may have Azure DevOps/private registries configured.
|
|
46
49
|
*/
|
|
47
50
|
export async function installPackages(options) {
|
|
48
51
|
const { targetDir, packages, dev = false } = options;
|
|
49
52
|
// Ensure target directory exists
|
|
50
53
|
await fs.ensureDir(targetDir);
|
|
51
54
|
// Build npm install command
|
|
52
|
-
|
|
55
|
+
// Use public npm registry to avoid authentication issues with private registries
|
|
56
|
+
const args = [
|
|
57
|
+
'install',
|
|
58
|
+
'--registry=https://registry.npmjs.org',
|
|
59
|
+
'--legacy-peer-deps' // Handle React 19 peer dependency issues
|
|
60
|
+
];
|
|
53
61
|
if (dev) {
|
|
54
62
|
args.push('--save-dev');
|
|
55
63
|
}
|
|
@@ -90,19 +98,20 @@ export async function installPackages(options) {
|
|
|
90
98
|
* Install Docusaurus packages
|
|
91
99
|
*/
|
|
92
100
|
export async function installDocusaurus(targetDir) {
|
|
101
|
+
// Use latest stable Docusaurus 3.x versions
|
|
93
102
|
const packages = [
|
|
94
|
-
'@docusaurus/core@^3.
|
|
95
|
-
'@docusaurus/preset-classic@^3.
|
|
96
|
-
'@docusaurus/theme-mermaid@^3.
|
|
103
|
+
'@docusaurus/core@^3.9.0',
|
|
104
|
+
'@docusaurus/preset-classic@^3.9.0',
|
|
105
|
+
'@docusaurus/theme-mermaid@^3.9.0',
|
|
97
106
|
'@mdx-js/react@^3.0.0',
|
|
98
107
|
'clsx@^2.0.0',
|
|
99
|
-
'prism-react-renderer@^2.
|
|
100
|
-
'react@^
|
|
101
|
-
'react-dom@^
|
|
108
|
+
'prism-react-renderer@^2.3.0',
|
|
109
|
+
'react@^19.0.0',
|
|
110
|
+
'react-dom@^19.0.0'
|
|
102
111
|
];
|
|
103
112
|
const devPackages = [
|
|
104
|
-
'@docusaurus/module-type-aliases@^3.
|
|
105
|
-
'@docusaurus/types@^3.
|
|
113
|
+
'@docusaurus/module-type-aliases@^3.9.0',
|
|
114
|
+
'@docusaurus/types@^3.9.0'
|
|
106
115
|
];
|
|
107
116
|
console.log(' Installing Docusaurus packages...');
|
|
108
117
|
await installPackages({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-installer.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/package-installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QAE5D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEnE,OAAO;YACL,OAAO,EAAE,aAAa;YACtB,KAAK;YACL,KAAK;YACL,KAAK;YACL,UAAU,EAAE,KAAK,IAAI,EAAE;SACxB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"package-installer.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/package-installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-manager.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/server-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE1D;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,GAAE,MAAa,EAAE,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAQzG;AAsBD;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"server-manager.d.ts","sourceRoot":"","sources":["../../../../src/utils/docs-preview/server-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE1D;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,GAAE,MAAa,EAAE,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAQzG;AAsBD;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAkCtG;AAiFD;;GAEG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO/D;AAED;;GAEG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC,CAwDlE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAExE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAoB,GAAG,MAAM,CAE7E"}
|
|
@@ -49,7 +49,8 @@ export async function startDevServer(targetDir, options) {
|
|
|
49
49
|
});
|
|
50
50
|
const url = `http://${host}:${port}`;
|
|
51
51
|
// Wait for server to be ready
|
|
52
|
-
|
|
52
|
+
// Increased timeout to 120s for large documentation sites (744+ docs)
|
|
53
|
+
await waitForServer(url, 120000); // 120 second timeout
|
|
53
54
|
// Open browser if requested
|
|
54
55
|
if (openBrowser) {
|
|
55
56
|
await openBrowserUrl(url);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-manager.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/server-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,YAAoB,IAAI,EAAE,UAAkB,IAAI;IACtF,KAAK,IAAI,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QACnD,IAAI,MAAM,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,SAAS,IAAI,OAAO,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;QAElC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB,EAAE,OAAsB;IAC5E,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;IAE1D,6BAA6B;IAC7B,IAAI,CAAC,MAAM,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,oBAAoB,CAAC,CAAC;IACpD,CAAC;IAED,8BAA8B;IAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE;QAC9F,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;QACjC,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC;IAErC,8BAA8B;IAC9B,MAAM,aAAa,CAAC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"server-manager.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/server-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,14 @@
|
|
|
2
2
|
* Project ID Auto-Detection Utilities
|
|
3
3
|
*
|
|
4
4
|
* Detects project ID from (priority order):
|
|
5
|
-
* 1.
|
|
6
|
-
* 2.
|
|
7
|
-
* 3.
|
|
8
|
-
* 4.
|
|
9
|
-
*
|
|
5
|
+
* 1. sync.activeProfile (for multi-profile monorepos)
|
|
6
|
+
* 2. Git remote (GitHub repo name)
|
|
7
|
+
* 3. Sync configuration (JIRA project key, ADO project name)
|
|
8
|
+
* 4. User prompt (fallback)
|
|
9
|
+
*
|
|
10
|
+
* NOTE (v0.33.0): multiProject.activeProject has been REMOVED!
|
|
11
|
+
* Per-US project targeting replaces global activeProject.
|
|
12
|
+
* See: 0125-cross-project-user-story-targeting
|
|
10
13
|
*
|
|
11
14
|
* Also provides repo name parsing for domain context understanding.
|
|
12
15
|
*/
|
|
@@ -44,10 +47,11 @@ export declare function parseRepoName(repoName: string): ParsedRepoName;
|
|
|
44
47
|
/**
|
|
45
48
|
* Detect active project ID from configuration
|
|
46
49
|
*
|
|
50
|
+
* NOTE (v0.33.0): multiProject.activeProject has been REMOVED!
|
|
51
|
+
* This function now only uses sync.activeProfile for legacy umbrella repos.
|
|
52
|
+
*
|
|
47
53
|
* Priority:
|
|
48
|
-
* 1.
|
|
49
|
-
* 2. sync.activeProfile - ONLY for umbrella repos where profile maps to folder
|
|
50
|
-
* (skipped if profile name differs from multiProject.activeProject)
|
|
54
|
+
* 1. sync.activeProfile - for umbrella repos where profile maps to folder
|
|
51
55
|
*
|
|
52
56
|
* @param projectRoot - Project root directory
|
|
53
57
|
* @returns Active project ID or null if not configured
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-detection.d.ts","sourceRoot":"","sources":["../../../src/utils/project-detection.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"project-detection.d.ts","sourceRoot":"","sources":["../../../src/utils/project-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAmBD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAyC9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA8CxE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkCzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsD1E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;CACb,GACL,MAAM,CAgCR;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC1B,GACL,OAAO,CAAC,MAAM,CAAC,CA+CjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAkB3D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAkBlE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,YAAY,EAAE,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;IACxE,oEAAoE;IACpE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,2DAA2D;IAC3D,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,+CAA+C;IAC/C,aAAa,EAAE;QACb,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,IAAI,CAAC;CACV;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAqErE"}
|
|
@@ -2,11 +2,14 @@
|
|
|
2
2
|
* Project ID Auto-Detection Utilities
|
|
3
3
|
*
|
|
4
4
|
* Detects project ID from (priority order):
|
|
5
|
-
* 1.
|
|
6
|
-
* 2.
|
|
7
|
-
* 3.
|
|
8
|
-
* 4.
|
|
9
|
-
*
|
|
5
|
+
* 1. sync.activeProfile (for multi-profile monorepos)
|
|
6
|
+
* 2. Git remote (GitHub repo name)
|
|
7
|
+
* 3. Sync configuration (JIRA project key, ADO project name)
|
|
8
|
+
* 4. User prompt (fallback)
|
|
9
|
+
*
|
|
10
|
+
* NOTE (v0.33.0): multiProject.activeProject has been REMOVED!
|
|
11
|
+
* Per-US project targeting replaces global activeProject.
|
|
12
|
+
* See: 0125-cross-project-user-story-targeting
|
|
10
13
|
*
|
|
11
14
|
* Also provides repo name parsing for domain context understanding.
|
|
12
15
|
*/
|
|
@@ -79,10 +82,11 @@ export function parseRepoName(repoName) {
|
|
|
79
82
|
/**
|
|
80
83
|
* Detect active project ID from configuration
|
|
81
84
|
*
|
|
85
|
+
* NOTE (v0.33.0): multiProject.activeProject has been REMOVED!
|
|
86
|
+
* This function now only uses sync.activeProfile for legacy umbrella repos.
|
|
87
|
+
*
|
|
82
88
|
* Priority:
|
|
83
|
-
* 1.
|
|
84
|
-
* 2. sync.activeProfile - ONLY for umbrella repos where profile maps to folder
|
|
85
|
-
* (skipped if profile name differs from multiProject.activeProject)
|
|
89
|
+
* 1. sync.activeProfile - for umbrella repos where profile maps to folder
|
|
86
90
|
*
|
|
87
91
|
* @param projectRoot - Project root directory
|
|
88
92
|
* @returns Active project ID or null if not configured
|
|
@@ -91,20 +95,10 @@ export function detectActiveProfileId(projectRoot) {
|
|
|
91
95
|
try {
|
|
92
96
|
const configManager = new ConfigManager(projectRoot);
|
|
93
97
|
const config = configManager.load();
|
|
94
|
-
//
|
|
95
|
-
if (config.multiProject?.activeProject && config.multiProject.activeProject !== 'default') {
|
|
96
|
-
return config.multiProject.activeProject.toLowerCase();
|
|
97
|
-
}
|
|
98
|
-
// Priority 2: sync.activeProfile ONLY for umbrella repos
|
|
98
|
+
// sync.activeProfile for umbrella repos
|
|
99
99
|
// where profile IS a folder (like "be", "fe", "shared")
|
|
100
|
-
// Skip if multiProject is configured (activeProfile is just a sync config name)
|
|
101
100
|
if (config.sync?.activeProfile && config.sync?.profiles) {
|
|
102
101
|
const activeProfileId = config.sync.activeProfile;
|
|
103
|
-
// If multiProject is enabled, sync.activeProfile is just a connection name
|
|
104
|
-
// NOT a project folder - skip it
|
|
105
|
-
if (config.multiProject?.enabled) {
|
|
106
|
-
return null;
|
|
107
|
-
}
|
|
108
102
|
// CRITICAL FIX (2025-11-30): Provider-prefixed profile IDs are NOT folder names
|
|
109
103
|
// ProfileIds like "ado-myproject", "jira-webapp" are sync connection identifiers
|
|
110
104
|
// NOT project folders! The actual folder name comes from profile.config.project
|