specweave 0.32.9 → 0.33.2
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 +106 -1
- package/dist/src/cli/add-child-pid.d.ts +11 -0
- package/dist/src/cli/add-child-pid.d.ts.map +1 -0
- package/dist/src/cli/add-child-pid.js +42 -0
- package/dist/src/cli/add-child-pid.js.map +1 -0
- package/dist/src/cli/add-child-process.d.ts +15 -0
- package/dist/src/cli/add-child-process.d.ts.map +1 -0
- package/dist/src/cli/add-child-process.js +40 -0
- package/dist/src/cli/add-child-process.js.map +1 -0
- package/dist/src/cli/check-watchdog.d.ts +15 -0
- package/dist/src/cli/check-watchdog.d.ts.map +1 -0
- package/dist/src/cli/check-watchdog.js +47 -0
- package/dist/src/cli/check-watchdog.js.map +1 -0
- package/dist/src/cli/cleanup-zombies.d.ts +14 -0
- package/dist/src/cli/cleanup-zombies.d.ts.map +1 -0
- package/dist/src/cli/cleanup-zombies.js +268 -0
- package/dist/src/cli/cleanup-zombies.js.map +1 -0
- package/dist/src/cli/commands/jobs.js +9 -2
- package/dist/src/cli/commands/jobs.js.map +1 -1
- package/dist/src/cli/find-session-by-pid.d.ts +14 -0
- package/dist/src/cli/find-session-by-pid.d.ts.map +1 -0
- package/dist/src/cli/find-session-by-pid.js +45 -0
- package/dist/src/cli/find-session-by-pid.js.map +1 -0
- package/dist/src/cli/get-stale-sessions.d.ts +17 -0
- package/dist/src/cli/get-stale-sessions.d.ts.map +1 -0
- package/dist/src/cli/get-stale-sessions.js +36 -0
- package/dist/src/cli/get-stale-sessions.js.map +1 -0
- package/dist/src/cli/register-session.d.ts +16 -0
- package/dist/src/cli/register-session.d.ts.map +1 -0
- package/dist/src/cli/register-session.js +48 -0
- package/dist/src/cli/register-session.js.map +1 -0
- package/dist/src/cli/remove-session.d.ts +11 -0
- package/dist/src/cli/remove-session.d.ts.map +1 -0
- package/dist/src/cli/remove-session.js +36 -0
- package/dist/src/cli/remove-session.js.map +1 -0
- package/dist/src/cli/update-heartbeat.d.ts +11 -0
- package/dist/src/cli/update-heartbeat.d.ts.map +1 -0
- package/dist/src/cli/update-heartbeat.js +36 -0
- package/dist/src/cli/update-heartbeat.js.map +1 -0
- package/dist/src/cli/workers/living-docs-worker.js +6 -0
- package/dist/src/cli/workers/living-docs-worker.js.map +1 -1
- package/dist/src/config/types.d.ts +1208 -203
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/core/background/job-launcher.d.ts.map +1 -1
- package/dist/src/core/background/job-launcher.js +7 -4
- package/dist/src/core/background/job-launcher.js.map +1 -1
- package/dist/src/core/background/job-manager.d.ts +25 -0
- package/dist/src/core/background/job-manager.d.ts.map +1 -1
- package/dist/src/core/background/job-manager.js +136 -15
- package/dist/src/core/background/job-manager.js.map +1 -1
- package/dist/src/core/increment/increment-utils.d.ts +26 -1
- package/dist/src/core/increment/increment-utils.d.ts.map +1 -1
- package/dist/src/core/increment/increment-utils.js +66 -4
- package/dist/src/core/increment/increment-utils.js.map +1 -1
- package/dist/src/core/increment/status-change-sync-trigger.d.ts +3 -1
- package/dist/src/core/increment/status-change-sync-trigger.d.ts.map +1 -1
- package/dist/src/core/increment/status-change-sync-trigger.js +5 -2
- package/dist/src/core/increment/status-change-sync-trigger.js.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/architecture-generator.d.ts.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/architecture-generator.js +48 -12
- package/dist/src/core/living-docs/intelligent-analyzer/architecture-generator.js.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/cache-manager.d.ts +70 -0
- package/dist/src/core/living-docs/intelligent-analyzer/cache-manager.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/cache-manager.js +188 -0
- package/dist/src/core/living-docs/intelligent-analyzer/cache-manager.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/dashboard-generator.d.ts +33 -0
- package/dist/src/core/living-docs/intelligent-analyzer/dashboard-generator.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/dashboard-generator.js +290 -0
- package/dist/src/core/living-docs/intelligent-analyzer/dashboard-generator.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/deep-repo-analyzer.d.ts.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/deep-repo-analyzer.js +114 -11
- package/dist/src/core/living-docs/intelligent-analyzer/deep-repo-analyzer.js.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/graph-visualizer.d.ts +23 -0
- package/dist/src/core/living-docs/intelligent-analyzer/graph-visualizer.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/graph-visualizer.js +283 -0
- package/dist/src/core/living-docs/intelligent-analyzer/graph-visualizer.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/mermaid-generator.d.ts +44 -0
- package/dist/src/core/living-docs/intelligent-analyzer/mermaid-generator.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/mermaid-generator.js +61 -0
- package/dist/src/core/living-docs/intelligent-analyzer/mermaid-generator.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/orchestrator.d.ts +126 -0
- package/dist/src/core/living-docs/intelligent-analyzer/orchestrator.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/orchestrator.js +378 -0
- package/dist/src/core/living-docs/intelligent-analyzer/orchestrator.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/organization-synthesizer.d.ts.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/organization-synthesizer.js +57 -0
- package/dist/src/core/living-docs/intelligent-analyzer/organization-synthesizer.js.map +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/pattern-analyzer.d.ts +82 -0
- package/dist/src/core/living-docs/intelligent-analyzer/pattern-analyzer.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/pattern-analyzer.js +430 -0
- package/dist/src/core/living-docs/intelligent-analyzer/pattern-analyzer.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/repo-scanner.d.ts +84 -0
- package/dist/src/core/living-docs/intelligent-analyzer/repo-scanner.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/repo-scanner.js +387 -0
- package/dist/src/core/living-docs/intelligent-analyzer/repo-scanner.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/report-writer.d.ts +61 -0
- package/dist/src/core/living-docs/intelligent-analyzer/report-writer.d.ts.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/report-writer.js +174 -0
- package/dist/src/core/living-docs/intelligent-analyzer/report-writer.js.map +1 -0
- package/dist/src/core/living-docs/intelligent-analyzer/types.d.ts +1 -1
- package/dist/src/core/living-docs/intelligent-analyzer/types.d.ts.map +1 -1
- package/dist/src/core/living-docs/module-analyzer.d.ts +3 -0
- package/dist/src/core/living-docs/module-analyzer.d.ts.map +1 -1
- package/dist/src/core/living-docs/module-analyzer.js +40 -1
- package/dist/src/core/living-docs/module-analyzer.js.map +1 -1
- package/dist/src/core/qa/qa-runner.js +1 -1
- package/dist/src/core/qa/qa-runner.js.map +1 -1
- package/dist/src/core/scheduler/session-sync-executor.js +1 -1
- package/dist/src/core/scheduler/session-sync-executor.js.map +1 -1
- package/dist/src/core/status-line/status-line-updater.d.ts +1 -1
- package/dist/src/core/status-line/status-line-updater.d.ts.map +1 -1
- package/dist/src/core/status-line/status-line-updater.js +4 -3
- package/dist/src/core/status-line/status-line-updater.js.map +1 -1
- package/dist/src/importers/jira-importer.d.ts.map +1 -1
- package/dist/src/importers/jira-importer.js +26 -10
- package/dist/src/importers/jira-importer.js.map +1 -1
- package/dist/src/init/architecture/types.d.ts +140 -33
- package/dist/src/init/architecture/types.d.ts.map +1 -1
- package/dist/src/init/compliance/types.d.ts +27 -30
- package/dist/src/init/compliance/types.d.ts.map +1 -1
- package/dist/src/init/repo/types.d.ts +34 -11
- package/dist/src/init/repo/types.d.ts.map +1 -1
- package/dist/src/init/research/src/config/types.d.ts +82 -15
- package/dist/src/init/research/src/config/types.d.ts.map +1 -1
- package/dist/src/init/research/types.d.ts +93 -38
- package/dist/src/init/research/types.d.ts.map +1 -1
- package/dist/src/init/team/types.d.ts +42 -4
- package/dist/src/init/team/types.d.ts.map +1 -1
- package/dist/src/sync/ado-reconciler.js +1 -1
- package/dist/src/sync/ado-reconciler.js.map +1 -1
- package/dist/src/sync/github-reconciler.js +1 -1
- package/dist/src/sync/github-reconciler.js.map +1 -1
- package/dist/src/sync/jira-reconciler.js +1 -1
- package/dist/src/sync/jira-reconciler.js.map +1 -1
- package/dist/src/types/session.d.ts +65 -0
- package/dist/src/types/session.d.ts.map +1 -0
- package/dist/src/types/session.js +8 -0
- package/dist/src/types/session.js.map +1 -0
- package/dist/src/utils/lock-manager.d.ts +48 -0
- package/dist/src/utils/lock-manager.d.ts.map +1 -0
- package/dist/src/utils/lock-manager.js +195 -0
- package/dist/src/utils/lock-manager.js.map +1 -0
- package/dist/src/utils/notification-manager.d.ts +45 -0
- package/dist/src/utils/notification-manager.d.ts.map +1 -0
- package/dist/src/utils/notification-manager.js +130 -0
- package/dist/src/utils/notification-manager.js.map +1 -0
- package/dist/src/utils/platform-utils.d.ts +136 -0
- package/dist/src/utils/platform-utils.d.ts.map +1 -0
- package/dist/src/utils/platform-utils.js +366 -0
- package/dist/src/utils/platform-utils.js.map +1 -0
- package/dist/src/utils/session-registry.d.ts +142 -0
- package/dist/src/utils/session-registry.d.ts.map +1 -0
- package/dist/src/utils/session-registry.js +480 -0
- package/dist/src/utils/session-registry.js.map +1 -0
- package/package.json +5 -2
- package/plugins/specweave/commands/specweave-living-docs.md +42 -0
- package/plugins/specweave/hooks/hooks.json +10 -0
- package/plugins/specweave/hooks/lib/update-active-increment.sh +2 -2
- package/plugins/specweave/hooks/lib/update-status-line.sh +1 -1
- package/plugins/specweave/hooks/post-increment-status-change.sh +3 -3
- package/plugins/specweave/hooks/post-metadata-change.sh +1 -1
- package/plugins/specweave/hooks/universal/hook-wrapper.cmd +26 -26
- package/plugins/specweave/hooks/universal/session-start.cmd +16 -16
- package/plugins/specweave/hooks/universal/session-start.ps1 +16 -16
- package/plugins/specweave/hooks/user-prompt-submit.sh +2 -2
- package/plugins/specweave/hooks/v2/guards/increment-root-guard.sh +61 -0
- package/plugins/specweave/hooks/v2/session-end.sh +69 -0
- package/plugins/specweave/hooks/v2/session-start.sh +81 -0
- package/plugins/specweave/lib/vendor/sync/github-reconciler.js +1 -1
- package/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
- package/plugins/specweave/scripts/heartbeat.sh +110 -0
- package/plugins/specweave/scripts/progress.js +34 -4
- package/plugins/specweave/scripts/read-jobs.sh +1 -1
- package/plugins/specweave/scripts/read-progress.sh +50 -5
- package/plugins/specweave/scripts/read-workflow.sh +1 -1
- package/plugins/specweave/scripts/session-watchdog.sh +65 -0
- package/plugins/specweave/scripts/status.js +28 -11
- package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +738 -0
- package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +1107 -0
|
@@ -111,7 +111,8 @@ export class StatusChangeSyncTrigger {
|
|
|
111
111
|
*
|
|
112
112
|
* SYNC-WORTHY TRANSITIONS:
|
|
113
113
|
* - planning → active (work started)
|
|
114
|
-
* - active → completed (work finished)
|
|
114
|
+
* - active → completed (work finished - legacy direct completion)
|
|
115
|
+
* - ready_for_review → completed (work approved - v0.28.63+ user confirmation)
|
|
115
116
|
* - completed → active (work reopened)
|
|
116
117
|
* - backlog → active (backlog item started)
|
|
117
118
|
* - paused → active (work resumed)
|
|
@@ -119,6 +120,7 @@ export class StatusChangeSyncTrigger {
|
|
|
119
120
|
* NOT SYNC-WORTHY:
|
|
120
121
|
* - active → paused (temporary pause)
|
|
121
122
|
* - active → backlog (deprioritized)
|
|
123
|
+
* - active → ready_for_review (internal state - sync when actually completed)
|
|
122
124
|
* - Any → abandoned (cancelled)
|
|
123
125
|
*
|
|
124
126
|
* @param oldStatus - Previous status
|
|
@@ -129,7 +131,8 @@ export class StatusChangeSyncTrigger {
|
|
|
129
131
|
const transition = `${oldStatus} → ${newStatus}`;
|
|
130
132
|
const SYNC_WORTHY = [
|
|
131
133
|
'planning → active', // Work started
|
|
132
|
-
'active → completed', // Work finished
|
|
134
|
+
'active → completed', // Work finished (legacy direct completion)
|
|
135
|
+
'ready_for_review → completed', // Work approved (v0.28.63+ user confirmation)
|
|
133
136
|
'completed → active', // Work reopened
|
|
134
137
|
'backlog → active', // Backlog item started
|
|
135
138
|
'paused → active' // Work resumed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-change-sync-trigger.js","sourceRoot":"","sources":["../../../../src/core/increment/status-change-sync-trigger.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"status-change-sync-trigger.js","sourceRoot":"","sources":["../../../../src/core/increment/status-change-sync-trigger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"architecture-generator.d.ts","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/architecture-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,YAAY,EAEZ,WAAW,EAEX,WAAW,EACX,gBAAgB,EACjB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAEjF,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACvC;AAED,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACvC,SAAS,EAAE,2BAA2B,EACtC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,UAAU,EAAE,gBAAgB,EAC5B,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GACzB,OAAO,CAAC,kBAAkB,CAAC,CA+B7B;
|
|
1
|
+
{"version":3,"file":"architecture-generator.d.ts","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/architecture-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,YAAY,EAEZ,WAAW,EAEX,WAAW,EACX,gBAAgB,EACjB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAEjF,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACvC;AAED,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACvC,SAAS,EAAE,2BAA2B,EACtC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,UAAU,EAAE,gBAAgB,EAC5B,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GACzB,OAAO,CAAC,kBAAkB,CAAC,CA+B7B;AA8RD,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,MAAM,EAAE,CAAC,CA0EnB"}
|
|
@@ -150,45 +150,81 @@ function toKebabCase(title) {
|
|
|
150
150
|
}
|
|
151
151
|
async function detectArchitecturalDecisions(analyses, llmProvider, log) {
|
|
152
152
|
const patternMap = new Map();
|
|
153
|
+
// Collect all patterns with confidence tracking
|
|
153
154
|
for (const [name, analysis] of analyses) {
|
|
154
155
|
for (const p of analysis.patternsUsed) {
|
|
155
156
|
if (!patternMap.has(p.pattern)) {
|
|
156
|
-
patternMap.set(p.pattern, { repos: [], evidence: [] });
|
|
157
|
+
patternMap.set(p.pattern, { repos: [], evidence: [], highConfidenceCount: 0 });
|
|
157
158
|
}
|
|
158
159
|
const entry = patternMap.get(p.pattern);
|
|
159
160
|
entry.repos.push(name);
|
|
160
161
|
entry.evidence.push(...p.evidence);
|
|
162
|
+
if (p.confidence === 'high') {
|
|
163
|
+
entry.highConfidenceCount++;
|
|
164
|
+
}
|
|
161
165
|
}
|
|
162
166
|
}
|
|
163
167
|
const adrs = [];
|
|
164
168
|
let adrNum = 1;
|
|
165
|
-
|
|
166
|
-
|
|
169
|
+
// Sort patterns by adoption (repos count DESC) for better ADR numbering
|
|
170
|
+
const sortedPatterns = Array.from(patternMap.entries())
|
|
171
|
+
.sort((a, b) => b[1].repos.length - a[1].repos.length);
|
|
172
|
+
for (const [pattern, data] of sortedPatterns) {
|
|
173
|
+
// Generate ADR if:
|
|
174
|
+
// 1. Found in 2+ repos (standard adoption), OR
|
|
175
|
+
// 2. Found in 1 repo with HIGH confidence (clear architectural decision)
|
|
176
|
+
// Skip trivial single-repo low-confidence patterns
|
|
177
|
+
const shouldGenerateADR = data.repos.length >= 2 ||
|
|
178
|
+
(data.repos.length === 1 && data.highConfidenceCount > 0);
|
|
179
|
+
if (shouldGenerateADR) {
|
|
167
180
|
// Derive semantic title using LLM
|
|
168
181
|
const semanticTitle = await deriveADRTitle(pattern, data.evidence, llmProvider);
|
|
169
182
|
const kebabTitle = toKebabCase(semanticTitle);
|
|
183
|
+
// Determine confidence based on adoption breadth
|
|
184
|
+
let confidence;
|
|
185
|
+
if (data.repos.length >= 5 && data.highConfidenceCount >= 3) {
|
|
186
|
+
confidence = 'high';
|
|
187
|
+
}
|
|
188
|
+
else if (data.repos.length >= 2) {
|
|
189
|
+
confidence = 'medium';
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
confidence = 'low'; // Single repo with high confidence
|
|
193
|
+
}
|
|
194
|
+
// Craft context based on adoption
|
|
195
|
+
const context = data.repos.length >= 2
|
|
196
|
+
? `Found ${pattern} pattern in ${data.repos.length} repositories.`
|
|
197
|
+
: `Found ${pattern} pattern with high confidence in ${data.repos[0]}.`;
|
|
170
198
|
adrs.push({
|
|
171
199
|
id: `${String(adrNum).padStart(4, '0')}-${kebabTitle}`,
|
|
172
200
|
title: semanticTitle,
|
|
173
201
|
pattern,
|
|
174
202
|
status: 'Detected',
|
|
175
|
-
context
|
|
176
|
-
decision:
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
203
|
+
context,
|
|
204
|
+
decision: data.repos.length >= 2
|
|
205
|
+
? `The team has adopted ${pattern} as a standard approach.`
|
|
206
|
+
: `${pattern} was chosen for ${data.repos[0]} implementation.`,
|
|
207
|
+
consequences: data.repos.length >= 2
|
|
208
|
+
? [
|
|
209
|
+
`Consistent ${pattern} implementation across services`,
|
|
210
|
+
'Team familiarity with the pattern',
|
|
211
|
+
`Standardization benefits for ${data.repos.length} repositories`,
|
|
212
|
+
]
|
|
213
|
+
: [
|
|
214
|
+
`${pattern} enables specific architectural requirements`,
|
|
215
|
+
'Pattern establishes precedent for similar use cases',
|
|
216
|
+
],
|
|
181
217
|
evidence: [{
|
|
182
218
|
repo: data.repos.join(', '),
|
|
183
219
|
files: [],
|
|
184
|
-
description: data.evidence.slice(0,
|
|
220
|
+
description: data.evidence.slice(0, 5).join('; '),
|
|
185
221
|
}],
|
|
186
|
-
confidence
|
|
222
|
+
confidence,
|
|
187
223
|
});
|
|
188
224
|
adrNum++;
|
|
189
225
|
}
|
|
190
226
|
}
|
|
191
|
-
log(` Detected ${adrs.length} architectural decisions`);
|
|
227
|
+
log(` Detected ${adrs.length} architectural decisions from ${patternMap.size} total patterns`);
|
|
192
228
|
return adrs;
|
|
193
229
|
}
|
|
194
230
|
function createBasicArchitecture(analyses, org) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"architecture-generator.js","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/architecture-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"architecture-generator.js","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/architecture-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages caching of analysis results with Git-based invalidation and TTL.
|
|
5
|
+
*/
|
|
6
|
+
import { Logger } from '../../../utils/logger.js';
|
|
7
|
+
export interface CacheOptions {
|
|
8
|
+
ttlHours?: number;
|
|
9
|
+
projectRoot: string;
|
|
10
|
+
logger?: Logger;
|
|
11
|
+
}
|
|
12
|
+
export interface CacheMetadata {
|
|
13
|
+
key: string;
|
|
14
|
+
timestamp: string;
|
|
15
|
+
commit: string;
|
|
16
|
+
expiresAt: string;
|
|
17
|
+
size: number;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Cache manager with Git-based invalidation and TTL.
|
|
21
|
+
*/
|
|
22
|
+
export declare class CacheManager {
|
|
23
|
+
private cacheDir;
|
|
24
|
+
private ttlHours;
|
|
25
|
+
private projectRoot;
|
|
26
|
+
private logger;
|
|
27
|
+
constructor(options: CacheOptions);
|
|
28
|
+
/**
|
|
29
|
+
* Load data from cache.
|
|
30
|
+
* Returns null if cache miss, expired, or invalid.
|
|
31
|
+
*/
|
|
32
|
+
load<T>(key: string): Promise<T | null>;
|
|
33
|
+
/**
|
|
34
|
+
* Save data to cache with metadata.
|
|
35
|
+
*/
|
|
36
|
+
save(key: string, data: any): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Invalidate (delete) cache entry.
|
|
39
|
+
*/
|
|
40
|
+
invalidate(key: string): void;
|
|
41
|
+
/**
|
|
42
|
+
* Clear all cache entries.
|
|
43
|
+
*/
|
|
44
|
+
clearAll(): void;
|
|
45
|
+
/**
|
|
46
|
+
* Get cache statistics.
|
|
47
|
+
*/
|
|
48
|
+
getStats(): {
|
|
49
|
+
totalEntries: number;
|
|
50
|
+
totalSize: number;
|
|
51
|
+
oldestEntry: string | null;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Get current Git commit hash.
|
|
55
|
+
*/
|
|
56
|
+
private getCurrentCommit;
|
|
57
|
+
/**
|
|
58
|
+
* Get cache file path.
|
|
59
|
+
*/
|
|
60
|
+
private getCachePath;
|
|
61
|
+
/**
|
|
62
|
+
* Get metadata file path.
|
|
63
|
+
*/
|
|
64
|
+
private getMetadataPath;
|
|
65
|
+
/**
|
|
66
|
+
* Format bytes to human-readable string.
|
|
67
|
+
*/
|
|
68
|
+
private formatBytes;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=cache-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-manager.d.ts","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/cache-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,MAAM,EAAiB,MAAM,0BAA0B,CAAC;AAEjE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,EAAE,YAAY;IAUjC;;;OAGG;IACG,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAwC7C;;OAEG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjD;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAiB7B;;OAEG;IACH,QAAQ,IAAI,IAAI;IAahB;;OAEG;IACH,QAAQ,IAAI;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;IAyBnF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;OAEG;IACH,OAAO,CAAC,WAAW;CAKpB"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages caching of analysis results with Git-based invalidation and TTL.
|
|
5
|
+
*/
|
|
6
|
+
import * as fs from 'fs';
|
|
7
|
+
import * as path from 'path';
|
|
8
|
+
import { execSync } from 'child_process';
|
|
9
|
+
import { consoleLogger } from '../../../utils/logger.js';
|
|
10
|
+
/**
|
|
11
|
+
* Cache manager with Git-based invalidation and TTL.
|
|
12
|
+
*/
|
|
13
|
+
export class CacheManager {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
this.projectRoot = options.projectRoot;
|
|
16
|
+
this.cacheDir = path.join(this.projectRoot, '.specweave/cache/analysis');
|
|
17
|
+
this.ttlHours = options.ttlHours ?? 24;
|
|
18
|
+
this.logger = options.logger ?? consoleLogger;
|
|
19
|
+
// Ensure cache directory exists
|
|
20
|
+
fs.mkdirSync(this.cacheDir, { recursive: true });
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Load data from cache.
|
|
24
|
+
* Returns null if cache miss, expired, or invalid.
|
|
25
|
+
*/
|
|
26
|
+
async load(key) {
|
|
27
|
+
const cachePath = this.getCachePath(key);
|
|
28
|
+
const metadataPath = this.getMetadataPath(key);
|
|
29
|
+
// Check if cache file exists
|
|
30
|
+
if (!fs.existsSync(cachePath) || !fs.existsSync(metadataPath)) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
try {
|
|
34
|
+
// Load metadata
|
|
35
|
+
const metadata = JSON.parse(fs.readFileSync(metadataPath, 'utf-8'));
|
|
36
|
+
// Check TTL
|
|
37
|
+
const now = new Date();
|
|
38
|
+
const expiresAt = new Date(metadata.expiresAt);
|
|
39
|
+
if (now > expiresAt) {
|
|
40
|
+
this.logger.debug(`Cache expired: ${key}`);
|
|
41
|
+
this.invalidate(key);
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
// Check Git commit (if available)
|
|
45
|
+
const currentCommit = this.getCurrentCommit();
|
|
46
|
+
if (currentCommit && metadata.commit !== currentCommit) {
|
|
47
|
+
this.logger.debug(`Cache invalid (commit changed): ${key}`);
|
|
48
|
+
this.invalidate(key);
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
// Load cached data
|
|
52
|
+
const content = fs.readFileSync(cachePath, 'utf-8');
|
|
53
|
+
return JSON.parse(content);
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
this.logger.warn(`Failed to load cache ${key}: ${error}`);
|
|
57
|
+
this.invalidate(key);
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Save data to cache with metadata.
|
|
63
|
+
*/
|
|
64
|
+
async save(key, data) {
|
|
65
|
+
const cachePath = this.getCachePath(key);
|
|
66
|
+
const metadataPath = this.getMetadataPath(key);
|
|
67
|
+
try {
|
|
68
|
+
// Serialize data
|
|
69
|
+
const content = JSON.stringify(data, null, 2);
|
|
70
|
+
// Create metadata
|
|
71
|
+
const now = new Date();
|
|
72
|
+
const expiresAt = new Date(now.getTime() + this.ttlHours * 60 * 60 * 1000);
|
|
73
|
+
const metadata = {
|
|
74
|
+
key,
|
|
75
|
+
timestamp: now.toISOString(),
|
|
76
|
+
commit: this.getCurrentCommit() || 'unknown',
|
|
77
|
+
expiresAt: expiresAt.toISOString(),
|
|
78
|
+
size: content.length,
|
|
79
|
+
};
|
|
80
|
+
// Write atomically (temp + rename)
|
|
81
|
+
const tempPath = `${cachePath}.tmp`;
|
|
82
|
+
const tempMetadataPath = `${metadataPath}.tmp`;
|
|
83
|
+
fs.writeFileSync(tempPath, content);
|
|
84
|
+
fs.writeFileSync(tempMetadataPath, JSON.stringify(metadata, null, 2));
|
|
85
|
+
fs.renameSync(tempPath, cachePath);
|
|
86
|
+
fs.renameSync(tempMetadataPath, metadataPath);
|
|
87
|
+
this.logger.debug(`Cache saved: ${key} (${this.formatBytes(metadata.size)})`);
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
this.logger.warn(`Failed to save cache ${key}: ${error}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Invalidate (delete) cache entry.
|
|
95
|
+
*/
|
|
96
|
+
invalidate(key) {
|
|
97
|
+
const cachePath = this.getCachePath(key);
|
|
98
|
+
const metadataPath = this.getMetadataPath(key);
|
|
99
|
+
try {
|
|
100
|
+
if (fs.existsSync(cachePath)) {
|
|
101
|
+
fs.unlinkSync(cachePath);
|
|
102
|
+
}
|
|
103
|
+
if (fs.existsSync(metadataPath)) {
|
|
104
|
+
fs.unlinkSync(metadataPath);
|
|
105
|
+
}
|
|
106
|
+
this.logger.debug(`Cache invalidated: ${key}`);
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
this.logger.warn(`Failed to invalidate cache ${key}: ${error}`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Clear all cache entries.
|
|
114
|
+
*/
|
|
115
|
+
clearAll() {
|
|
116
|
+
try {
|
|
117
|
+
const files = fs.readdirSync(this.cacheDir);
|
|
118
|
+
for (const file of files) {
|
|
119
|
+
const filePath = path.join(this.cacheDir, file);
|
|
120
|
+
fs.unlinkSync(filePath);
|
|
121
|
+
}
|
|
122
|
+
this.logger.info('Cache cleared');
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
this.logger.warn(`Failed to clear cache: ${error}`);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get cache statistics.
|
|
130
|
+
*/
|
|
131
|
+
getStats() {
|
|
132
|
+
const files = fs.readdirSync(this.cacheDir).filter(f => f.endsWith('.json') && !f.endsWith('.meta.json'));
|
|
133
|
+
let totalSize = 0;
|
|
134
|
+
let oldestEntry = null;
|
|
135
|
+
let oldestTime = Infinity;
|
|
136
|
+
for (const file of files) {
|
|
137
|
+
const filePath = path.join(this.cacheDir, file);
|
|
138
|
+
const stats = fs.statSync(filePath);
|
|
139
|
+
totalSize += stats.size;
|
|
140
|
+
if (stats.mtimeMs < oldestTime) {
|
|
141
|
+
oldestTime = stats.mtimeMs;
|
|
142
|
+
oldestEntry = file;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
return {
|
|
146
|
+
totalEntries: files.length,
|
|
147
|
+
totalSize,
|
|
148
|
+
oldestEntry,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Get current Git commit hash.
|
|
153
|
+
*/
|
|
154
|
+
getCurrentCommit() {
|
|
155
|
+
try {
|
|
156
|
+
return execSync('git rev-parse HEAD', {
|
|
157
|
+
cwd: this.projectRoot,
|
|
158
|
+
encoding: 'utf-8',
|
|
159
|
+
}).trim();
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Get cache file path.
|
|
167
|
+
*/
|
|
168
|
+
getCachePath(key) {
|
|
169
|
+
return path.join(this.cacheDir, `${key}.json`);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Get metadata file path.
|
|
173
|
+
*/
|
|
174
|
+
getMetadataPath(key) {
|
|
175
|
+
return path.join(this.cacheDir, `${key}.meta.json`);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Format bytes to human-readable string.
|
|
179
|
+
*/
|
|
180
|
+
formatBytes(bytes) {
|
|
181
|
+
if (bytes < 1024)
|
|
182
|
+
return `${bytes}B`;
|
|
183
|
+
if (bytes < 1024 * 1024)
|
|
184
|
+
return `${(bytes / 1024).toFixed(1)}KB`;
|
|
185
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=cache-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-manager.js","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/cache-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dashboard Generator
|
|
3
|
+
*
|
|
4
|
+
* Creates HTML overview dashboard with project statistics and quick links.
|
|
5
|
+
*/
|
|
6
|
+
export interface DashboardData {
|
|
7
|
+
projectName: string;
|
|
8
|
+
repoCount: number;
|
|
9
|
+
fileCount: number;
|
|
10
|
+
techStack: string[];
|
|
11
|
+
adrs: Array<{
|
|
12
|
+
number: number;
|
|
13
|
+
title: string;
|
|
14
|
+
status: string;
|
|
15
|
+
}>;
|
|
16
|
+
techDebt: {
|
|
17
|
+
p1: number;
|
|
18
|
+
p2: number;
|
|
19
|
+
p3: number;
|
|
20
|
+
};
|
|
21
|
+
moduleCount: number;
|
|
22
|
+
circularDeps: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Generates HTML dashboards for living docs overview.
|
|
26
|
+
*/
|
|
27
|
+
export declare class DashboardGenerator {
|
|
28
|
+
/**
|
|
29
|
+
* Generate overview dashboard HTML.
|
|
30
|
+
*/
|
|
31
|
+
generateDashboard(data: DashboardData): string;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=dashboard-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard-generator.d.ts","sourceRoot":"","sources":["../../../../../src/core/living-docs/intelligent-analyzer/dashboard-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/D,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM;CAqR/C"}
|