cortex-tms 4.0.0 → 4.0.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.
Files changed (180) hide show
  1. package/README.md +22 -12
  2. package/dist/cli.js +45 -37
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/archive.d.ts +1 -1
  5. package/dist/commands/archive.d.ts.map +1 -1
  6. package/dist/commands/archive.js +36 -34
  7. package/dist/commands/archive.js.map +1 -1
  8. package/dist/commands/auto-tier.d.ts +1 -1
  9. package/dist/commands/auto-tier.d.ts.map +1 -1
  10. package/dist/commands/auto-tier.js +77 -76
  11. package/dist/commands/auto-tier.js.map +1 -1
  12. package/dist/commands/dashboard.d.ts +1 -1
  13. package/dist/commands/dashboard.js +8 -8
  14. package/dist/commands/init.d.ts +1 -1
  15. package/dist/commands/init.d.ts.map +1 -1
  16. package/dist/commands/init.js +73 -73
  17. package/dist/commands/init.js.map +1 -1
  18. package/dist/commands/migrate.d.ts +2 -2
  19. package/dist/commands/migrate.d.ts.map +1 -1
  20. package/dist/commands/migrate.js +147 -136
  21. package/dist/commands/migrate.js.map +1 -1
  22. package/dist/commands/prompt.d.ts +1 -1
  23. package/dist/commands/prompt.d.ts.map +1 -1
  24. package/dist/commands/prompt.js +32 -31
  25. package/dist/commands/prompt.js.map +1 -1
  26. package/dist/commands/review.d.ts +1 -1
  27. package/dist/commands/review.d.ts.map +1 -1
  28. package/dist/commands/review.js +60 -60
  29. package/dist/commands/review.js.map +1 -1
  30. package/dist/commands/status.d.ts +1 -1
  31. package/dist/commands/status.d.ts.map +1 -1
  32. package/dist/commands/status.js +51 -45
  33. package/dist/commands/status.js.map +1 -1
  34. package/dist/commands/tutorial.d.ts +1 -1
  35. package/dist/commands/tutorial.js +168 -168
  36. package/dist/commands/tutorial.js.map +1 -1
  37. package/dist/commands/validate.d.ts +1 -1
  38. package/dist/commands/validate.d.ts.map +1 -1
  39. package/dist/commands/validate.js +60 -60
  40. package/dist/commands/validate.js.map +1 -1
  41. package/dist/types/cli.d.ts +15 -15
  42. package/dist/types/guardian.d.ts +2 -2
  43. package/dist/ui/components/Dashboard.d.ts +2 -2
  44. package/dist/ui/components/Dashboard.d.ts.map +1 -1
  45. package/dist/ui/components/Dashboard.js +24 -23
  46. package/dist/ui/components/Dashboard.js.map +1 -1
  47. package/dist/ui/components/dashboard/ContextReductionCard.d.ts +1 -1
  48. package/dist/ui/components/dashboard/ContextReductionCard.d.ts.map +1 -1
  49. package/dist/ui/components/dashboard/ContextReductionCard.js +5 -5
  50. package/dist/ui/components/dashboard/ContextReductionCard.js.map +1 -1
  51. package/dist/ui/components/dashboard/CostSavingsCard.d.ts +1 -1
  52. package/dist/ui/components/dashboard/CostSavingsCard.d.ts.map +1 -1
  53. package/dist/ui/components/dashboard/CostSavingsCard.js +7 -7
  54. package/dist/ui/components/dashboard/CostSavingsCard.js.map +1 -1
  55. package/dist/ui/components/dashboard/FileDistributionCard.d.ts +1 -1
  56. package/dist/ui/components/dashboard/FileDistributionCard.d.ts.map +1 -1
  57. package/dist/ui/components/dashboard/FileDistributionCard.js +10 -10
  58. package/dist/ui/components/dashboard/FileDistributionCard.js.map +1 -1
  59. package/dist/ui/components/dashboard/FileSizeHealthCard.d.ts +2 -2
  60. package/dist/ui/components/dashboard/FileSizeHealthCard.d.ts.map +1 -1
  61. package/dist/ui/components/dashboard/FileSizeHealthCard.js +12 -12
  62. package/dist/ui/components/dashboard/FileSizeHealthCard.js.map +1 -1
  63. package/dist/ui/components/dashboard/Footer.d.ts +1 -1
  64. package/dist/ui/components/dashboard/Footer.d.ts.map +1 -1
  65. package/dist/ui/components/dashboard/Footer.js +2 -2
  66. package/dist/ui/components/dashboard/Footer.js.map +1 -1
  67. package/dist/ui/components/dashboard/GovernanceHealthCard.d.ts +3 -3
  68. package/dist/ui/components/dashboard/GovernanceHealthCard.d.ts.map +1 -1
  69. package/dist/ui/components/dashboard/GovernanceHealthCard.js +17 -14
  70. package/dist/ui/components/dashboard/GovernanceHealthCard.js.map +1 -1
  71. package/dist/ui/components/dashboard/GuardianStatusCard.d.ts +2 -2
  72. package/dist/ui/components/dashboard/GuardianStatusCard.d.ts.map +1 -1
  73. package/dist/ui/components/dashboard/GuardianStatusCard.js +29 -16
  74. package/dist/ui/components/dashboard/GuardianStatusCard.js.map +1 -1
  75. package/dist/ui/components/dashboard/Header.d.ts +1 -1
  76. package/dist/ui/components/dashboard/Header.js +2 -2
  77. package/dist/ui/components/dashboard/HotFilesCard.d.ts +1 -1
  78. package/dist/ui/components/dashboard/HotFilesCard.d.ts.map +1 -1
  79. package/dist/ui/components/dashboard/HotFilesCard.js +6 -6
  80. package/dist/ui/components/dashboard/HotFilesCard.js.map +1 -1
  81. package/dist/ui/components/dashboard/NotConfiguredCard.d.ts +2 -2
  82. package/dist/ui/components/dashboard/NotConfiguredCard.d.ts.map +1 -1
  83. package/dist/ui/components/dashboard/NotConfiguredCard.js +3 -3
  84. package/dist/ui/components/dashboard/NotConfiguredCard.js.map +1 -1
  85. package/dist/ui/components/dashboard/SprintProgressCard.d.ts +1 -1
  86. package/dist/ui/components/dashboard/SprintProgressCard.d.ts.map +1 -1
  87. package/dist/ui/components/dashboard/SprintProgressCard.js +4 -4
  88. package/dist/ui/components/dashboard/SprintProgressCard.js.map +1 -1
  89. package/dist/ui/components/dashboard/StalenessCard.d.ts +1 -1
  90. package/dist/ui/components/dashboard/StalenessCard.d.ts.map +1 -1
  91. package/dist/ui/components/dashboard/StalenessCard.js +9 -9
  92. package/dist/ui/components/dashboard/StalenessCard.js.map +1 -1
  93. package/dist/ui/components/dashboard/TabBar.d.ts +2 -2
  94. package/dist/ui/components/dashboard/TabBar.js +7 -7
  95. package/dist/ui/components/dashboard/TabBar.js.map +1 -1
  96. package/dist/ui/components/dashboard/ValidationCard.d.ts +2 -2
  97. package/dist/ui/components/dashboard/ValidationCard.d.ts.map +1 -1
  98. package/dist/ui/components/dashboard/ValidationCard.js +22 -22
  99. package/dist/ui/components/dashboard/ValidationCard.js.map +1 -1
  100. package/dist/ui/components/dashboard/ViewContainer.d.ts +3 -3
  101. package/dist/ui/components/dashboard/ViewContainer.d.ts.map +1 -1
  102. package/dist/ui/components/dashboard/ViewContainer.js +20 -20
  103. package/dist/ui/components/dashboard/ViewContainer.js.map +1 -1
  104. package/dist/ui/components/dashboard/index.d.ts +13 -13
  105. package/dist/ui/components/dashboard/index.js +13 -13
  106. package/dist/ui/index.d.ts.map +1 -1
  107. package/dist/ui/index.js +10 -10
  108. package/dist/ui/index.js.map +1 -1
  109. package/dist/utils/backup.d.ts.map +1 -1
  110. package/dist/utils/backup.js +20 -20
  111. package/dist/utils/backup.js.map +1 -1
  112. package/dist/utils/config.d.ts +1 -1
  113. package/dist/utils/config.js +68 -68
  114. package/dist/utils/detection.d.ts +1 -1
  115. package/dist/utils/detection.js +25 -25
  116. package/dist/utils/errors.d.ts.map +1 -1
  117. package/dist/utils/errors.js +4 -4
  118. package/dist/utils/errors.js.map +1 -1
  119. package/dist/utils/git-history.d.ts.map +1 -1
  120. package/dist/utils/git-history.js +9 -5
  121. package/dist/utils/git-history.js.map +1 -1
  122. package/dist/utils/git-staleness.d.ts.map +1 -1
  123. package/dist/utils/git-staleness.js +21 -21
  124. package/dist/utils/git-staleness.js.map +1 -1
  125. package/dist/utils/guardian-prompt.d.ts.map +1 -1
  126. package/dist/utils/guardian-prompt.js +1 -1
  127. package/dist/utils/guardian-prompt.js.map +1 -1
  128. package/dist/utils/llm-client.d.ts +5 -5
  129. package/dist/utils/llm-client.d.ts.map +1 -1
  130. package/dist/utils/llm-client.js +56 -53
  131. package/dist/utils/llm-client.js.map +1 -1
  132. package/dist/utils/prompt-parser.d.ts.map +1 -1
  133. package/dist/utils/prompt-parser.js +13 -17
  134. package/dist/utils/prompt-parser.js.map +1 -1
  135. package/dist/utils/prompts.d.ts +1 -1
  136. package/dist/utils/prompts.d.ts.map +1 -1
  137. package/dist/utils/prompts.js +74 -49
  138. package/dist/utils/prompts.js.map +1 -1
  139. package/dist/utils/sanitize.js +6 -6
  140. package/dist/utils/sanitize.js.map +1 -1
  141. package/dist/utils/stats-collector.d.ts +3 -9
  142. package/dist/utils/stats-collector.d.ts.map +1 -1
  143. package/dist/utils/stats-collector.js +74 -83
  144. package/dist/utils/stats-collector.js.map +1 -1
  145. package/dist/utils/status.d.ts +1 -1
  146. package/dist/utils/status.d.ts.map +1 -1
  147. package/dist/utils/status.js +16 -16
  148. package/dist/utils/status.js.map +1 -1
  149. package/dist/utils/templates.d.ts +3 -3
  150. package/dist/utils/templates.d.ts.map +1 -1
  151. package/dist/utils/templates.js +59 -54
  152. package/dist/utils/templates.js.map +1 -1
  153. package/dist/utils/tier-tags.d.ts +1 -1
  154. package/dist/utils/tier-tags.js +2 -2
  155. package/dist/utils/token-counter.d.ts +1 -43
  156. package/dist/utils/token-counter.d.ts.map +1 -1
  157. package/dist/utils/token-counter.js +32 -80
  158. package/dist/utils/token-counter.js.map +1 -1
  159. package/dist/utils/validation.d.ts +1 -1
  160. package/dist/utils/validation.d.ts.map +1 -1
  161. package/dist/utils/validation.js +25 -24
  162. package/dist/utils/validation.js.map +1 -1
  163. package/dist/utils/validator.d.ts +1 -1
  164. package/dist/utils/validator.d.ts.map +1 -1
  165. package/dist/utils/validator.js +97 -90
  166. package/dist/utils/validator.js.map +1 -1
  167. package/package.json +7 -5
  168. package/templates/CLAUDE.md +1 -1
  169. package/templates/FUTURE-ENHANCEMENTS.md +1 -1
  170. package/templates/NEXT-TASKS.md +1 -1
  171. package/templates/PROMPTS.md +1 -1
  172. package/templates/README.md +1 -1
  173. package/templates/docs/archive/v1.0-CHANGELOG.md +1 -1
  174. package/templates/docs/core/ARCHITECTURE.md +1 -1
  175. package/templates/docs/core/DECISIONS.md +1 -1
  176. package/templates/docs/core/DOMAIN-LOGIC.md +1 -1
  177. package/templates/docs/core/GLOSSARY.md +1 -1
  178. package/templates/docs/core/PATTERNS.md +1 -1
  179. package/templates/docs/core/SCHEMA.md +1 -1
  180. package/templates/docs/core/TROUBLESHOOTING.md +1 -1
@@ -1,25 +1,25 @@
1
- import { readFile, writeFile } from 'fs/promises';
2
- import { existsSync } from 'fs';
3
- import { join } from 'path';
4
- export const CONFIG_VERSION = '1.0.0';
1
+ import { readFile, writeFile } from "fs/promises";
2
+ import { existsSync } from "fs";
3
+ import { join } from "path";
4
+ export const CONFIG_VERSION = "1.0.0";
5
5
  const DEFAULT_LINE_LIMITS = {
6
- 'NEXT-TASKS.md': 200,
7
- 'FUTURE-ENHANCEMENTS.md': 500,
8
- 'ARCHITECTURE.md': 500,
9
- 'PATTERNS.md': 650,
10
- 'DOMAIN-LOGIC.md': 400,
11
- 'DECISIONS.md': 400,
12
- 'GLOSSARY.md': 200,
13
- 'SCHEMA.md': 600,
14
- 'TROUBLESHOOTING.md': 400,
6
+ "NEXT-TASKS.md": 200,
7
+ "FUTURE-ENHANCEMENTS.md": 500,
8
+ "ARCHITECTURE.md": 500,
9
+ "PATTERNS.md": 650,
10
+ "DOMAIN-LOGIC.md": 400,
11
+ "DECISIONS.md": 400,
12
+ "GLOSSARY.md": 200,
13
+ "SCHEMA.md": 600,
14
+ "TROUBLESHOOTING.md": 400,
15
15
  };
16
16
  export const DEFAULT_CONFIG = {
17
17
  version: CONFIG_VERSION,
18
- scope: 'standard',
18
+ scope: "standard",
19
19
  paths: {
20
- docs: 'docs/core',
21
- tasks: 'NEXT-TASKS.md',
22
- archive: 'docs/archive',
20
+ docs: "docs/core",
21
+ tasks: "NEXT-TASKS.md",
22
+ archive: "docs/archive",
23
23
  },
24
24
  limits: {},
25
25
  validation: {
@@ -29,78 +29,78 @@ export const DEFAULT_CONFIG = {
29
29
  };
30
30
  export const SCOPE_PRESETS = [
31
31
  {
32
- name: 'nano',
33
- displayName: 'Nano',
34
- description: 'Minimal setup for scripts and small tools',
35
- mandatoryFiles: ['NEXT-TASKS.md', 'CLAUDE.md'],
32
+ name: "nano",
33
+ displayName: "Nano",
34
+ description: "Minimal setup for scripts and small tools",
35
+ mandatoryFiles: ["NEXT-TASKS.md", "CLAUDE.md"],
36
36
  optionalFiles: [],
37
37
  lineLimits: {
38
- 'NEXT-TASKS.md': 100,
38
+ "NEXT-TASKS.md": 100,
39
39
  },
40
40
  },
41
41
  {
42
- name: 'standard',
43
- displayName: 'Standard',
44
- description: 'Complete setup for most products (recommended)',
42
+ name: "standard",
43
+ displayName: "Standard",
44
+ description: "Complete setup for most products (recommended)",
45
45
  mandatoryFiles: [
46
- 'NEXT-TASKS.md',
47
- 'CLAUDE.md',
48
- '.github/copilot-instructions.md',
46
+ "NEXT-TASKS.md",
47
+ "CLAUDE.md",
48
+ ".github/copilot-instructions.md",
49
49
  ],
50
50
  optionalFiles: [
51
- 'PROMPTS.md',
52
- 'FUTURE-ENHANCEMENTS.md',
53
- 'docs/core/ARCHITECTURE.md',
54
- 'docs/core/PATTERNS.md',
55
- 'docs/core/DOMAIN-LOGIC.md',
56
- 'docs/core/DECISIONS.md',
57
- 'docs/core/TROUBLESHOOTING.md',
51
+ "PROMPTS.md",
52
+ "FUTURE-ENHANCEMENTS.md",
53
+ "docs/core/ARCHITECTURE.md",
54
+ "docs/core/PATTERNS.md",
55
+ "docs/core/DOMAIN-LOGIC.md",
56
+ "docs/core/DECISIONS.md",
57
+ "docs/core/TROUBLESHOOTING.md",
58
58
  ],
59
59
  lineLimits: DEFAULT_LINE_LIMITS,
60
60
  },
61
61
  {
62
- name: 'enterprise',
63
- displayName: 'Enterprise',
64
- description: 'Full suite for large, complex repositories',
62
+ name: "enterprise",
63
+ displayName: "Enterprise",
64
+ description: "Full suite for large, complex repositories",
65
65
  mandatoryFiles: [
66
- 'NEXT-TASKS.md',
67
- 'CLAUDE.md',
68
- '.github/copilot-instructions.md',
66
+ "NEXT-TASKS.md",
67
+ "CLAUDE.md",
68
+ ".github/copilot-instructions.md",
69
69
  ],
70
70
  optionalFiles: [
71
- 'PROMPTS.md',
72
- 'FUTURE-ENHANCEMENTS.md',
73
- 'docs/core/ARCHITECTURE.md',
74
- 'docs/core/PATTERNS.md',
75
- 'docs/core/DOMAIN-LOGIC.md',
76
- 'docs/core/DECISIONS.md',
77
- 'docs/core/TROUBLESHOOTING.md',
78
- 'docs/core/GLOSSARY.md',
79
- 'docs/core/SCHEMA.md',
71
+ "PROMPTS.md",
72
+ "FUTURE-ENHANCEMENTS.md",
73
+ "docs/core/ARCHITECTURE.md",
74
+ "docs/core/PATTERNS.md",
75
+ "docs/core/DOMAIN-LOGIC.md",
76
+ "docs/core/DECISIONS.md",
77
+ "docs/core/TROUBLESHOOTING.md",
78
+ "docs/core/GLOSSARY.md",
79
+ "docs/core/SCHEMA.md",
80
80
  ],
81
81
  lineLimits: {
82
- 'NEXT-TASKS.md': 300,
83
- 'FUTURE-ENHANCEMENTS.md': 800,
84
- 'ARCHITECTURE.md': 800,
85
- 'PATTERNS.md': 800,
86
- 'DOMAIN-LOGIC.md': 500,
87
- 'DECISIONS.md': 600,
88
- 'GLOSSARY.md': 400,
89
- 'SCHEMA.md': 1000,
90
- 'TROUBLESHOOTING.md': 600,
82
+ "NEXT-TASKS.md": 300,
83
+ "FUTURE-ENHANCEMENTS.md": 800,
84
+ "ARCHITECTURE.md": 800,
85
+ "PATTERNS.md": 800,
86
+ "DOMAIN-LOGIC.md": 500,
87
+ "DECISIONS.md": 600,
88
+ "GLOSSARY.md": 400,
89
+ "SCHEMA.md": 1000,
90
+ "TROUBLESHOOTING.md": 600,
91
91
  },
92
92
  },
93
93
  {
94
- name: 'custom',
95
- displayName: 'Custom',
96
- description: 'Choose specific files to include (advanced)',
94
+ name: "custom",
95
+ displayName: "Custom",
96
+ description: "Choose specific files to include (advanced)",
97
97
  mandatoryFiles: [],
98
98
  optionalFiles: [],
99
99
  lineLimits: DEFAULT_LINE_LIMITS,
100
100
  },
101
101
  ];
102
102
  export function getConfigPath(cwd) {
103
- return join(cwd, '.cortexrc');
103
+ return join(cwd, ".cortexrc");
104
104
  }
105
105
  export function hasConfig(cwd) {
106
106
  return existsSync(getConfigPath(cwd));
@@ -111,7 +111,7 @@ export async function loadConfig(cwd) {
111
111
  return null;
112
112
  }
113
113
  try {
114
- const content = await readFile(configPath, 'utf-8');
114
+ const content = await readFile(configPath, "utf-8");
115
115
  const config = JSON.parse(content);
116
116
  if (config.version !== CONFIG_VERSION) {
117
117
  console.warn(`⚠️ Config version mismatch: expected ${CONFIG_VERSION}, got ${config.version}`);
@@ -119,7 +119,7 @@ export async function loadConfig(cwd) {
119
119
  return config;
120
120
  }
121
121
  catch (error) {
122
- throw new Error(`Failed to parse .cortexrc: ${error instanceof Error ? error.message : 'Unknown error'}`);
122
+ throw new Error(`Failed to parse .cortexrc: ${error instanceof Error ? error.message : "Unknown error"}`);
123
123
  }
124
124
  }
125
125
  export function mergeConfig(userConfig) {
@@ -154,10 +154,10 @@ export async function saveConfig(cwd, config) {
154
154
  const configPath = getConfigPath(cwd);
155
155
  try {
156
156
  const content = JSON.stringify(config, null, 2);
157
- await writeFile(configPath, content, 'utf-8');
157
+ await writeFile(configPath, content, "utf-8");
158
158
  }
159
159
  catch (error) {
160
- throw new Error(`Failed to write .cortexrc: ${error instanceof Error ? error.message : 'Unknown error'}`);
160
+ throw new Error(`Failed to write .cortexrc: ${error instanceof Error ? error.message : "Unknown error"}`);
161
161
  }
162
162
  }
163
163
  export function createConfigFromScope(scope, projectName, customFiles) {
@@ -176,7 +176,7 @@ export function createConfigFromScope(scope, projectName, customFiles) {
176
176
  config.metadata = {
177
177
  created: new Date().toISOString(),
178
178
  projectName,
179
- ...(scope === 'custom' && customFiles && { customFiles }),
179
+ ...(scope === "custom" && customFiles && { customFiles }),
180
180
  };
181
181
  }
182
182
  return config;
@@ -1,4 +1,4 @@
1
- import type { ProjectContext } from '../types/cli.js';
1
+ import type { ProjectContext } from "../types/cli.js";
2
2
  export declare function detectContext(cwd: string): ProjectContext;
3
3
  export declare function getDefaultProjectName(cwd: string): string;
4
4
  export declare function isSafeToInitialize(context: ProjectContext): boolean;
@@ -1,31 +1,31 @@
1
- import { existsSync } from 'fs';
2
- import { join, basename } from 'path';
1
+ import { existsSync } from "fs";
2
+ import { join, basename } from "path";
3
3
  export function detectContext(cwd) {
4
- const isGitRepo = existsSync(join(cwd, '.git'));
5
- const hasPackageJson = existsSync(join(cwd, 'package.json'));
6
- let packageManager = 'unknown';
7
- if (existsSync(join(cwd, 'pnpm-lock.yaml'))) {
8
- packageManager = 'pnpm';
4
+ const isGitRepo = existsSync(join(cwd, ".git"));
5
+ const hasPackageJson = existsSync(join(cwd, "package.json"));
6
+ let packageManager = "unknown";
7
+ if (existsSync(join(cwd, "pnpm-lock.yaml"))) {
8
+ packageManager = "pnpm";
9
9
  }
10
- else if (existsSync(join(cwd, 'yarn.lock'))) {
11
- packageManager = 'yarn';
10
+ else if (existsSync(join(cwd, "yarn.lock"))) {
11
+ packageManager = "yarn";
12
12
  }
13
- else if (existsSync(join(cwd, 'package-lock.json'))) {
14
- packageManager = 'npm';
13
+ else if (existsSync(join(cwd, "package-lock.json"))) {
14
+ packageManager = "npm";
15
15
  }
16
- else if (existsSync(join(cwd, 'bun.lockb'))) {
17
- packageManager = 'bun';
16
+ else if (existsSync(join(cwd, "bun.lockb"))) {
17
+ packageManager = "bun";
18
18
  }
19
19
  const existingFiles = [];
20
20
  const tmsFiles = [
21
- 'NEXT-TASKS.md',
22
- 'FUTURE-ENHANCEMENTS.md',
23
- 'CLAUDE.md',
24
- 'README.md',
25
- '.github/copilot-instructions.md',
26
- 'docs/core/ARCHITECTURE.md',
27
- 'docs/core/PATTERNS.md',
28
- 'docs/core/DOMAIN-LOGIC.md',
21
+ "NEXT-TASKS.md",
22
+ "FUTURE-ENHANCEMENTS.md",
23
+ "CLAUDE.md",
24
+ "README.md",
25
+ ".github/copilot-instructions.md",
26
+ "docs/core/ARCHITECTURE.md",
27
+ "docs/core/PATTERNS.md",
28
+ "docs/core/DOMAIN-LOGIC.md",
29
29
  ];
30
30
  for (const file of tmsFiles) {
31
31
  if (existsSync(join(cwd, file))) {
@@ -43,16 +43,16 @@ export function getDefaultProjectName(cwd) {
43
43
  const dirName = basename(cwd);
44
44
  return dirName
45
45
  .toLowerCase()
46
- .replace(/[^a-z0-9-]/g, '-')
47
- .replace(/-+/g, '-')
48
- .replace(/^-|-$/g, '');
46
+ .replace(/[^a-z0-9-]/g, "-")
47
+ .replace(/-+/g, "-")
48
+ .replace(/^-|-$/g, "");
49
49
  }
50
50
  export function isSafeToInitialize(context) {
51
51
  if (context.existingFiles.length === 0) {
52
52
  return true;
53
53
  }
54
54
  if (context.existingFiles.length === 1 &&
55
- context.existingFiles[0] === 'README.md') {
55
+ context.existingFiles[0] === "README.md") {
56
56
  return true;
57
57
  }
58
58
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAMnD,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;gBAEtC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,EAAE,OAAO,CAAC,EAAE,YAAY;CAW1E;AAMD,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAKD,qBAAa,QAAS,SAAQ,QAAQ;gBACxB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAKD,qBAAa,WAAY,SAAQ,QAAQ;gBAC3B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAKD,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAQD,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CA2BhD"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAMnD,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;gBAEtC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,EAAE,OAAO,CAAC,EAAE,YAAY;CAW1E;AAMD,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAKD,qBAAa,QAAS,SAAQ,QAAQ;gBACxB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAKD,qBAAa,WAAY,SAAQ,QAAQ;gBAC3B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAKD,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpD;AAQD,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CA4BhD"}
@@ -1,4 +1,4 @@
1
- import { sanitizeApiKey, sanitizeObject } from './sanitize.js';
1
+ import { sanitizeApiKey, sanitizeObject } from "./sanitize.js";
2
2
  export class CLIError extends Error {
3
3
  exitCode;
4
4
  context;
@@ -39,13 +39,13 @@ export function formatError(error) {
39
39
  const sanitizedContext = sanitizeObject(error.context);
40
40
  const contextLines = Object.entries(sanitizedContext)
41
41
  .map(([key, value]) => {
42
- const formattedValue = typeof value === 'object' && value !== null
42
+ const formattedValue = typeof value === "object" && value !== null
43
43
  ? JSON.stringify(value)
44
44
  : String(value);
45
45
  return ` ${key}=${formattedValue}`;
46
46
  })
47
- .join('\n');
48
- message += '\n' + contextLines;
47
+ .join("\n");
48
+ message += "\n" + contextLines;
49
49
  }
50
50
  return message;
51
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAY/D,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,QAAQ,CAAS;IACjB,OAAO,CAA2B;IAElD,YAAY,OAAe,EAAE,WAAmB,CAAC,EAAE,OAAsB;QACvE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAGvB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC5B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAMD,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAKD,MAAM,OAAO,QAAS,SAAQ,QAAQ;IACpC,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAKD,MAAM,OAAO,WAAY,SAAQ,QAAQ;IACvC,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAKD,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAQD,MAAM,UAAU,WAAW,CAAC,KAAY;IACtC,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAE9B,IAAI,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAG5C,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAE3D,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEvD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAEpB,MAAM,cAAc,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;oBAChE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;oBACvB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClB,OAAO,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACvC,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,IAAI,IAAI,GAAG,YAAY,CAAC;QACjC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAGD,OAAO,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAY/D,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,QAAQ,CAAS;IACjB,OAAO,CAA2B;IAElD,YAAY,OAAe,EAAE,WAAmB,CAAC,EAAE,OAAsB;QACvE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAGvB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC5B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAMD,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAKD,MAAM,OAAO,QAAS,SAAQ,QAAQ;IACpC,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAKD,MAAM,OAAO,WAAY,SAAQ,QAAQ;IACvC,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAKD,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAQD,MAAM,UAAU,WAAW,CAAC,KAAY;IACtC,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAE9B,IAAI,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAG5C,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAE3D,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEvD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAEpB,MAAM,cAAc,GAClB,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;oBACzC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;oBACvB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACvC,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,IAAI,IAAI,GAAG,YAAY,CAAC;QACjC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAGD,OAAO,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"git-history.d.ts","sourceRoot":"","sources":["../../src/utils/git-history.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAMD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAU9C;AAMD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW9E;AAKD,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,GACd,WAAW,EAAE,CAoBf"}
1
+ {"version":3,"file":"git-history.d.ts","sourceRoot":"","sources":["../../src/utils/git-history.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAMD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAW9C;AAMD,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,MAAM,GAAG,IAAI,CAWf;AAKD,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,GACd,WAAW,EAAE,CAoBf"}
@@ -1,8 +1,12 @@
1
- import { execSync } from 'child_process';
1
+ import { execSync } from "child_process";
2
2
  export function isGitRepo(cwd) {
3
3
  try {
4
- const result = execSync('git rev-parse --is-inside-work-tree', { cwd, encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
5
- return result === 'true';
4
+ const result = execSync("git rev-parse --is-inside-work-tree", {
5
+ cwd,
6
+ encoding: "utf-8",
7
+ stdio: ["pipe", "pipe", "pipe"],
8
+ }).trim();
9
+ return result === "true";
6
10
  }
7
11
  catch {
8
12
  return false;
@@ -10,7 +14,7 @@ export function isGitRepo(cwd) {
10
14
  }
11
15
  export function getFileLastCommit(cwd, filePath) {
12
16
  try {
13
- const result = execSync(`git log -1 --format=%ct --follow -- "${filePath}"`, { cwd, encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
17
+ const result = execSync(`git log -1 --format=%ct --follow -- "${filePath}"`, { cwd, encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"] }).trim();
14
18
  return result ? parseInt(result, 10) : null;
15
19
  }
16
20
  catch {
@@ -19,7 +23,7 @@ export function getFileLastCommit(cwd, filePath) {
19
23
  }
20
24
  export function analyzeFileHistory(cwd, files) {
21
25
  const now = Math.floor(Date.now() / 1000);
22
- return files.map(path => {
26
+ return files.map((path) => {
23
27
  const lastCommitTimestamp = getFileLastCommit(cwd, path);
24
28
  const isTracked = lastCommitTimestamp !== null;
25
29
  const daysSinceChange = isTracked
@@ -1 +1 @@
1
- {"version":3,"file":"git-history.js","sourceRoot":"","sources":["../../src/utils/git-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAczC,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CACrB,qCAAqC,EACrC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAC5D,CAAC,IAAI,EAAE,CAAC;QACT,OAAO,MAAM,KAAK,MAAM,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAMD,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,QAAgB;IAC7D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CACrB,wCAAwC,QAAQ,GAAG,EACnD,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAC5D,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,KAAe;IAEf,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAE1C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACtB,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,mBAAmB,KAAK,IAAI,CAAC;QAG/C,MAAM,eAAe,GAAG,SAAS;YAC/B,CAAC,CAAC,CAAC,GAAG,GAAG,mBAAoB,CAAC,GAAG,KAAK;YACtC,CAAC,CAAC,CAAC,CAAC;QAEN,OAAO;YACL,IAAI;YACJ,mBAAmB;YACnB,eAAe;YACf,SAAS;YACT,SAAS,EAAE,CAAC,SAAS;SACtB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"git-history.js","sourceRoot":"","sources":["../../src/utils/git-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAczC,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,qCAAqC,EAAE;YAC7D,GAAG;YACH,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,MAAM,KAAK,MAAM,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAMD,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EACX,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CACrB,wCAAwC,QAAQ,GAAG,EACnD,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAC5D,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,KAAe;IAEf,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAE1C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,mBAAmB,KAAK,IAAI,CAAC;QAG/C,MAAM,eAAe,GAAG,SAAS;YAC/B,CAAC,CAAC,CAAC,GAAG,GAAG,mBAAoB,CAAC,GAAG,KAAK;YACtC,CAAC,CAAC,CAAC,CAAC;QAEN,OAAO;YACL,IAAI;YACJ,mBAAmB;YACnB,eAAe;YACf,SAAS;YACT,SAAS,EAAE,CAAC,SAAS;SACtB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"git-staleness.d.ts","sourceRoot":"","sources":["../../src/utils/git-staleness.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiBzF;AAMD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,MAAM,CAmDR;AAKD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGnD;AAKD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,EACpB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,eAAe,CAgFjB"}
1
+ {"version":3,"file":"git-staleness.d.ts","sourceRoot":"","sources":["../../src/utils/git-staleness.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,IAAI,CAiBf;AAMD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,MAAM,CAsDR;AAKD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGnD;AAKD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,EACpB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,eAAe,CAoFjB"}
@@ -1,11 +1,11 @@
1
- import { execSync } from 'child_process';
2
- import { existsSync } from 'fs';
1
+ import { execSync } from "child_process";
2
+ import { existsSync } from "fs";
3
3
  export function getLastGitCommitEpochSeconds(pathSpec, cwd) {
4
4
  try {
5
5
  const result = execSync(`git log -1 --format=%ct -- "${pathSpec}"`, {
6
6
  cwd,
7
- encoding: 'utf-8',
8
- stdio: ['pipe', 'pipe', 'ignore'],
7
+ encoding: "utf-8",
8
+ stdio: ["pipe", "pipe", "ignore"],
9
9
  }).trim();
10
10
  if (!result) {
11
11
  return null;
@@ -21,30 +21,30 @@ export function countMeaningfulCommits(pathSpec, sinceEpoch, cwd) {
21
21
  try {
22
22
  const result = execSync(`git log --no-merges --format=%H --since="${sinceEpoch}" -- "${pathSpec}"`, {
23
23
  cwd,
24
- encoding: 'utf-8',
25
- stdio: ['pipe', 'pipe', 'ignore'],
24
+ encoding: "utf-8",
25
+ stdio: ["pipe", "pipe", "ignore"],
26
26
  }).trim();
27
27
  if (!result) {
28
28
  return 0;
29
29
  }
30
- const commits = result.split('\n').filter(Boolean);
30
+ const commits = result.split("\n").filter(Boolean);
31
31
  let meaningfulCount = 0;
32
32
  for (const commitHash of commits) {
33
33
  const files = execSync(`git diff-tree --no-commit-id --name-only -r ${commitHash}`, {
34
34
  cwd,
35
- encoding: 'utf-8',
36
- stdio: ['pipe', 'pipe', 'ignore'],
35
+ encoding: "utf-8",
36
+ stdio: ["pipe", "pipe", "ignore"],
37
37
  })
38
38
  .trim()
39
- .split('\n')
39
+ .split("\n")
40
40
  .filter(Boolean);
41
- const hasMeaningfulFile = files.some((file) => !file.includes('test') &&
42
- !file.includes('.test.') &&
43
- !file.includes('package-lock.json') &&
44
- !file.includes('yarn.lock') &&
45
- !file.includes('pnpm-lock.yaml') &&
46
- !file.endsWith('.config.js') &&
47
- !file.endsWith('.config.ts'));
41
+ const hasMeaningfulFile = files.some((file) => !file.includes("test") &&
42
+ !file.includes(".test.") &&
43
+ !file.includes("package-lock.json") &&
44
+ !file.includes("yarn.lock") &&
45
+ !file.includes("pnpm-lock.yaml") &&
46
+ !file.endsWith(".config.js") &&
47
+ !file.endsWith(".config.ts"));
48
48
  if (hasMeaningfulFile) {
49
49
  meaningfulCount++;
50
50
  }
@@ -68,7 +68,7 @@ export function checkDocStaleness(docPath, watchPaths, thresholdDays, minCommits
68
68
  codeLastModified: null,
69
69
  daysSinceDocUpdate: null,
70
70
  meaningfulCommits: 0,
71
- reason: 'Doc has no git history (may be new or untracked)',
71
+ reason: "Doc has no git history (may be new or untracked)",
72
72
  };
73
73
  }
74
74
  let mostRecentCodeTimestamp = 0;
@@ -85,7 +85,7 @@ export function checkDocStaleness(docPath, watchPaths, thresholdDays, minCommits
85
85
  codeLastModified: null,
86
86
  daysSinceDocUpdate: null,
87
87
  meaningfulCommits: 0,
88
- reason: 'No code changes found in watched paths',
88
+ reason: "No code changes found in watched paths",
89
89
  };
90
90
  }
91
91
  const secondsSinceDocUpdate = mostRecentCodeTimestamp - docTimestamp;
@@ -97,7 +97,7 @@ export function checkDocStaleness(docPath, watchPaths, thresholdDays, minCommits
97
97
  codeLastModified: mostRecentCodeTimestamp,
98
98
  daysSinceDocUpdate: 0,
99
99
  meaningfulCommits: 0,
100
- reason: 'Doc is up to date (modified after code)',
100
+ reason: "Doc is up to date (modified after code)",
101
101
  };
102
102
  }
103
103
  let totalMeaningfulCommits = 0;
@@ -107,7 +107,7 @@ export function checkDocStaleness(docPath, watchPaths, thresholdDays, minCommits
107
107
  const exceedsTimeThreshold = daysSinceDocUpdate > thresholdDays;
108
108
  const exceedsCommitThreshold = totalMeaningfulCommits >= minCommits;
109
109
  const isStale = exceedsTimeThreshold && exceedsCommitThreshold;
110
- let reason = '';
110
+ let reason = "";
111
111
  if (isStale) {
112
112
  reason = `Doc is ${Math.round(daysSinceDocUpdate)} days older than code with ${totalMeaningfulCommits} meaningful commits`;
113
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"git-staleness.js","sourceRoot":"","sources":["../../src/utils/git-staleness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-staleness.js","sourceRoot":"","sources":["../../src/utils/git-staleness.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"guardian-prompt.d.ts","sourceRoot":"","sources":["../../src/utils/guardian-prompt.ts"],"names":[],"mappings":"AAcA,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CA4E9F;AASD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAS9E"}
1
+ {"version":3,"file":"guardian-prompt.d.ts","sourceRoot":"","sources":["../../src/utils/guardian-prompt.ts"],"names":[],"mappings":"AAcA,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB,MAAM,CA4ER;AASD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,GACX,MAAM,CASR"}
@@ -2,7 +2,7 @@ export function buildGuardianSystemPrompt(patterns, domainLogic) {
2
2
  let prompt = `You are Guardian, a code review assistant that analyzes code against project-specific patterns and architectural rules.
3
3
 
4
4
  # Your Task
5
- Analyze the provided code file and identify violations of the patterns defined in PATTERNS.md${domainLogic ? ' and domain logic rules in DOMAIN-LOGIC.md' : ''}.
5
+ Analyze the provided code file and identify violations of the patterns defined in PATTERNS.md${domainLogic ? " and domain logic rules in DOMAIN-LOGIC.md" : ""}.
6
6
 
7
7
  # PATTERNS.md
8
8
  ${patterns}
@@ -1 +1 @@
1
- {"version":3,"file":"guardian-prompt.js","sourceRoot":"","sources":["../../src/utils/guardian-prompt.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,yBAAyB,CAAC,QAAgB,EAAE,WAA0B;IACpF,IAAI,MAAM,GAAG;;;+FAGgF,WAAW,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE;;;EAG5J,QAAQ;CACT,CAAC;IAEA,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI;;EAEZ,WAAW;CACZ,CAAC;IACA,CAAC;IAED,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mFAwDuE,CAAC;IAElF,OAAO,MAAM,CAAC;AAChB,CAAC;AASD,MAAM,UAAU,uBAAuB,CAAC,QAAgB,EAAE,IAAY;IACpE,OAAO;cACK,QAAQ;;;EAGpB,IAAI;;;mFAG6E,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"guardian-prompt.js","sourceRoot":"","sources":["../../src/utils/guardian-prompt.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,yBAAyB,CACvC,QAAgB,EAChB,WAA0B;IAE1B,IAAI,MAAM,GAAG;;;+FAGgF,WAAW,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE;;;EAG5J,QAAQ;CACT,CAAC;IAEA,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI;;EAEZ,WAAW;CACZ,CAAC;IACA,CAAC;IAED,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mFAwDuE,CAAC;IAElF,OAAO,MAAM,CAAC;AAChB,CAAC;AASD,MAAM,UAAU,uBAAuB,CACrC,QAAgB,EAChB,IAAY;IAEZ,OAAO;cACK,QAAQ;;;EAGpB,IAAI;;;mFAG6E,CAAC;AACpF,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { GuardianResult } from '../types/guardian.js';
1
+ import type { GuardianResult } from "../types/guardian.js";
2
2
  export interface LLMConfig {
3
- provider: 'openai' | 'anthropic';
3
+ provider: "openai" | "anthropic";
4
4
  apiKey: string;
5
5
  model?: string;
6
6
  timeoutMs?: number;
7
- responseFormat?: 'text' | 'json';
7
+ responseFormat?: "text" | "json";
8
8
  retryConfig?: {
9
9
  maxRetries?: number;
10
10
  initialDelayMs?: number;
@@ -13,7 +13,7 @@ export interface LLMConfig {
13
13
  };
14
14
  }
15
15
  export interface LLMMessage {
16
- role: 'system' | 'user' | 'assistant';
16
+ role: "system" | "user" | "assistant";
17
17
  content: string;
18
18
  }
19
19
  export interface LLMResponse {
@@ -26,5 +26,5 @@ export interface LLMResponse {
26
26
  }
27
27
  export declare function callLLM(config: LLMConfig, messages: LLMMessage[]): Promise<LLMResponse>;
28
28
  export declare function parseGuardianJSON(content: string): GuardianResult | null;
29
- export declare function getApiKey(provider: 'openai' | 'anthropic'): string | null;
29
+ export declare function getApiKey(provider: "openai" | "anthropic"): string | null;
30
30
  //# sourceMappingURL=llm-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"llm-client.d.ts","sourceRoot":"","sources":["../../src/utils/llm-client.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAY3D,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AA6DD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,UAAU,EAAE,GACrB,OAAO,CAAC,WAAW,CAAC,CAyCtB;AA+KD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CA0DxE;AAKD,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,IAAI,CAGzE"}
1
+ {"version":3,"file":"llm-client.d.ts","sourceRoot":"","sources":["../../src/utils/llm-client.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAY3D,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAmED,wBAAsB,OAAO,CAC3B,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,UAAU,EAAE,GACrB,OAAO,CAAC,WAAW,CAAC,CA2CtB;AAkLD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CA8DxE;AAKD,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,IAAI,CAGzE"}