specweave 1.0.482 → 1.0.484

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.
Files changed (37) hide show
  1. package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js +33 -4
  2. package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
  3. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +1 -0
  4. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +1 -1
  5. package/dist/plugins/specweave-github/lib/github-client-v2.js +10 -1
  6. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +1 -1
  7. package/dist/src/cli/commands/detect-intent.d.ts +6 -0
  8. package/dist/src/cli/commands/detect-intent.d.ts.map +1 -1
  9. package/dist/src/cli/commands/detect-intent.js +30 -1
  10. package/dist/src/cli/commands/detect-intent.js.map +1 -1
  11. package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -1
  12. package/dist/src/cli/commands/refresh-plugins.js +16 -3
  13. package/dist/src/cli/commands/refresh-plugins.js.map +1 -1
  14. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts +13 -0
  15. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts.map +1 -1
  16. package/dist/src/core/lazy-loading/llm-plugin-detector.js +61 -1
  17. package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
  18. package/dist/src/core/lazy-loading/project-detector.d.ts +2 -0
  19. package/dist/src/core/lazy-loading/project-detector.d.ts.map +1 -1
  20. package/dist/src/core/lazy-loading/project-detector.js +15 -3
  21. package/dist/src/core/lazy-loading/project-detector.js.map +1 -1
  22. package/dist/src/sync/github-reconciler.d.ts.map +1 -1
  23. package/dist/src/sync/github-reconciler.js +33 -4
  24. package/dist/src/sync/github-reconciler.js.map +1 -1
  25. package/dist/src/utils/cleanup-stale-plugins.d.ts.map +1 -1
  26. package/dist/src/utils/cleanup-stale-plugins.js +38 -3
  27. package/dist/src/utils/cleanup-stale-plugins.js.map +1 -1
  28. package/package.json +1 -1
  29. package/plugins/specweave/hooks/user-prompt-submit.sh +148 -9
  30. package/plugins/specweave/lib/vendor/sync/github-reconciler.js +33 -4
  31. package/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
  32. package/plugins/specweave-github/lib/github-client-v2.js +9 -1
  33. package/plugins/specweave-github/lib/github-client-v2.ts +11 -1
  34. package/plugins/specweave-github/lib/github-client-v2.d.js +0 -0
  35. package/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  36. package/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  37. package/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
@@ -20,6 +20,7 @@ export class GitHubClientV2 {
20
20
 
21
21
  // Session cache: avoids redundant API calls for the same issue within 30s
22
22
  private static issueCache = new Map<string, { data: any; fetchedAt: number }>();
23
+ private static searchCache = new Map<string, { data: GitHubIssue[]; fetchedAt: number }>();
23
24
  private static readonly CACHE_TTL_MS = 30_000;
24
25
 
25
26
  /**
@@ -688,6 +689,13 @@ export class GitHubClientV2 {
688
689
  featureId: string,
689
690
  userStoryId?: string
690
691
  ): Promise<GitHubIssue[]> {
692
+ // Check session cache first
693
+ const cacheKey = `${this.fullRepo}#search:${featureId}${userStoryId ? ':' + userStoryId : ''}`;
694
+ const cached = GitHubClientV2.searchCache.get(cacheKey);
695
+ if (cached && Date.now() - cached.fetchedAt < GitHubClientV2.CACHE_TTL_MS) {
696
+ return cached.data;
697
+ }
698
+
691
699
  // Build search pattern
692
700
  // e.g., "[FS-063]" or "[FS-063][US-001]"
693
701
  const pattern = userStoryId
@@ -714,7 +722,9 @@ export class GitHubClientV2 {
714
722
  }
715
723
 
716
724
  try {
717
- return JSON.parse(result.stdout);
725
+ const issues: GitHubIssue[] = JSON.parse(result.stdout);
726
+ GitHubClientV2.searchCache.set(cacheKey, { data: issues, fetchedAt: Date.now() });
727
+ return issues;
718
728
  } catch {
719
729
  return [];
720
730
  }
@@ -1,104 +0,0 @@
1
- /**
2
- * GitHub CLI Wrapper for SpecWeave (Multi-Project Support)
3
- *
4
- * Profile-based GitHub client that supports:
5
- * - Multiple repositories via sync profiles
6
- * - Time range filtering for syncs
7
- * - Rate limiting protection
8
- * - Secure command execution (no shell injection)
9
- */
10
- import { GitHubIssue, GitHubMilestone } from './types';
11
- import { SyncProfile, TimeRangePreset } from '../../../src/core/types/sync-profile';
12
- export declare class GitHubClientV2 {
13
- private owner;
14
- private repo;
15
- private fullRepo;
16
- /**
17
- * Create GitHub client from sync profile
18
- */
19
- constructor(profile: SyncProfile);
20
- /**
21
- * Create client from owner/repo directly
22
- */
23
- static fromRepo(owner: string, repo: string): GitHubClientV2;
24
- /**
25
- * Check if GitHub CLI is installed and authenticated
26
- */
27
- static checkCLI(): Promise<{
28
- installed: boolean;
29
- authenticated: boolean;
30
- error?: string;
31
- }>;
32
- /**
33
- * Auto-detect repository from git remote
34
- */
35
- static detectRepo(cwd?: string): Promise<{
36
- owner: string;
37
- repo: string;
38
- } | null>;
39
- /**
40
- * Create or get existing milestone
41
- */
42
- createOrGetMilestone(title: string, description?: string, daysFromNow?: number): Promise<GitHubMilestone>;
43
- /**
44
- * Get milestone by title
45
- */
46
- private getMilestoneByTitle;
47
- /**
48
- * Create epic issue (increment-level)
49
- */
50
- createEpicIssue(title: string, body: string, milestone?: number | string, labels?: string[]): Promise<GitHubIssue>;
51
- /**
52
- * Create task issue (linked to epic)
53
- */
54
- createTaskIssue(title: string, body: string, epicNumber: number, milestone?: number | string, labels?: string[]): Promise<GitHubIssue>;
55
- /**
56
- * Get issue details
57
- */
58
- getIssue(issueNumber: number): Promise<GitHubIssue>;
59
- /**
60
- * Update issue body
61
- */
62
- updateIssueBody(issueNumber: number, newBody: string): Promise<void>;
63
- /**
64
- * Close issue
65
- */
66
- closeIssue(issueNumber: number, comment?: string): Promise<void>;
67
- /**
68
- * Add comment to issue
69
- */
70
- addComment(issueNumber: number, comment: string): Promise<void>;
71
- /**
72
- * Add labels to issue
73
- */
74
- addLabels(issueNumber: number, labels: string[]): Promise<void>;
75
- /**
76
- * List issues within a time range
77
- */
78
- listIssuesInTimeRange(timeRange: TimeRangePreset, customStart?: string, customEnd?: string): Promise<GitHubIssue[]>;
79
- /**
80
- * Calculate date range from time range preset
81
- */
82
- private calculateTimeRange;
83
- /**
84
- * Check rate limit status
85
- */
86
- checkRateLimit(): Promise<{
87
- remaining: number;
88
- limit: number;
89
- reset: Date;
90
- }>;
91
- /**
92
- * Batch create issues with rate limit handling
93
- */
94
- batchCreateIssues(issues: Array<{
95
- title: string;
96
- body: string;
97
- labels?: string[];
98
- }>, milestone?: number | string, epicNumber?: number, options?: {
99
- batchSize?: number;
100
- delayMs?: number;
101
- }): Promise<GitHubIssue[]>;
102
- private sleep;
103
- }
104
- //# sourceMappingURL=github-client-v2.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client-v2.d.ts","sourceRoot":"","sources":["github-client-v2.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client-v2.js","sourceRoot":"","sources":["github-client-v2.ts"],"names":[],"mappings":"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"}