erosolar-cli 1.7.260 → 1.7.262

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 (247) hide show
  1. package/README.md +22 -148
  2. package/dist/core/customCommands.d.ts +1 -0
  3. package/dist/core/customCommands.d.ts.map +1 -1
  4. package/dist/core/customCommands.js +3 -0
  5. package/dist/core/customCommands.js.map +1 -1
  6. package/dist/core/hooks.d.ts +113 -0
  7. package/dist/core/hooks.d.ts.map +1 -0
  8. package/dist/core/hooks.js +267 -0
  9. package/dist/core/hooks.js.map +1 -0
  10. package/dist/core/metricsTracker.d.ts +122 -0
  11. package/dist/core/metricsTracker.d.ts.map +1 -0
  12. package/dist/{alpha-zero → core}/metricsTracker.js +2 -5
  13. package/dist/core/metricsTracker.js.map +1 -0
  14. package/dist/core/toolPreconditions.d.ts.map +1 -1
  15. package/dist/core/toolPreconditions.js +0 -14
  16. package/dist/core/toolPreconditions.js.map +1 -1
  17. package/dist/core/toolRuntime.d.ts.map +1 -1
  18. package/dist/core/toolRuntime.js +0 -5
  19. package/dist/core/toolRuntime.js.map +1 -1
  20. package/dist/core/toolValidation.d.ts.map +1 -1
  21. package/dist/core/toolValidation.js +14 -3
  22. package/dist/core/toolValidation.js.map +1 -1
  23. package/dist/core/validationRunner.d.ts +1 -3
  24. package/dist/core/validationRunner.d.ts.map +1 -1
  25. package/dist/core/validationRunner.js.map +1 -1
  26. package/dist/mcp/sseClient.d.ts.map +1 -1
  27. package/dist/mcp/sseClient.js +9 -18
  28. package/dist/mcp/sseClient.js.map +1 -1
  29. package/dist/plugins/tools/build/buildPlugin.d.ts +0 -6
  30. package/dist/plugins/tools/build/buildPlugin.d.ts.map +1 -1
  31. package/dist/plugins/tools/build/buildPlugin.js +4 -10
  32. package/dist/plugins/tools/build/buildPlugin.js.map +1 -1
  33. package/dist/shell/interactiveShell.d.ts +10 -2
  34. package/dist/shell/interactiveShell.d.ts.map +1 -1
  35. package/dist/shell/interactiveShell.js +182 -36
  36. package/dist/shell/interactiveShell.js.map +1 -1
  37. package/dist/shell/terminalInput.d.ts +68 -140
  38. package/dist/shell/terminalInput.d.ts.map +1 -1
  39. package/dist/shell/terminalInput.js +424 -685
  40. package/dist/shell/terminalInput.js.map +1 -1
  41. package/dist/shell/terminalInputAdapter.d.ts +20 -15
  42. package/dist/shell/terminalInputAdapter.d.ts.map +1 -1
  43. package/dist/shell/terminalInputAdapter.js +14 -22
  44. package/dist/shell/terminalInputAdapter.js.map +1 -1
  45. package/dist/ui/ShellUIAdapter.d.ts.map +1 -1
  46. package/dist/ui/ShellUIAdapter.js +13 -12
  47. package/dist/ui/ShellUIAdapter.js.map +1 -1
  48. package/dist/ui/display.d.ts +19 -0
  49. package/dist/ui/display.d.ts.map +1 -1
  50. package/dist/ui/display.js +131 -33
  51. package/dist/ui/display.js.map +1 -1
  52. package/dist/ui/theme.d.ts.map +1 -1
  53. package/dist/ui/theme.js +6 -8
  54. package/dist/ui/theme.js.map +1 -1
  55. package/dist/ui/toolDisplay.d.ts +0 -158
  56. package/dist/ui/toolDisplay.d.ts.map +1 -1
  57. package/dist/ui/toolDisplay.js +0 -348
  58. package/dist/ui/toolDisplay.js.map +1 -1
  59. package/dist/ui/unified/layout.d.ts +1 -0
  60. package/dist/ui/unified/layout.d.ts.map +1 -1
  61. package/dist/ui/unified/layout.js +15 -25
  62. package/dist/ui/unified/layout.js.map +1 -1
  63. package/package.json +1 -1
  64. package/dist/alpha-zero/agentWrapper.d.ts +0 -84
  65. package/dist/alpha-zero/agentWrapper.d.ts.map +0 -1
  66. package/dist/alpha-zero/agentWrapper.js +0 -171
  67. package/dist/alpha-zero/agentWrapper.js.map +0 -1
  68. package/dist/alpha-zero/codeEvaluator.d.ts +0 -25
  69. package/dist/alpha-zero/codeEvaluator.d.ts.map +0 -1
  70. package/dist/alpha-zero/codeEvaluator.js +0 -273
  71. package/dist/alpha-zero/codeEvaluator.js.map +0 -1
  72. package/dist/alpha-zero/competitiveRunner.d.ts +0 -66
  73. package/dist/alpha-zero/competitiveRunner.d.ts.map +0 -1
  74. package/dist/alpha-zero/competitiveRunner.js +0 -224
  75. package/dist/alpha-zero/competitiveRunner.js.map +0 -1
  76. package/dist/alpha-zero/index.d.ts +0 -67
  77. package/dist/alpha-zero/index.d.ts.map +0 -1
  78. package/dist/alpha-zero/index.js +0 -99
  79. package/dist/alpha-zero/index.js.map +0 -1
  80. package/dist/alpha-zero/introspection.d.ts +0 -128
  81. package/dist/alpha-zero/introspection.d.ts.map +0 -1
  82. package/dist/alpha-zero/introspection.js +0 -300
  83. package/dist/alpha-zero/introspection.js.map +0 -1
  84. package/dist/alpha-zero/metricsTracker.d.ts +0 -71
  85. package/dist/alpha-zero/metricsTracker.d.ts.map +0 -1
  86. package/dist/alpha-zero/metricsTracker.js.map +0 -1
  87. package/dist/alpha-zero/security/core.d.ts +0 -125
  88. package/dist/alpha-zero/security/core.d.ts.map +0 -1
  89. package/dist/alpha-zero/security/core.js +0 -271
  90. package/dist/alpha-zero/security/core.js.map +0 -1
  91. package/dist/alpha-zero/security/google.d.ts +0 -125
  92. package/dist/alpha-zero/security/google.d.ts.map +0 -1
  93. package/dist/alpha-zero/security/google.js +0 -311
  94. package/dist/alpha-zero/security/google.js.map +0 -1
  95. package/dist/alpha-zero/security/googleLoader.d.ts +0 -17
  96. package/dist/alpha-zero/security/googleLoader.d.ts.map +0 -1
  97. package/dist/alpha-zero/security/googleLoader.js +0 -41
  98. package/dist/alpha-zero/security/googleLoader.js.map +0 -1
  99. package/dist/alpha-zero/security/index.d.ts +0 -29
  100. package/dist/alpha-zero/security/index.d.ts.map +0 -1
  101. package/dist/alpha-zero/security/index.js +0 -32
  102. package/dist/alpha-zero/security/index.js.map +0 -1
  103. package/dist/alpha-zero/security/simulation.d.ts +0 -124
  104. package/dist/alpha-zero/security/simulation.d.ts.map +0 -1
  105. package/dist/alpha-zero/security/simulation.js +0 -277
  106. package/dist/alpha-zero/security/simulation.js.map +0 -1
  107. package/dist/alpha-zero/selfModification.d.ts +0 -109
  108. package/dist/alpha-zero/selfModification.d.ts.map +0 -1
  109. package/dist/alpha-zero/selfModification.js +0 -233
  110. package/dist/alpha-zero/selfModification.js.map +0 -1
  111. package/dist/alpha-zero/types.d.ts +0 -170
  112. package/dist/alpha-zero/types.d.ts.map +0 -1
  113. package/dist/alpha-zero/types.js +0 -31
  114. package/dist/alpha-zero/types.js.map +0 -1
  115. package/dist/core/aiFlowOptimizer.d.ts +0 -26
  116. package/dist/core/aiFlowOptimizer.d.ts.map +0 -1
  117. package/dist/core/aiFlowOptimizer.js +0 -31
  118. package/dist/core/aiFlowOptimizer.js.map +0 -1
  119. package/dist/core/aiOptimizationEngine.d.ts +0 -158
  120. package/dist/core/aiOptimizationEngine.d.ts.map +0 -1
  121. package/dist/core/aiOptimizationEngine.js +0 -428
  122. package/dist/core/aiOptimizationEngine.js.map +0 -1
  123. package/dist/core/aiOptimizationIntegration.d.ts +0 -93
  124. package/dist/core/aiOptimizationIntegration.d.ts.map +0 -1
  125. package/dist/core/aiOptimizationIntegration.js +0 -250
  126. package/dist/core/aiOptimizationIntegration.js.map +0 -1
  127. package/dist/core/enhancedErrorRecovery.d.ts +0 -100
  128. package/dist/core/enhancedErrorRecovery.d.ts.map +0 -1
  129. package/dist/core/enhancedErrorRecovery.js +0 -345
  130. package/dist/core/enhancedErrorRecovery.js.map +0 -1
  131. package/dist/core/unified/errors.d.ts +0 -189
  132. package/dist/core/unified/errors.d.ts.map +0 -1
  133. package/dist/core/unified/errors.js +0 -497
  134. package/dist/core/unified/errors.js.map +0 -1
  135. package/dist/core/unified/index.d.ts +0 -19
  136. package/dist/core/unified/index.d.ts.map +0 -1
  137. package/dist/core/unified/index.js +0 -68
  138. package/dist/core/unified/index.js.map +0 -1
  139. package/dist/core/unified/schema.d.ts +0 -101
  140. package/dist/core/unified/schema.d.ts.map +0 -1
  141. package/dist/core/unified/schema.js +0 -350
  142. package/dist/core/unified/schema.js.map +0 -1
  143. package/dist/core/unified/toolRuntime.d.ts +0 -179
  144. package/dist/core/unified/toolRuntime.d.ts.map +0 -1
  145. package/dist/core/unified/toolRuntime.js +0 -517
  146. package/dist/core/unified/toolRuntime.js.map +0 -1
  147. package/dist/core/unified/tools.d.ts +0 -127
  148. package/dist/core/unified/tools.d.ts.map +0 -1
  149. package/dist/core/unified/tools.js +0 -1333
  150. package/dist/core/unified/tools.js.map +0 -1
  151. package/dist/core/unified/types.d.ts +0 -352
  152. package/dist/core/unified/types.d.ts.map +0 -1
  153. package/dist/core/unified/types.js +0 -12
  154. package/dist/core/unified/types.js.map +0 -1
  155. package/dist/core/unified/version.d.ts +0 -209
  156. package/dist/core/unified/version.d.ts.map +0 -1
  157. package/dist/core/unified/version.js +0 -454
  158. package/dist/core/unified/version.js.map +0 -1
  159. package/dist/security/active-stack-security.d.ts +0 -112
  160. package/dist/security/active-stack-security.d.ts.map +0 -1
  161. package/dist/security/active-stack-security.js +0 -296
  162. package/dist/security/active-stack-security.js.map +0 -1
  163. package/dist/security/advanced-persistence-research.d.ts +0 -92
  164. package/dist/security/advanced-persistence-research.d.ts.map +0 -1
  165. package/dist/security/advanced-persistence-research.js +0 -195
  166. package/dist/security/advanced-persistence-research.js.map +0 -1
  167. package/dist/security/advanced-targeting.d.ts +0 -119
  168. package/dist/security/advanced-targeting.d.ts.map +0 -1
  169. package/dist/security/advanced-targeting.js +0 -233
  170. package/dist/security/advanced-targeting.js.map +0 -1
  171. package/dist/security/assessment/vulnerabilityAssessment.d.ts +0 -104
  172. package/dist/security/assessment/vulnerabilityAssessment.d.ts.map +0 -1
  173. package/dist/security/assessment/vulnerabilityAssessment.js +0 -315
  174. package/dist/security/assessment/vulnerabilityAssessment.js.map +0 -1
  175. package/dist/security/authorization/securityAuthorization.d.ts +0 -88
  176. package/dist/security/authorization/securityAuthorization.d.ts.map +0 -1
  177. package/dist/security/authorization/securityAuthorization.js +0 -172
  178. package/dist/security/authorization/securityAuthorization.js.map +0 -1
  179. package/dist/security/comprehensive-targeting.d.ts +0 -85
  180. package/dist/security/comprehensive-targeting.d.ts.map +0 -1
  181. package/dist/security/comprehensive-targeting.js +0 -438
  182. package/dist/security/comprehensive-targeting.js.map +0 -1
  183. package/dist/security/global-security-integration.d.ts +0 -91
  184. package/dist/security/global-security-integration.d.ts.map +0 -1
  185. package/dist/security/global-security-integration.js +0 -218
  186. package/dist/security/global-security-integration.js.map +0 -1
  187. package/dist/security/index.d.ts +0 -38
  188. package/dist/security/index.d.ts.map +0 -1
  189. package/dist/security/index.js +0 -47
  190. package/dist/security/index.js.map +0 -1
  191. package/dist/security/persistence-analyzer.d.ts +0 -56
  192. package/dist/security/persistence-analyzer.d.ts.map +0 -1
  193. package/dist/security/persistence-analyzer.js +0 -187
  194. package/dist/security/persistence-analyzer.js.map +0 -1
  195. package/dist/security/persistence-cli.d.ts +0 -36
  196. package/dist/security/persistence-cli.d.ts.map +0 -1
  197. package/dist/security/persistence-cli.js +0 -160
  198. package/dist/security/persistence-cli.js.map +0 -1
  199. package/dist/security/persistence-research.d.ts +0 -92
  200. package/dist/security/persistence-research.d.ts.map +0 -1
  201. package/dist/security/persistence-research.js +0 -364
  202. package/dist/security/persistence-research.js.map +0 -1
  203. package/dist/security/research/persistenceResearch.d.ts +0 -97
  204. package/dist/security/research/persistenceResearch.d.ts.map +0 -1
  205. package/dist/security/research/persistenceResearch.js +0 -282
  206. package/dist/security/research/persistenceResearch.js.map +0 -1
  207. package/dist/security/security-integration.d.ts +0 -74
  208. package/dist/security/security-integration.d.ts.map +0 -1
  209. package/dist/security/security-integration.js +0 -137
  210. package/dist/security/security-integration.js.map +0 -1
  211. package/dist/security/security-testing-framework.d.ts +0 -112
  212. package/dist/security/security-testing-framework.d.ts.map +0 -1
  213. package/dist/security/security-testing-framework.js +0 -364
  214. package/dist/security/security-testing-framework.js.map +0 -1
  215. package/dist/security/simulation/attackSimulation.d.ts +0 -93
  216. package/dist/security/simulation/attackSimulation.d.ts.map +0 -1
  217. package/dist/security/simulation/attackSimulation.js +0 -341
  218. package/dist/security/simulation/attackSimulation.js.map +0 -1
  219. package/dist/security/strategic-operations.d.ts +0 -100
  220. package/dist/security/strategic-operations.d.ts.map +0 -1
  221. package/dist/security/strategic-operations.js +0 -276
  222. package/dist/security/strategic-operations.js.map +0 -1
  223. package/dist/security/tool-security-wrapper.d.ts +0 -58
  224. package/dist/security/tool-security-wrapper.d.ts.map +0 -1
  225. package/dist/security/tool-security-wrapper.js +0 -156
  226. package/dist/security/tool-security-wrapper.js.map +0 -1
  227. package/dist/shell/claudeCodeStreamHandler.d.ts +0 -145
  228. package/dist/shell/claudeCodeStreamHandler.d.ts.map +0 -1
  229. package/dist/shell/claudeCodeStreamHandler.js +0 -322
  230. package/dist/shell/claudeCodeStreamHandler.js.map +0 -1
  231. package/dist/shell/inputQueueManager.d.ts +0 -144
  232. package/dist/shell/inputQueueManager.d.ts.map +0 -1
  233. package/dist/shell/inputQueueManager.js +0 -290
  234. package/dist/shell/inputQueueManager.js.map +0 -1
  235. package/dist/shell/streamingOutputManager.d.ts +0 -115
  236. package/dist/shell/streamingOutputManager.d.ts.map +0 -1
  237. package/dist/shell/streamingOutputManager.js +0 -225
  238. package/dist/shell/streamingOutputManager.js.map +0 -1
  239. package/dist/ui/persistentPrompt.d.ts +0 -50
  240. package/dist/ui/persistentPrompt.d.ts.map +0 -1
  241. package/dist/ui/persistentPrompt.js +0 -92
  242. package/dist/ui/persistentPrompt.js.map +0 -1
  243. package/dist/ui/terminalUISchema.d.ts +0 -195
  244. package/dist/ui/terminalUISchema.d.ts.map +0 -1
  245. package/dist/ui/terminalUISchema.js +0 -113
  246. package/dist/ui/terminalUISchema.js.map +0 -1
  247. package/scripts/deploy-security-capabilities.js +0 -178
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/core/unified/version.ts"],"names":[],"mappings":"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"}
@@ -1,454 +0,0 @@
1
- /**
2
- * Unified Version Manager
3
- *
4
- * Comprehensive semantic versioning system with compatibility checking,
5
- * dependency resolution, and self-upgrade capabilities.
6
- *
7
- * Principal Investigator: Bo Shang
8
- * Framework: erosolar-cli
9
- */
10
- // ============================================================================
11
- // Version Parsing and Formatting
12
- // ============================================================================
13
- /**
14
- * Parse a semantic version string
15
- */
16
- export function parseVersion(versionStr) {
17
- // Match: major.minor.patch[-prerelease][+build]
18
- const regex = /^(\d+)\.(\d+)\.(\d+)(?:-([a-zA-Z0-9.-]+))?(?:\+([a-zA-Z0-9.-]+))?$/;
19
- const match = versionStr.trim().match(regex);
20
- if (!match) {
21
- throw new Error(`Invalid version string: ${versionStr}`);
22
- }
23
- return {
24
- major: parseInt(match[1] || '0', 10),
25
- minor: parseInt(match[2] || '0', 10),
26
- patch: parseInt(match[3] || '0', 10),
27
- prerelease: match[4] || undefined,
28
- build: match[5] || undefined,
29
- };
30
- }
31
- /**
32
- * Format a semantic version to string
33
- */
34
- export function formatVersion(version) {
35
- let str = `${version.major}.${version.minor}.${version.patch}`;
36
- if (version.prerelease) {
37
- str += `-${version.prerelease}`;
38
- }
39
- if (version.build) {
40
- str += `+${version.build}`;
41
- }
42
- return str;
43
- }
44
- // ============================================================================
45
- // Version Comparison
46
- // ============================================================================
47
- /**
48
- * Compare two semantic versions
49
- * Returns: -1 if a < b, 0 if a == b, 1 if a > b
50
- */
51
- export function compareVersions(a, b) {
52
- // Compare major
53
- if (a.major !== b.major) {
54
- return a.major < b.major ? -1 : 1;
55
- }
56
- // Compare minor
57
- if (a.minor !== b.minor) {
58
- return a.minor < b.minor ? -1 : 1;
59
- }
60
- // Compare patch
61
- if (a.patch !== b.patch) {
62
- return a.patch < b.patch ? -1 : 1;
63
- }
64
- // Compare prerelease
65
- // A version without prerelease > version with prerelease
66
- if (a.prerelease && !b.prerelease)
67
- return -1;
68
- if (!a.prerelease && b.prerelease)
69
- return 1;
70
- if (a.prerelease && b.prerelease) {
71
- const aParts = a.prerelease.split('.');
72
- const bParts = b.prerelease.split('.');
73
- for (let i = 0; i < Math.max(aParts.length, bParts.length); i++) {
74
- const aPart = aParts[i];
75
- const bPart = bParts[i];
76
- if (aPart === undefined)
77
- return -1;
78
- if (bPart === undefined)
79
- return 1;
80
- const aNum = parseInt(aPart, 10);
81
- const bNum = parseInt(bPart, 10);
82
- if (!isNaN(aNum) && !isNaN(bNum)) {
83
- if (aNum !== bNum)
84
- return aNum < bNum ? -1 : 1;
85
- }
86
- else {
87
- if (aPart !== bPart)
88
- return aPart < bPart ? -1 : 1;
89
- }
90
- }
91
- }
92
- return 0;
93
- }
94
- /**
95
- * Check if version a is less than version b
96
- */
97
- export function versionLt(a, b) {
98
- return compareVersions(a, b) < 0;
99
- }
100
- /**
101
- * Check if version a is less than or equal to version b
102
- */
103
- export function versionLte(a, b) {
104
- return compareVersions(a, b) <= 0;
105
- }
106
- /**
107
- * Check if version a is greater than version b
108
- */
109
- export function versionGt(a, b) {
110
- return compareVersions(a, b) > 0;
111
- }
112
- /**
113
- * Check if version a is greater than or equal to version b
114
- */
115
- export function versionGte(a, b) {
116
- return compareVersions(a, b) >= 0;
117
- }
118
- /**
119
- * Check if two versions are equal
120
- */
121
- export function versionEq(a, b) {
122
- return compareVersions(a, b) === 0;
123
- }
124
- // ============================================================================
125
- // Version Bumping
126
- // ============================================================================
127
- /**
128
- * Bump a version
129
- */
130
- export function bumpVersion(version, bump) {
131
- const result = { ...version };
132
- switch (bump) {
133
- case 'major':
134
- result.major += 1;
135
- result.minor = 0;
136
- result.patch = 0;
137
- result.prerelease = undefined;
138
- break;
139
- case 'minor':
140
- result.minor += 1;
141
- result.patch = 0;
142
- result.prerelease = undefined;
143
- break;
144
- case 'patch':
145
- result.patch += 1;
146
- result.prerelease = undefined;
147
- break;
148
- case 'prerelease':
149
- if (result.prerelease) {
150
- // Increment prerelease number if it ends with a number
151
- const match = result.prerelease.match(/^(.*)\.(\d+)$/);
152
- if (match && match[1] && match[2]) {
153
- result.prerelease = `${match[1]}.${parseInt(match[2], 10) + 1}`;
154
- }
155
- else {
156
- result.prerelease = `${result.prerelease}.1`;
157
- }
158
- }
159
- else {
160
- result.prerelease = 'alpha.1';
161
- }
162
- break;
163
- }
164
- return result;
165
- }
166
- // ============================================================================
167
- // Version Constraints
168
- // ============================================================================
169
- /**
170
- * Parse a version constraint string
171
- * Examples: ">=1.0.0", "^2.0.0", "~1.2.3", "=1.0.0"
172
- */
173
- export function parseConstraint(constraintStr) {
174
- const regex = /^([=<>^~]+)?\s*(\d+\.\d+\.\d+.*)$/;
175
- const match = constraintStr.trim().match(regex);
176
- if (!match) {
177
- throw new Error(`Invalid version constraint: ${constraintStr}`);
178
- }
179
- const operator = (match[1] || '=');
180
- const version = parseVersion(match[2] || '0.0.0');
181
- return { operator, version };
182
- }
183
- /**
184
- * Check if a version satisfies a constraint
185
- */
186
- export function satisfiesConstraint(version, constraint) {
187
- const { operator, version: target } = constraint;
188
- switch (operator) {
189
- case '=':
190
- return versionEq(version, target);
191
- case '>':
192
- return versionGt(version, target);
193
- case '>=':
194
- return versionGte(version, target);
195
- case '<':
196
- return versionLt(version, target);
197
- case '<=':
198
- return versionLte(version, target);
199
- case '^':
200
- // Compatible with: same major version, >= given version
201
- return (version.major === target.major &&
202
- versionGte(version, target));
203
- case '~':
204
- // Approximately equivalent: same major.minor, >= given version
205
- return (version.major === target.major &&
206
- version.minor === target.minor &&
207
- versionGte(version, target));
208
- default:
209
- return false;
210
- }
211
- }
212
- /**
213
- * Check if a version satisfies multiple constraints (AND)
214
- */
215
- export function satisfiesAllConstraints(version, constraints) {
216
- return constraints.every((c) => satisfiesConstraint(version, c));
217
- }
218
- /**
219
- * Parse and check a constraint string
220
- */
221
- export function satisfies(versionStr, constraintStr) {
222
- const version = parseVersion(versionStr);
223
- const constraint = parseConstraint(constraintStr);
224
- return satisfiesConstraint(version, constraint);
225
- }
226
- /**
227
- * Version Manager
228
- *
229
- * Manages version tracking, compatibility checking, and upgrade paths.
230
- */
231
- export class VersionManager {
232
- currentVersion;
233
- versionHistory = [];
234
- constructor(config) {
235
- this.currentVersion = parseVersion(config.currentVersion);
236
- }
237
- /**
238
- * Get current version
239
- */
240
- getCurrent() {
241
- return { ...this.currentVersion };
242
- }
243
- /**
244
- * Get current version string
245
- */
246
- getCurrentString() {
247
- return formatVersion(this.currentVersion);
248
- }
249
- /**
250
- * Check if an upgrade is available
251
- */
252
- isUpgradeAvailable(latestVersion) {
253
- const latest = parseVersion(latestVersion);
254
- return versionGt(latest, this.currentVersion);
255
- }
256
- /**
257
- * Check compatibility with a required version
258
- */
259
- checkCompatibility(requiredVersion) {
260
- const required = parseVersion(requiredVersion);
261
- if (versionLt(this.currentVersion, required)) {
262
- return {
263
- compatible: false,
264
- reason: `Current version ${formatVersion(this.currentVersion)} is less than required ${requiredVersion}`,
265
- };
266
- }
267
- // Check for major version compatibility
268
- if (this.currentVersion.major !== required.major) {
269
- return {
270
- compatible: false,
271
- reason: `Major version mismatch: ${this.currentVersion.major} vs ${required.major}`,
272
- };
273
- }
274
- return { compatible: true };
275
- }
276
- /**
277
- * Add a version to history
278
- */
279
- recordVersion(record) {
280
- this.versionHistory.push(record);
281
- this.versionHistory.sort((a, b) => compareVersions(a.version, b.version));
282
- }
283
- /**
284
- * Get version history
285
- */
286
- getHistory() {
287
- return [...this.versionHistory];
288
- }
289
- /**
290
- * Find versions matching a constraint
291
- */
292
- findMatchingVersions(constraintStr) {
293
- const constraint = parseConstraint(constraintStr);
294
- return this.versionHistory.filter((r) => satisfiesConstraint(r.version, constraint));
295
- }
296
- /**
297
- * Get upgrade path from current to target
298
- */
299
- getUpgradePath(targetVersion) {
300
- const target = parseVersion(targetVersion);
301
- if (versionLte(target, this.currentVersion)) {
302
- return [];
303
- }
304
- return this.versionHistory.filter((r) => versionGt(r.version, this.currentVersion) && versionLte(r.version, target));
305
- }
306
- /**
307
- * Check if upgrade path has breaking changes
308
- */
309
- hasBreakingChanges(targetVersion) {
310
- const path = this.getUpgradePath(targetVersion);
311
- return path.some((r) => r.breaking);
312
- }
313
- }
314
- /**
315
- * Plugin Dependency Resolver
316
- *
317
- * Resolves plugin dependencies and detects version conflicts.
318
- */
319
- export class PluginDependencyResolver {
320
- availableVersions = new Map();
321
- /**
322
- * Register available versions for a plugin
323
- */
324
- registerVersions(pluginId, versions) {
325
- this.availableVersions.set(pluginId, versions.map((v) => parseVersion(v)).sort((a, b) => compareVersions(b, a)) // Descending
326
- );
327
- }
328
- /**
329
- * Resolve dependencies
330
- */
331
- resolve(dependencies) {
332
- const resolved = [];
333
- const conflicts = [];
334
- // Group constraints by plugin
335
- const constraintsByPlugin = new Map();
336
- for (const dep of dependencies) {
337
- const constraint = parseConstraint(dep.versionConstraint);
338
- const existing = constraintsByPlugin.get(dep.pluginId) || [];
339
- existing.push(constraint);
340
- constraintsByPlugin.set(dep.pluginId, existing);
341
- }
342
- // Resolve each plugin
343
- for (const [pluginId, constraints] of Array.from(constraintsByPlugin.entries())) {
344
- const versions = this.availableVersions.get(pluginId) || [];
345
- // Find version satisfying all constraints
346
- const matchingVersion = versions.find((v) => satisfiesAllConstraints(v, constraints));
347
- if (matchingVersion) {
348
- const firstConstraint = constraints[0];
349
- resolved.push({
350
- pluginId,
351
- resolvedVersion: matchingVersion,
352
- constraint: firstConstraint,
353
- });
354
- }
355
- else {
356
- conflicts.push({
357
- pluginId,
358
- conflictingConstraints: constraints,
359
- reason: `No version of ${pluginId} satisfies all constraints`,
360
- });
361
- }
362
- }
363
- return { resolved, conflicts };
364
- }
365
- }
366
- /**
367
- * Self-Upgrade Manager
368
- *
369
- * Handles self-upgrade with backup and rollback support.
370
- */
371
- export class SelfUpgradeManager {
372
- currentVersion;
373
- backupVersion;
374
- constructor(config) {
375
- this.currentVersion = parseVersion(config.currentVersion);
376
- }
377
- /**
378
- * Check for available upgrades
379
- */
380
- async checkForUpgrades() {
381
- // In a real implementation, this would check a release server
382
- return {
383
- available: false,
384
- };
385
- }
386
- /**
387
- * Perform upgrade
388
- */
389
- async upgrade(targetVersion) {
390
- const target = parseVersion(targetVersion);
391
- if (versionLte(target, this.currentVersion)) {
392
- return {
393
- success: false,
394
- fromVersion: formatVersion(this.currentVersion),
395
- toVersion: targetVersion,
396
- error: 'Target version is not newer than current version',
397
- };
398
- }
399
- // Create backup
400
- this.backupVersion = { ...this.currentVersion };
401
- try {
402
- // In a real implementation, this would download and install the new version
403
- this.currentVersion = target;
404
- return {
405
- success: true,
406
- fromVersion: formatVersion(this.backupVersion),
407
- toVersion: targetVersion,
408
- };
409
- }
410
- catch (error) {
411
- return {
412
- success: false,
413
- fromVersion: formatVersion(this.currentVersion),
414
- toVersion: targetVersion,
415
- error: String(error),
416
- };
417
- }
418
- }
419
- /**
420
- * Rollback to previous version
421
- */
422
- async rollback() {
423
- if (!this.backupVersion) {
424
- return false;
425
- }
426
- this.currentVersion = this.backupVersion;
427
- this.backupVersion = undefined;
428
- return true;
429
- }
430
- /**
431
- * Get current version
432
- */
433
- getCurrentVersion() {
434
- return formatVersion(this.currentVersion);
435
- }
436
- }
437
- // ============================================================================
438
- // Utility Functions
439
- // ============================================================================
440
- /**
441
- * Create a version manager with default config
442
- */
443
- export function createVersionManager(currentVersion) {
444
- return new VersionManager({ currentVersion });
445
- }
446
- /**
447
- * Quick version check
448
- */
449
- export function isCompatible(current, required) {
450
- const currentV = parseVersion(current);
451
- const requiredV = parseVersion(required);
452
- return currentV.major === requiredV.major && versionGte(currentV, requiredV);
453
- }
454
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/core/unified/version.ts"],"names":[],"mappings":"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"}
@@ -1,112 +0,0 @@
1
- /**
2
- * Active Stack Security Module
3
- *
4
- * Ensures Erosolar CLI only operates on the active stack and nothing else.
5
- * Implements strict security rules to prevent vulnerabilities and unauthorized operations.
6
- *
7
- * @license MIT
8
- * @author Bo Shang
9
- *
10
- * DISCLAIMER: This software is provided for security testing and defensive purposes only.
11
- * Users are solely responsible for ensuring their use complies with applicable laws.
12
- */
13
- export interface ActiveStackSecurityConfig {
14
- /**
15
- * Whether to enable strict active stack validation
16
- */
17
- enabled: boolean;
18
- /**
19
- * Allowed target scopes for operations
20
- */
21
- allowedScopes: {
22
- /** Current working directory */
23
- cwd: boolean;
24
- /** Node.js project directories */
25
- nodeProjects: boolean;
26
- /** Git repositories */
27
- gitRepos: boolean;
28
- /** Temporary directories */
29
- tempDirs: boolean;
30
- };
31
- /**
32
- * Blocked operations
33
- */
34
- blockedOperations: {
35
- /** System file operations */
36
- systemFiles: boolean;
37
- /** Network operations to unauthorized targets */
38
- unauthorizedNetworking: boolean;
39
- /** File operations outside allowed scopes */
40
- outOfScopeFiles: boolean;
41
- /** Privileged operations */
42
- privilegedOps: boolean;
43
- };
44
- /**
45
- * Security validation rules
46
- */
47
- validation: {
48
- /** Require workspace context validation */
49
- workspaceContext: boolean;
50
- /** Validate file paths before operations */
51
- pathValidation: boolean;
52
- /** Check for suspicious patterns */
53
- patternDetection: boolean;
54
- /** Log security events */
55
- securityLogging: boolean;
56
- };
57
- }
58
- export interface SecurityValidationResult {
59
- allowed: boolean;
60
- reason?: string;
61
- severity: 'low' | 'medium' | 'high' | 'critical';
62
- details?: Record<string, unknown>;
63
- }
64
- export declare class ActiveStackSecurity {
65
- private config;
66
- private securityLog;
67
- constructor(config?: Partial<ActiveStackSecurityConfig>);
68
- /**
69
- * Validate a file operation
70
- */
71
- validateFileOperation(filePath: string, operation: 'read' | 'write' | 'delete'): SecurityValidationResult;
72
- /**
73
- * Validate a network operation
74
- */
75
- validateNetworkOperation(target: string, operation: 'fetch' | 'search' | 'extract'): SecurityValidationResult;
76
- /**
77
- * Validate a command execution
78
- */
79
- validateCommandExecution(command: string): SecurityValidationResult;
80
- /**
81
- * Get security log
82
- */
83
- getSecurityLog(): SecurityEvent[];
84
- /**
85
- * Clear security log
86
- */
87
- clearSecurityLog(): void;
88
- private validatePathScope;
89
- private detectSuspiciousPatterns;
90
- private validateSystemFileProtection;
91
- private isLocalhost;
92
- private validateDomain;
93
- private validateCommandSafety;
94
- private logSecurityEvent;
95
- private resolvePath;
96
- }
97
- export interface SecurityEvent {
98
- type: string;
99
- severity: 'low' | 'medium' | 'high' | 'critical';
100
- operation: string;
101
- timestamp: Date;
102
- reason: string;
103
- filePath?: string;
104
- target?: string;
105
- command?: string;
106
- details?: Record<string, unknown>;
107
- }
108
- /**
109
- * Global active stack security instance
110
- */
111
- export declare const activeStackSecurity: ActiveStackSecurity;
112
- //# sourceMappingURL=active-stack-security.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"active-stack-security.d.ts","sourceRoot":"","sources":["../../src/security/active-stack-security.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,aAAa,EAAE;QACb,gCAAgC;QAChC,GAAG,EAAE,OAAO,CAAC;QACb,kCAAkC;QAClC,YAAY,EAAE,OAAO,CAAC;QACtB,uBAAuB;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,4BAA4B;QAC5B,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;IAEF;;OAEG;IACH,iBAAiB,EAAE;QACjB,6BAA6B;QAC7B,WAAW,EAAE,OAAO,CAAC;QACrB,iDAAiD;QACjD,sBAAsB,EAAE,OAAO,CAAC;QAChC,6CAA6C;QAC7C,eAAe,EAAE,OAAO,CAAC;QACzB,4BAA4B;QAC5B,aAAa,EAAE,OAAO,CAAC;KACxB,CAAC;IAEF;;OAEG;IACH,UAAU,EAAE;QACV,2CAA2C;QAC3C,gBAAgB,EAAE,OAAO,CAAC;QAC1B,4CAA4C;QAC5C,cAAc,EAAE,OAAO,CAAC;QACxB,oCAAoC;QACpC,gBAAgB,EAAE,OAAO,CAAC;QAC1B,0BAA0B;QAC1B,eAAe,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,WAAW,CAAuB;gBAE9B,MAAM,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC;IAyBvD;;OAEG;IACH,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,wBAAwB;IAqDzG;;OAEG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,wBAAwB;IA2B7G;;OAEG;IACH,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB;IAsBnE;;OAEG;IACH,cAAc,IAAI,aAAa,EAAE;IAIjC;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAIxB,OAAO,CAAC,iBAAiB;IAqCzB,OAAO,CAAC,wBAAwB;IAsBhC,OAAO,CAAC,4BAA4B;IAsBpC,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,qBAAqB;IA6B7B,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,WAAW;CAOpB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,qBAA4B,CAAC"}