erosolar-cli 1.7.457 → 1.7.459
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/dist/core/updateChecker.d.ts +17 -0
- package/dist/core/updateChecker.d.ts.map +1 -0
- package/dist/core/updateChecker.js +72 -0
- package/dist/core/updateChecker.js.map +1 -0
- package/dist/shell/interactiveShell.d.ts +3 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +75 -15
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/ui/UnifiedUIRenderer.d.ts +5 -0
- package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -1
- package/dist/ui/UnifiedUIRenderer.js +37 -12
- package/dist/ui/UnifiedUIRenderer.js.map +1 -1
- package/dist/ui/display.d.ts +4 -0
- package/dist/ui/display.d.ts.map +1 -1
- package/dist/ui/display.js +13 -0
- package/dist/ui/display.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update Checker - Check for new versions of erosolar-cli on npm
|
|
3
|
+
*/
|
|
4
|
+
export interface UpdateInfo {
|
|
5
|
+
current: string;
|
|
6
|
+
latest: string;
|
|
7
|
+
updateAvailable: boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Check for updates from npm registry
|
|
11
|
+
*/
|
|
12
|
+
export declare function checkForUpdates(currentVersion: string): Promise<UpdateInfo | null>;
|
|
13
|
+
/**
|
|
14
|
+
* Format update notification message
|
|
15
|
+
*/
|
|
16
|
+
export declare function formatUpdateNotification(updateInfo: UpdateInfo): string;
|
|
17
|
+
//# sourceMappingURL=updateChecker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateChecker.d.ts","sourceRoot":"","sources":["../../src/core/updateChecker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;CAC1B;AAMD;;GAEG;AACH,wBAAsB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA6BxF;AAqBD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAYvE"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update Checker - Check for new versions of erosolar-cli on npm
|
|
3
|
+
*/
|
|
4
|
+
import { exec } from 'node:child_process';
|
|
5
|
+
import { promisify } from 'node:util';
|
|
6
|
+
import { theme } from '../ui/theme.js';
|
|
7
|
+
const execAsync = promisify(exec);
|
|
8
|
+
let updateCheckCache = null;
|
|
9
|
+
let lastCheckTime = 0;
|
|
10
|
+
const CACHE_DURATION = 1000 * 60 * 60; // 1 hour
|
|
11
|
+
/**
|
|
12
|
+
* Check for updates from npm registry
|
|
13
|
+
*/
|
|
14
|
+
export async function checkForUpdates(currentVersion) {
|
|
15
|
+
const now = Date.now();
|
|
16
|
+
// Return cached result if still valid
|
|
17
|
+
if (updateCheckCache && now - lastCheckTime < CACHE_DURATION) {
|
|
18
|
+
return updateCheckCache;
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
const { stdout } = await execAsync('npm view erosolar-cli version', {
|
|
22
|
+
timeout: 5000,
|
|
23
|
+
encoding: 'utf8',
|
|
24
|
+
});
|
|
25
|
+
const latest = stdout.trim();
|
|
26
|
+
const updateAvailable = compareVersions(latest, currentVersion) > 0;
|
|
27
|
+
updateCheckCache = {
|
|
28
|
+
current: currentVersion,
|
|
29
|
+
latest,
|
|
30
|
+
updateAvailable,
|
|
31
|
+
};
|
|
32
|
+
lastCheckTime = now;
|
|
33
|
+
return updateCheckCache;
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
// Silently fail - don't block startup for update checks
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Compare semantic versions
|
|
42
|
+
* Returns: 1 if v1 > v2, -1 if v1 < v2, 0 if equal
|
|
43
|
+
*/
|
|
44
|
+
function compareVersions(v1, v2) {
|
|
45
|
+
const parts1 = v1.replace(/^v/, '').split('.').map(Number);
|
|
46
|
+
const parts2 = v2.replace(/^v/, '').split('.').map(Number);
|
|
47
|
+
for (let i = 0; i < Math.max(parts1.length, parts2.length); i++) {
|
|
48
|
+
const p1 = parts1[i] || 0;
|
|
49
|
+
const p2 = parts2[i] || 0;
|
|
50
|
+
if (p1 > p2)
|
|
51
|
+
return 1;
|
|
52
|
+
if (p1 < p2)
|
|
53
|
+
return -1;
|
|
54
|
+
}
|
|
55
|
+
return 0;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Format update notification message
|
|
59
|
+
*/
|
|
60
|
+
export function formatUpdateNotification(updateInfo) {
|
|
61
|
+
const lines = [
|
|
62
|
+
'',
|
|
63
|
+
theme.warning('╭─────────────────────────────────────────────────────────╮'),
|
|
64
|
+
theme.warning('│') + ' ' + theme.info('📦 Update Available!') + ' '.repeat(42) + theme.warning('│'),
|
|
65
|
+
theme.warning('│') + ` Current: ${theme.ui.muted(updateInfo.current)} → Latest: ${theme.success(updateInfo.latest)}` + ' '.repeat(Math.max(0, 42 - `Current: ${updateInfo.current} → Latest: ${updateInfo.latest}`.length)) + theme.warning('│'),
|
|
66
|
+
theme.warning('│') + ' ' + theme.ui.muted('Run: ') + theme.primary('npm install -g erosolar-cli@latest') + ' '.repeat(17) + theme.warning('│'),
|
|
67
|
+
theme.warning('╰─────────────────────────────────────────────────────────╯'),
|
|
68
|
+
'',
|
|
69
|
+
];
|
|
70
|
+
return lines.join('\n');
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=updateChecker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateChecker.js","sourceRoot":"","sources":["../../src/core/updateChecker.ts"],"names":[],"mappings":"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"}
|
|
@@ -124,7 +124,9 @@ export declare class InteractiveShell {
|
|
|
124
124
|
private initializeSessionHistory;
|
|
125
125
|
private showSessionResumeNotice;
|
|
126
126
|
private showWelcomeBanner;
|
|
127
|
+
private checkAndShowUpdates;
|
|
127
128
|
private buildClaudeStyleBanner;
|
|
129
|
+
private getPackageInfo;
|
|
128
130
|
private syncRendererInput;
|
|
129
131
|
private pushUiEvent;
|
|
130
132
|
/**
|
|
@@ -436,6 +438,7 @@ export declare class InteractiveShell {
|
|
|
436
438
|
private parseAIDesignedTests;
|
|
437
439
|
private isDangerousTestCommand;
|
|
438
440
|
private runAIDesignedTests;
|
|
441
|
+
private buildTestSummary;
|
|
439
442
|
/**
|
|
440
443
|
* Feed build errors back to the agent conversation for automatic fixing.
|
|
441
444
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAiDtE,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAwB,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAyB,KAAK,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AA4FtF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AASxD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,WAAW,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,cAAc,CAAC;IAC7B,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,aAAa,EAAE,iBAAiB,CAAC;IACjC,EAAE,EAAE,cAAc,CAAC;IACnB,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,oBAAoB;IAC5B,cAAc,EAAE,WAAW,CAAC;IAC5B,gBAAgB,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,OAAO,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAwID,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAe;IAC9C,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAmC;IAC7D,OAAO,CAAC,kBAAkB,CAAmD;IAC7E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IACjD,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAuC;IACzE,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2B;IACzD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAClD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAiB;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAiB;IAClD,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,yBAAyB,CAAuB;IACxD,OAAO,CAAC,gBAAgB,CAA8E;IACtG,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,oBAAoB,CAAgC;IAC5D,OAAO,CAAC,uBAAuB,CAA8C;IAC7E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IACxD,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,mBAAmB,CAAU;IACrC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,sBAAsB,CAAuB;IACrD,OAAO,CAAC,kBAAkB,CAAsC;IAChE,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmC;IACpE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuB;IAC5D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAW;IAE3C,OAAO,CAAC,oBAAoB,CAKpB;IAER,OAAO,CAAC,gBAAgB,CAAS;IAEjC,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,eAAe,CAAuB;IAE9C,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,oBAAoB,CAAuB;IAEnD,OAAO,CAAC,WAAW,CAAuB;IAE1C,OAAO,CAAC,uBAAuB,CAAuB;IACtD,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,2BAA2B,CAAuB;IAC1D,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,yBAAyB,CAAuB;IACxD,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,kBAAkB,CAA2C;IACrE,OAAO,CAAC,sBAAsB,CAAM;IACpC,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,kBAAkB,CAA+B;IACzD,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAU;IACjD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;gBAExC,MAAM,EAAE,WAAW;IAwI/B,OAAO,CAAC,yBAAyB,CAAgB;IAEjD,OAAO,CAAC,0BAA0B;IAwBlC,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,wBAAwB;IAwChC,OAAO,CAAC,uBAAuB;YAQjB,iBAAiB;YAejB,mBAAmB;IAgBjC,OAAO,CAAC,sBAAsB;IAyB9B,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBlB,KAAK,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAelD,OAAO,CAAC,wBAAwB;IAMhC;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8BzB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiD1B;;OAEG;YACW,uBAAuB;IAMrC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,mBAAmB;IAsB3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;YACW,wBAAwB;IAiCtC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAkC7B,OAAO,CAAC,oBAAoB;IAe5B;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAmChB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAUlC;;OAEG;IACH,OAAO,CAAC,mBAAmB;YAMb,uBAAuB;YA6DvB,oBAAoB;YAqBpB,yBAAyB;YA8CzB,qBAAqB;IA6BnC;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAiBnF,OAAO,CAAC,qBAAqB;YA2Cf,uBAAuB;IAkFrC,OAAO,CAAC,aAAa;IAUrB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAiChC,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,mBAAmB;IAS3B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAsCzB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,uBAAuB;IAqB/B,OAAO,CAAC,sBAAsB;IAoC9B,OAAO,CAAC,iBAAiB;IA6BzB,OAAO,CAAC,wBAAwB;IA2BhC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAgBnC,OAAO,CAAC,8BAA8B;IAatC,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,uBAAuB;IAiC/B,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,qBAAqB;IA2B7B,OAAO,CAAC,uBAAuB;IAW/B;;OAEG;YACW,oBAAoB;YA2BpB,iBAAiB;IA+C/B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,aAAa;IAYrB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;YAWlB,wBAAwB;YAoCxB,mBAAmB;YAuKnB,qBAAqB;IA+BnC,OAAO,CAAC,QAAQ;IAgChB,OAAO,CAAC,SAAS;YAwCH,oBAAoB;YAiBpB,8BAA8B;IAkC5C,OAAO,CAAC,0BAA0B;YAgDpB,oBAAoB;YAsCpB,mBAAmB;YA0EnB,eAAe;IAS7B,OAAO,CAAC,qBAAqB;IAkC7B,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,qBAAqB;IA4C7B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,0BAA0B;IA4BlC,OAAO,CAAC,gBAAgB;IAmExB,OAAO,CAAC,kBAAkB;IAkH1B;;OAEG;YACW,wBAAwB;IAyJtC;;OAEG;YACW,4BAA4B;IAkH1C;;OAEG;YACW,mBAAmB;IAmajC;;OAEG;YACW,oBAAoB;IAOlC;;OAEG;YACW,mBAAmB;IA+JjC;;OAEG;YACW,iBAAiB;IAqK/B,OAAO,CAAC,gBAAgB;IAmCxB,OAAO,CAAC,eAAe;YAmCT,kBAAkB;YA+BlB,kBAAkB;IA8BhC,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,qBAAqB;IAoB7B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,yBAAyB;YAsBnB,mBAAmB;IAiBjC,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,kBAAkB;IAkC1B,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,kBAAkB;YAWZ,mBAAmB;IAkBjC,OAAO,CAAC,mBAAmB;YAcb,mBAAmB;YASnB,2BAA2B;IASzC,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,0BAA0B;IAsBlC,OAAO,CAAC,wBAAwB;IAkBhC,OAAO,CAAC,iBAAiB;YAmBX,oBAAoB;IAYlC,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,yBAAyB;IA4CjC,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,qBAAqB;YAQf,aAAa;IAyC3B,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,iCAAiC;IA8EzC,OAAO,CAAC,kBAAkB;IAkE1B,OAAO,CAAC,eAAe;IAoBvB,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,oBAAoB;YA6Bd,aAAa;IAoG3B,OAAO,CAAC,iBAAiB;IAqFzB,OAAO,CAAC,eAAe;IAiJvB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,qBAAqB;YA0Bf,4BAA4B;YAsC5B,oBAAoB;YA6CpB,gBAAgB;YAyBhB,qBAAqB;YAuCrB,iBAAiB;YA+CjB,cAAc;IA+H5B;;;;;;;;;;;OAWG;YACW,wBAAwB;IAwQtC;;;;OAIG;IACH,OAAO,CAAC,+BAA+B;IAiGvC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAwBhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;YAahB,mBAAmB;IAwBjC,OAAO,CAAC,4BAA4B;IAYpC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,oBAAoB;YAuBd,gBAAgB;IAoE9B;;;OAGG;YACW,gBAAgB;IAmE9B,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,oBAAoB;IAiC5B,OAAO,CAAC,sBAAsB;YAkBhB,kBAAkB;IA0GhC,OAAO,CAAC,gBAAgB;IA0BxB;;OAEG;YACW,sBAAsB;IA8CpC,OAAO,CAAC,YAAY;IA4KpB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAOlC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAkCjC,OAAO,CAAC,iBAAiB;IAgCzB,OAAO,CAAC,sBAAsB;IAkB9B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,sBAAsB;IAsC9B,OAAO,CAAC,WAAW;YAaL,iBAAiB;IAkJ/B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,sBAAsB;IAkB9B,OAAO,CAAC,uBAAuB;IAe/B,OAAO,CAAC,wBAAwB;IA0ChC,OAAO,CAAC,sBAAsB;IAqB9B,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,uBAAuB;IA0B/B,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,gBAAgB;YAkBV,mBAAmB;IA2BjC,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,qBAAqB;IAmB7B,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,4BAA4B;IAUpC,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,wBAAwB;IAUhC;;OAEG;YACW,qBAAqB;IA6DnC;;OAEG;YACW,qBAAqB;IAyCnC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;OAEG;YACW,kBAAkB;IA2BhC;;OAEG;YACW,kBAAkB;IA6EhC;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;;OAGG;IACH,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC;QACjC,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,GAAG,IAAI;CAIV"}
|
|
@@ -364,27 +364,66 @@ export class InteractiveShell {
|
|
|
364
364
|
display.showInfo(this.sessionResumeNotice);
|
|
365
365
|
this.sessionResumeNotice = null;
|
|
366
366
|
}
|
|
367
|
-
showWelcomeBanner(force = false) {
|
|
367
|
+
async showWelcomeBanner(force = false) {
|
|
368
368
|
if (this.welcomeShown && !force) {
|
|
369
369
|
return;
|
|
370
370
|
}
|
|
371
371
|
const banner = this.buildClaudeStyleBanner();
|
|
372
372
|
this.streamEventBlock(banner);
|
|
373
373
|
this.welcomeShown = true;
|
|
374
|
+
// Check for updates asynchronously (non-blocking)
|
|
375
|
+
void this.checkAndShowUpdates();
|
|
374
376
|
this.requestPromptRefresh(true);
|
|
375
377
|
}
|
|
378
|
+
async checkAndShowUpdates() {
|
|
379
|
+
try {
|
|
380
|
+
const { checkForUpdates, formatUpdateNotification } = await import('../core/updateChecker.js');
|
|
381
|
+
const pkg = this.getPackageInfo();
|
|
382
|
+
const currentVersion = pkg.version || '1.7.458';
|
|
383
|
+
const updateInfo = await checkForUpdates(currentVersion);
|
|
384
|
+
if (updateInfo && updateInfo.updateAvailable) {
|
|
385
|
+
const notification = formatUpdateNotification(updateInfo);
|
|
386
|
+
this.streamEventBlock(notification);
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
catch (error) {
|
|
390
|
+
// Silently fail - don't interrupt user experience
|
|
391
|
+
}
|
|
392
|
+
}
|
|
376
393
|
buildClaudeStyleBanner() {
|
|
377
|
-
const
|
|
378
|
-
const
|
|
379
|
-
|
|
380
|
-
const
|
|
381
|
-
'
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
'
|
|
394
|
+
const pkg = this.getPackageInfo();
|
|
395
|
+
const version = pkg.version || '1.7.458';
|
|
396
|
+
// Advanced ASCII art banner
|
|
397
|
+
const banner = [
|
|
398
|
+
theme.primary('╔═══════════════════════════════════════════════════════════╗'),
|
|
399
|
+
theme.primary('║') + theme.success(' ███████╗██████╗ ██████╗ ███████╗ ██████╗ ██╗ █████╗ ██████╗ ') + theme.primary('║'),
|
|
400
|
+
theme.primary('║') + theme.success(' ██╔════╝██╔══██╗██╔═══██╗██╔════╝██╔═══██╗██║ ██╔══██╗██╔══██╗') + theme.primary('║'),
|
|
401
|
+
theme.primary('║') + theme.success(' █████╗ ██████╔╝██║ ██║███████╗██║ ██║██║ ███████║██████╔╝') + theme.primary('║'),
|
|
402
|
+
theme.primary('║') + theme.success(' ██╔══╝ ██╔══██╗██║ ██║╚════██║██║ ██║██║ ██╔══██║██╔══██╗') + theme.primary('║'),
|
|
403
|
+
theme.primary('║') + theme.success(' ███████╗██║ ██║╚██████╔╝███████║╚██████╔╝███████╗██║ ██║██║ ██║') + theme.primary('║'),
|
|
404
|
+
theme.primary('║') + theme.success(' ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝') + theme.primary('║'),
|
|
405
|
+
theme.primary('╠═══════════════════════════════════════════════════════════╣'),
|
|
406
|
+
theme.primary('║') + ` ${theme.info(`Erosolar-CLI v${version}`)}` + ' '.repeat(Math.max(0, 58 - `Erosolar-CLI v${version}`.length)) + theme.primary('║'),
|
|
407
|
+
theme.primary('║') + ` ${theme.ui.muted(`Welcome back ${this.profileLabel}!`)}` + ' '.repeat(Math.max(0, 58 - `Welcome back ${this.profileLabel}!`.length)) + theme.primary('║'),
|
|
408
|
+
theme.primary('║') + ` ${theme.ui.muted(`${this.sessionState.model} @ ${this.providerLabel(this.sessionState.provider)}`)}` + ' '.repeat(Math.max(0, 58 - `${this.sessionState.model} @ ${this.providerLabel(this.sessionState.provider)}`.length)) + theme.primary('║'),
|
|
409
|
+
theme.primary('╠═══════════════════════════════════════════════════════════╣'),
|
|
410
|
+
theme.primary('║') + ` ${theme.ui.muted('/help for commands · /model to switch · /secrets for keys')}` + ' '.repeat(Math.max(0, 58 - '/help for commands · /model to switch · /secrets for keys'.length)) + theme.primary('║'),
|
|
411
|
+
theme.primary('╚═══════════════════════════════════════════════════════════╝'),
|
|
386
412
|
];
|
|
387
|
-
return
|
|
413
|
+
return banner.join('\n');
|
|
414
|
+
}
|
|
415
|
+
getPackageInfo() {
|
|
416
|
+
try {
|
|
417
|
+
const pkgPath = join(process.cwd(), 'package.json');
|
|
418
|
+
if (existsSync(pkgPath)) {
|
|
419
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
420
|
+
return pkg;
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
catch {
|
|
424
|
+
// Ignore errors
|
|
425
|
+
}
|
|
426
|
+
return { version: '1.7.458' };
|
|
388
427
|
}
|
|
389
428
|
syncRendererInput() {
|
|
390
429
|
// No-op: UnifiedUIRenderer handles its own input state now
|
|
@@ -5257,20 +5296,21 @@ What's the next action?`;
|
|
|
5257
5296
|
});
|
|
5258
5297
|
combinedOutput = [stdout, stderr].filter(Boolean).join('\n').trim();
|
|
5259
5298
|
display.showSystemMessage('✅ Auto-tests finished.');
|
|
5299
|
+
const summary = this.buildTestSummary(command, combinedOutput, true);
|
|
5300
|
+
display.showTestEvent(summary);
|
|
5260
5301
|
this.statusTracker.clearOverride('tests');
|
|
5261
5302
|
}
|
|
5262
5303
|
catch (error) {
|
|
5263
5304
|
combinedOutput = this.formatCommandError(error);
|
|
5264
5305
|
display.showWarning('⚠️ Auto-tests failed. Review output below.');
|
|
5306
|
+
const summary = this.buildTestSummary(command, combinedOutput, false);
|
|
5307
|
+
display.showTestEvent(summary);
|
|
5265
5308
|
this.statusTracker.pushOverride('tests', 'Tests failing', {
|
|
5266
5309
|
detail: 'Auto-run npm test failed',
|
|
5267
5310
|
tone: 'danger',
|
|
5268
5311
|
});
|
|
5269
5312
|
}
|
|
5270
5313
|
finally {
|
|
5271
|
-
if (combinedOutput) {
|
|
5272
|
-
this.writeLocked(`${combinedOutput}\n`);
|
|
5273
|
-
}
|
|
5274
5314
|
try {
|
|
5275
5315
|
await this.runAIDesignedTests(trigger, assistantResponse, verificationContext);
|
|
5276
5316
|
}
|
|
@@ -5510,7 +5550,27 @@ Return ONLY JSON array:
|
|
|
5510
5550
|
results.push(` error: ${message.slice(0, 240)}`);
|
|
5511
5551
|
}
|
|
5512
5552
|
}
|
|
5513
|
-
display.
|
|
5553
|
+
display.showTestEvent(results.join('\n'));
|
|
5554
|
+
}
|
|
5555
|
+
buildTestSummary(command, output, success) {
|
|
5556
|
+
const lines = output.split('\n').map(line => line.trim()).filter(Boolean);
|
|
5557
|
+
const passFailLines = lines.filter(line => /^(PASS|FAIL)\s+/i.test(line)).slice(0, 6);
|
|
5558
|
+
const summaryLines = lines.filter(line => /^(Test Suites:|Tests:|Snapshots:|Time:)/i.test(line));
|
|
5559
|
+
const remainder = lines.length - (passFailLines.length + summaryLines.length);
|
|
5560
|
+
const header = success
|
|
5561
|
+
? `✅ Tests passed: ${command}`
|
|
5562
|
+
: `❌ Tests failed: ${command}`;
|
|
5563
|
+
const body = [];
|
|
5564
|
+
if (passFailLines.length) {
|
|
5565
|
+
body.push(...passFailLines);
|
|
5566
|
+
}
|
|
5567
|
+
if (summaryLines.length) {
|
|
5568
|
+
body.push(...summaryLines);
|
|
5569
|
+
}
|
|
5570
|
+
if (remainder > 0) {
|
|
5571
|
+
body.push(`… ${remainder} more line${remainder === 1 ? '' : 's'}`);
|
|
5572
|
+
}
|
|
5573
|
+
return [header, ...body].join('\n');
|
|
5514
5574
|
}
|
|
5515
5575
|
/**
|
|
5516
5576
|
* Feed build errors back to the agent conversation for automatic fixing.
|