lim 0.27.1 → 0.28.0
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/README.md +11 -0
- package/dist/base-command.d.ts +2 -0
- package/dist/base-command.d.ts.map +1 -1
- package/dist/base-command.js +12 -0
- package/dist/base-command.js.map +1 -1
- package/dist/commands/android/create.d.ts.map +1 -1
- package/dist/commands/android/create.js +7 -2
- package/dist/commands/android/create.js.map +1 -1
- package/dist/commands/asset/push.d.ts +1 -0
- package/dist/commands/asset/push.d.ts.map +1 -1
- package/dist/commands/asset/push.js +14 -0
- package/dist/commands/asset/push.js.map +1 -1
- package/dist/commands/gradle/create.d.ts.map +1 -1
- package/dist/commands/gradle/create.js +7 -2
- package/dist/commands/gradle/create.js.map +1 -1
- package/dist/commands/ios/create.d.ts.map +1 -1
- package/dist/commands/ios/create.js +7 -2
- package/dist/commands/ios/create.js.map +1 -1
- package/dist/commands/ios/tap-element.d.ts +1 -0
- package/dist/commands/ios/tap-element.d.ts.map +1 -1
- package/dist/commands/ios/tap-element.js +14 -7
- package/dist/commands/ios/tap-element.js.map +1 -1
- package/dist/commands/ios/type.d.ts +1 -0
- package/dist/commands/ios/type.d.ts.map +1 -1
- package/dist/commands/ios/type.js +13 -6
- package/dist/commands/ios/type.js.map +1 -1
- package/dist/commands/run.d.ts +2 -0
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +66 -20
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/skills/install.d.ts.map +1 -1
- package/dist/commands/skills/install.js +26 -0
- package/dist/commands/skills/install.js.map +1 -1
- package/dist/commands/xcode/build.d.ts +1 -0
- package/dist/commands/xcode/build.d.ts.map +1 -1
- package/dist/commands/xcode/build.js +14 -1
- package/dist/commands/xcode/build.js.map +1 -1
- package/dist/commands/xcode/create.d.ts.map +1 -1
- package/dist/commands/xcode/create.js +7 -2
- package/dist/commands/xcode/create.js.map +1 -1
- package/dist/lib/auth.d.ts +3 -0
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/lib/auth.js +53 -29
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/auth.test.d.ts +2 -0
- package/dist/lib/auth.test.d.ts.map +1 -0
- package/dist/lib/auth.test.js +78 -0
- package/dist/lib/auth.test.js.map +1 -0
- package/dist/lib/daemon.js +1 -1
- package/dist/lib/daemon.js.map +1 -1
- package/dist/lib/onboarding-telemetry.test.d.ts +2 -0
- package/dist/lib/onboarding-telemetry.test.d.ts.map +1 -0
- package/dist/lib/onboarding-telemetry.test.js +87 -0
- package/dist/lib/onboarding-telemetry.test.js.map +1 -0
- package/dist/lib/onboarding.d.ts +3 -1
- package/dist/lib/onboarding.d.ts.map +1 -1
- package/dist/lib/onboarding.js +37 -4
- package/dist/lib/onboarding.js.map +1 -1
- package/dist/lib/telemetry-config.d.ts +3 -0
- package/dist/lib/telemetry-config.d.ts.map +1 -0
- package/dist/lib/telemetry-config.js +8 -0
- package/dist/lib/telemetry-config.js.map +1 -0
- package/dist/lib/telemetry.d.ts +28 -0
- package/dist/lib/telemetry.d.ts.map +1 -0
- package/dist/lib/telemetry.js +223 -0
- package/dist/lib/telemetry.js.map +1 -0
- package/dist/lib/telemetry.test.d.ts +2 -0
- package/dist/lib/telemetry.test.d.ts.map +1 -0
- package/dist/lib/telemetry.test.js +161 -0
- package/dist/lib/telemetry.test.js.map +1 -0
- package/dist/lib/upload-options.d.ts +8 -0
- package/dist/lib/upload-options.d.ts.map +1 -0
- package/dist/lib/upload-options.js +34 -0
- package/dist/lib/upload-options.js.map +1 -0
- package/package.json +3 -3
package/dist/lib/auth.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { writeConfig } from './config';
|
|
2
|
+
import { type TelemetryCapture } from './telemetry';
|
|
2
3
|
interface LoginOptions {
|
|
3
4
|
apiEndpoint: string;
|
|
4
5
|
consoleEndpoint: string;
|
|
@@ -9,6 +10,8 @@ interface LoginOptions {
|
|
|
9
10
|
fetcher?: typeof fetch;
|
|
10
11
|
hostname?: string;
|
|
11
12
|
timeoutMs?: number;
|
|
13
|
+
anonymousId?: string;
|
|
14
|
+
telemetry?: TelemetryCapture;
|
|
12
15
|
}
|
|
13
16
|
type LoginRuntimeOptions = Omit<LoginOptions, 'apiEndpoint' | 'consoleEndpoint' | 'version'>;
|
|
14
17
|
export declare function login(apiEndpoint: string, consoleEndpoint: string, version: string, options?: LoginRuntimeOptions): Promise<void>;
|
package/dist/lib/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAe,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAe,MAAM,UAAU,CAAC;AACpD,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAIrB,UAAU,YAAY;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,WAAW,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACrD,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAsBD,KAAK,mBAAmB,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,GAAG,iBAAiB,GAAG,SAAS,CAAC,CAAC;AAa7F,wBAAsB,KAAK,CACzB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiE3E;AA6HD,wBAAsB,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAOzE"}
|
package/dist/lib/auth.js
CHANGED
|
@@ -10,6 +10,7 @@ const child_process_1 = require("child_process");
|
|
|
10
10
|
const os_1 = __importDefault(require("os"));
|
|
11
11
|
const process_1 = __importDefault(require("process"));
|
|
12
12
|
const config_1 = require("./config");
|
|
13
|
+
const telemetry_1 = require("./telemetry");
|
|
13
14
|
const LOGIN_CALLBACK_TIMEOUT_MS = 5 * 60 * 1000;
|
|
14
15
|
class RetryableLoginError extends Error {
|
|
15
16
|
}
|
|
@@ -25,38 +26,50 @@ async function login(apiEndpoint, consoleEndpoint, version, options = {}) {
|
|
|
25
26
|
}
|
|
26
27
|
async function loginWithOptions(options) {
|
|
27
28
|
const { apiEndpoint, consoleEndpoint, version, configWriter = config_1.writeConfig, fetcher = fetch, hostname = computerName(), log = console.log, } = options;
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
log(`\nConfirm this phrase in your browser: ${session.phrase}`);
|
|
31
|
-
log(`Opening this URL to log in: ${session.verificationUrl}\n\n`);
|
|
29
|
+
const telemetry = options.telemetry ?? telemetry_1.captureTelemetry;
|
|
30
|
+
const anonymousId = options.anonymousId ?? (0, telemetry_1.getTelemetryInstallationId)();
|
|
32
31
|
try {
|
|
33
|
-
await (
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
log('Waiting for you to confirm in browser...');
|
|
39
|
-
const pollIntervalMs = Math.max(1, session.pollIntervalSeconds ?? 2) * 1000;
|
|
40
|
-
for (;;) {
|
|
41
|
-
if (Date.now() >= deadline) {
|
|
42
|
-
throw loginTimeoutError();
|
|
43
|
-
}
|
|
44
|
-
let token;
|
|
32
|
+
await emitTelemetry(telemetry, 'cli_auth_started', { auth_method: 'browser' });
|
|
33
|
+
const deadline = Date.now() + (options.timeoutMs ?? LOGIN_CALLBACK_TIMEOUT_MS);
|
|
34
|
+
const session = await createSession(fetcher, apiEndpoint, consoleEndpoint, hostname, version, deadline, anonymousId);
|
|
35
|
+
log(`\nConfirm this phrase in your browser: ${session.phrase}`);
|
|
36
|
+
log(`Opening this URL to log in: ${session.verificationUrl}\n\n`);
|
|
45
37
|
try {
|
|
46
|
-
|
|
38
|
+
await (options.opener ?? openLoginUrl)(session.verificationUrl);
|
|
47
39
|
}
|
|
48
|
-
catch
|
|
49
|
-
|
|
50
|
-
|
|
40
|
+
catch {
|
|
41
|
+
// The URL is already printed above, so a failed opener does not block login.
|
|
42
|
+
}
|
|
43
|
+
log('Waiting for you to confirm in browser...');
|
|
44
|
+
const pollIntervalMs = Math.max(1, session.pollIntervalSeconds ?? 2) * 1000;
|
|
45
|
+
for (;;) {
|
|
46
|
+
if (Date.now() >= deadline) {
|
|
47
|
+
throw loginTimeoutError();
|
|
48
|
+
}
|
|
49
|
+
let token;
|
|
50
|
+
try {
|
|
51
|
+
token = await pollForToken(fetcher, apiEndpoint, session, deadline);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
if (!(err instanceof RetryableLoginError) || Date.now() >= deadline) {
|
|
55
|
+
throw err;
|
|
56
|
+
}
|
|
57
|
+
await sleep(Math.min(pollIntervalMs, Math.max(0, deadline - Date.now())));
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
if (token) {
|
|
61
|
+
configWriter({ [config_1.CONFIG_KEYS.apiKey]: token.apiKey });
|
|
62
|
+
return;
|
|
51
63
|
}
|
|
52
64
|
await sleep(Math.min(pollIntervalMs, Math.max(0, deadline - Date.now())));
|
|
53
|
-
continue;
|
|
54
65
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
66
|
+
}
|
|
67
|
+
catch (err) {
|
|
68
|
+
await emitTelemetry(telemetry, 'cli_auth_failed', {
|
|
69
|
+
auth_method: 'browser',
|
|
70
|
+
error_category: (0, telemetry_1.telemetryErrorCategory)(err),
|
|
71
|
+
});
|
|
72
|
+
throw err;
|
|
60
73
|
}
|
|
61
74
|
}
|
|
62
75
|
function computerName() {
|
|
@@ -79,13 +92,13 @@ function computerName() {
|
|
|
79
92
|
}
|
|
80
93
|
return os_1.default.hostname();
|
|
81
94
|
}
|
|
82
|
-
async function createSession(fetcher, apiEndpoint, consoleEndpoint, hostname, version, deadline) {
|
|
95
|
+
async function createSession(fetcher, apiEndpoint, consoleEndpoint, hostname, version, deadline, anonymousId) {
|
|
83
96
|
const response = await fetchWithDeadline(fetcher, new URL('/authn/cli/sessions', apiEndpoint), deadline, {
|
|
84
97
|
method: 'POST',
|
|
85
98
|
headers: {
|
|
86
99
|
'Content-Type': 'application/json',
|
|
87
100
|
},
|
|
88
|
-
body: JSON.stringify({ hostname, cliVersion: version }),
|
|
101
|
+
body: JSON.stringify({ hostname, cliVersion: version, ...(anonymousId ? { anonymousId } : {}) }),
|
|
89
102
|
});
|
|
90
103
|
if (!response.ok) {
|
|
91
104
|
throw new Error(`Failed to start CLI login session: ${await responseMessage(response)}`);
|
|
@@ -131,7 +144,10 @@ async function pollForToken(fetcher, apiEndpoint, session, deadline) {
|
|
|
131
144
|
if (!body.apiKey) {
|
|
132
145
|
throw new Error('Backend approved the CLI login session without returning an API key.');
|
|
133
146
|
}
|
|
134
|
-
return
|
|
147
|
+
return {
|
|
148
|
+
apiKey: body.apiKey,
|
|
149
|
+
...(body.organizationId ? { organizationId: body.organizationId } : {}),
|
|
150
|
+
};
|
|
135
151
|
}
|
|
136
152
|
async function fetchWithDeadline(fetcher, input, deadline, init = {}) {
|
|
137
153
|
const remaining = deadline - Date.now();
|
|
@@ -168,4 +184,12 @@ async function responseMessage(response) {
|
|
|
168
184
|
function sleep(ms) {
|
|
169
185
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
170
186
|
}
|
|
187
|
+
async function emitTelemetry(telemetry, event, properties) {
|
|
188
|
+
try {
|
|
189
|
+
await telemetry(event, properties);
|
|
190
|
+
}
|
|
191
|
+
catch {
|
|
192
|
+
// Analytics must never change authentication behavior.
|
|
193
|
+
}
|
|
194
|
+
}
|
|
171
195
|
//# sourceMappingURL=auth.js.map
|
package/dist/lib/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.test.d.ts","sourceRoot":"","sources":["../../src/lib/auth.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const auth_1 = require("./auth");
|
|
4
|
+
function jsonResponse(status, body) {
|
|
5
|
+
return new Response(JSON.stringify(body), {
|
|
6
|
+
status,
|
|
7
|
+
headers: { 'Content-Type': 'application/json' },
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
describe('CLI browser authentication telemetry', () => {
|
|
11
|
+
it('carries the anonymous ID and records completion with the organization', async () => {
|
|
12
|
+
const fetcher = jest
|
|
13
|
+
.fn()
|
|
14
|
+
.mockResolvedValueOnce(jsonResponse(201, {
|
|
15
|
+
sessionId: 'session_1',
|
|
16
|
+
secret: 'session-secret',
|
|
17
|
+
phrase: 'amber river',
|
|
18
|
+
verificationUrl: 'https://console.example.test/authn/cli?session=session_1',
|
|
19
|
+
expiresAt: '2026-08-04T12:00:00Z',
|
|
20
|
+
pollIntervalSeconds: 1,
|
|
21
|
+
}))
|
|
22
|
+
.mockResolvedValueOnce(jsonResponse(200, {
|
|
23
|
+
apiKey: 'lim_api_key',
|
|
24
|
+
organizationId: 'org_123',
|
|
25
|
+
}));
|
|
26
|
+
const telemetry = jest
|
|
27
|
+
.fn()
|
|
28
|
+
.mockResolvedValue(true);
|
|
29
|
+
const configWriter = jest.fn();
|
|
30
|
+
await (0, auth_1.loginWithOptions)({
|
|
31
|
+
apiEndpoint: 'https://api.example.test',
|
|
32
|
+
consoleEndpoint: 'https://console.example.test',
|
|
33
|
+
version: '1.2.3',
|
|
34
|
+
hostname: 'developer-laptop',
|
|
35
|
+
anonymousId: '7cbf5b3d-a2bb-4b5f-92d7-48ec09e025f8',
|
|
36
|
+
fetcher,
|
|
37
|
+
telemetry,
|
|
38
|
+
configWriter,
|
|
39
|
+
opener: jest.fn(),
|
|
40
|
+
log: jest.fn(),
|
|
41
|
+
});
|
|
42
|
+
const [, createInit] = fetcher.mock.calls[0];
|
|
43
|
+
expect(JSON.parse(String(createInit?.body))).toEqual({
|
|
44
|
+
hostname: 'developer-laptop',
|
|
45
|
+
cliVersion: '1.2.3',
|
|
46
|
+
anonymousId: '7cbf5b3d-a2bb-4b5f-92d7-48ec09e025f8',
|
|
47
|
+
});
|
|
48
|
+
expect(configWriter).toHaveBeenCalledWith({ 'api-key': 'lim_api_key' });
|
|
49
|
+
expect(telemetry).toHaveBeenNthCalledWith(1, 'cli_auth_started', {
|
|
50
|
+
auth_method: 'browser',
|
|
51
|
+
});
|
|
52
|
+
expect(telemetry).toHaveBeenCalledTimes(1);
|
|
53
|
+
});
|
|
54
|
+
it('records a categorized failure without changing the login error', async () => {
|
|
55
|
+
const fetcher = jest
|
|
56
|
+
.fn()
|
|
57
|
+
.mockResolvedValue(jsonResponse(500, { message: 'database down' }));
|
|
58
|
+
const telemetry = jest
|
|
59
|
+
.fn()
|
|
60
|
+
.mockResolvedValue(true);
|
|
61
|
+
await expect((0, auth_1.loginWithOptions)({
|
|
62
|
+
apiEndpoint: 'https://api.example.test',
|
|
63
|
+
consoleEndpoint: 'https://console.example.test',
|
|
64
|
+
version: '1.2.3',
|
|
65
|
+
hostname: 'developer-laptop',
|
|
66
|
+
anonymousId: '7cbf5b3d-a2bb-4b5f-92d7-48ec09e025f8',
|
|
67
|
+
fetcher,
|
|
68
|
+
telemetry,
|
|
69
|
+
opener: jest.fn(),
|
|
70
|
+
log: jest.fn(),
|
|
71
|
+
})).rejects.toThrow('database down');
|
|
72
|
+
expect(telemetry).toHaveBeenNthCalledWith(2, 'cli_auth_failed', {
|
|
73
|
+
auth_method: 'browser',
|
|
74
|
+
error_category: 'unknown',
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=auth.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.test.js","sourceRoot":"","sources":["../../src/lib/auth.test.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/daemon.js
CHANGED
package/dist/lib/daemon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/lib/daemon.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/lib/daemon.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding-telemetry.test.d.ts","sourceRoot":"","sources":["../../src/lib/onboarding-telemetry.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
7
|
+
const node_os_1 = __importDefault(require("node:os"));
|
|
8
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
9
|
+
const onboarding_1 = require("./onboarding");
|
|
10
|
+
describe('onboarding skills telemetry', () => {
|
|
11
|
+
let tempDir;
|
|
12
|
+
let projectRoot;
|
|
13
|
+
let sourceDir;
|
|
14
|
+
let source;
|
|
15
|
+
beforeEach(() => {
|
|
16
|
+
tempDir = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'lim-onboarding-telemetry-'));
|
|
17
|
+
projectRoot = node_path_1.default.join(tempDir, 'project');
|
|
18
|
+
sourceDir = node_path_1.default.join(tempDir, 'source', 'limrun-xcode');
|
|
19
|
+
node_fs_1.default.mkdirSync(projectRoot, { recursive: true });
|
|
20
|
+
node_fs_1.default.mkdirSync(sourceDir, { recursive: true });
|
|
21
|
+
node_fs_1.default.writeFileSync(node_path_1.default.join(sourceDir, 'SKILL.md'), '# Limrun Xcode\n');
|
|
22
|
+
source = {
|
|
23
|
+
owner: 'limrun-inc',
|
|
24
|
+
repo: 'skills',
|
|
25
|
+
ref: 'main',
|
|
26
|
+
commit: 'abc123',
|
|
27
|
+
rootDir: node_path_1.default.join(tempDir, 'source'),
|
|
28
|
+
skillsRoot: node_path_1.default.join(tempDir, 'source'),
|
|
29
|
+
skills: [
|
|
30
|
+
{
|
|
31
|
+
name: 'limrun-xcode',
|
|
32
|
+
description: 'Build with Xcode',
|
|
33
|
+
defaultSelected: true,
|
|
34
|
+
sourceDir,
|
|
35
|
+
},
|
|
36
|
+
],
|
|
37
|
+
cleanup: jest.fn(),
|
|
38
|
+
};
|
|
39
|
+
});
|
|
40
|
+
afterEach(() => {
|
|
41
|
+
node_fs_1.default.rmSync(tempDir, { recursive: true, force: true });
|
|
42
|
+
});
|
|
43
|
+
it('records start and success with counts only', async () => {
|
|
44
|
+
const telemetry = jest
|
|
45
|
+
.fn()
|
|
46
|
+
.mockResolvedValue(true);
|
|
47
|
+
const results = await (0, onboarding_1.installProjectSkills)({
|
|
48
|
+
projectRoot,
|
|
49
|
+
skillNames: ['limrun-xcode'],
|
|
50
|
+
source,
|
|
51
|
+
telemetry,
|
|
52
|
+
});
|
|
53
|
+
expect(results).toHaveLength(2);
|
|
54
|
+
expect(telemetry).toHaveBeenNthCalledWith(1, 'skills_install_started', {
|
|
55
|
+
entrypoint: 'onboarding',
|
|
56
|
+
skill_count: 1,
|
|
57
|
+
agent_count: 2,
|
|
58
|
+
});
|
|
59
|
+
expect(telemetry).toHaveBeenNthCalledWith(2, 'skills_install_succeeded', {
|
|
60
|
+
entrypoint: 'onboarding',
|
|
61
|
+
skill_count: 1,
|
|
62
|
+
agent_count: 2,
|
|
63
|
+
installed_count: 2,
|
|
64
|
+
updated_count: 0,
|
|
65
|
+
unchanged_count: 0,
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
it('records a categorized failure without exposing the missing skill name', async () => {
|
|
69
|
+
const telemetry = jest
|
|
70
|
+
.fn()
|
|
71
|
+
.mockResolvedValue(true);
|
|
72
|
+
await expect((0, onboarding_1.installProjectSkills)({
|
|
73
|
+
projectRoot,
|
|
74
|
+
skillNames: ['private-skill-name'],
|
|
75
|
+
source,
|
|
76
|
+
telemetry,
|
|
77
|
+
})).rejects.toThrow('private-skill-name');
|
|
78
|
+
expect(telemetry).toHaveBeenNthCalledWith(2, 'skills_install_failed', {
|
|
79
|
+
entrypoint: 'onboarding',
|
|
80
|
+
skill_count: 1,
|
|
81
|
+
agent_count: 2,
|
|
82
|
+
error_category: 'unknown',
|
|
83
|
+
});
|
|
84
|
+
expect(JSON.stringify(telemetry.mock.calls)).not.toContain('private-skill-name');
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
//# sourceMappingURL=onboarding-telemetry.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding-telemetry.test.js","sourceRoot":"","sources":["../../src/lib/onboarding-telemetry.test.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/onboarding.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type AgentId } from './skills';
|
|
2
2
|
import { type LoadedRemoteSkills } from './remote-skills';
|
|
3
|
+
import { type TelemetryCapture } from './telemetry';
|
|
3
4
|
export type SampleKind = 'swift' | 'expo56' | 'bazel';
|
|
4
5
|
export interface SampleApp {
|
|
5
6
|
kind: SampleKind;
|
|
@@ -26,6 +27,7 @@ interface InstallProjectSkillsOptions {
|
|
|
26
27
|
projectRoot: string;
|
|
27
28
|
skillNames: string[];
|
|
28
29
|
source?: LoadedRemoteSkills;
|
|
30
|
+
telemetry?: TelemetryCapture;
|
|
29
31
|
}
|
|
30
32
|
type GitRunner = (args: string[], cwd?: string) => Promise<string>;
|
|
31
33
|
interface SampleRepoOptions {
|
|
@@ -46,7 +48,7 @@ declare class OnboardingError extends Error {
|
|
|
46
48
|
export declare function ensureLoggedIn({ version, apiKey, log }: EnsureLoggedInOptions): Promise<void>;
|
|
47
49
|
export declare function applyProjectEnvApiKey(projectRoot: string): ProjectEnvApiKeyResult;
|
|
48
50
|
export declare function ensureProjectEnvApiKey(projectRoot: string, apiKey: string): EnvApiKeyResult;
|
|
49
|
-
export declare function installProjectSkills({ projectRoot, skillNames, source, }: InstallProjectSkillsOptions): Promise<SkillInstallResult[]>;
|
|
51
|
+
export declare function installProjectSkills({ projectRoot, skillNames, source, telemetry, }: InstallProjectSkillsOptions): Promise<SkillInstallResult[]>;
|
|
50
52
|
export declare function ensureSampleRepo({ cwd, sample, git, }: SampleRepoOptions): Promise<{
|
|
51
53
|
path: string;
|
|
52
54
|
reused: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/lib/onboarding.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,KAAK,OAAO,EAEb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/lib/onboarding.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,KAAK,OAAO,EAEb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAGL,KAAK,gBAAgB,EAGtB,MAAM,aAAa,CAAC;AAIrB,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,CAmBrD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,UAAoB,CAAC;AAIvD,KAAK,eAAe,GAAG,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAC7D,KAAK,WAAW,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;AAIzD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAED,UAAU,2BAA2B;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,KAAK,SAAS,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEnE,UAAU,iBAAiB;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAID,cAAM,eAAgB,SAAQ,KAAK;gBACrB,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAsB,cAAc,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAcnG;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,CAYjF;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe,CAuD3F;AA+FD,wBAAsB,oBAAoB,CAAC,EACzC,WAAW,EACX,UAAU,EACV,MAAM,EACN,SAA4B,GAC7B,EAAE,2BAA2B,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAsD7D;AA+ED,wBAAsB,gBAAgB,CAAC,EACrC,GAAG,EACH,MAAyC,EACzC,GAAY,GACb,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAchE;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
package/dist/lib/onboarding.js
CHANGED
|
@@ -50,6 +50,7 @@ const dotenv_1 = require("dotenv");
|
|
|
50
50
|
const config_1 = require("./config");
|
|
51
51
|
const skills_1 = require("./skills");
|
|
52
52
|
const remote_skills_1 = require("./remote-skills");
|
|
53
|
+
const telemetry_1 = require("./telemetry");
|
|
53
54
|
const execFileAsync = (0, util_1.promisify)(child_process_1.execFile);
|
|
54
55
|
exports.SAMPLE_APPS = {
|
|
55
56
|
swift: {
|
|
@@ -248,10 +249,17 @@ function isGitIgnored(cwd, filePath) {
|
|
|
248
249
|
return false;
|
|
249
250
|
}
|
|
250
251
|
}
|
|
251
|
-
async function installProjectSkills({ projectRoot, skillNames, source, }) {
|
|
252
|
-
|
|
253
|
-
|
|
252
|
+
async function installProjectSkills({ projectRoot, skillNames, source, telemetry = telemetry_1.captureTelemetry, }) {
|
|
253
|
+
await emitOnboardingTelemetry(telemetry, 'skills_install_started', {
|
|
254
|
+
entrypoint: 'onboarding',
|
|
255
|
+
skill_count: skillNames.length,
|
|
256
|
+
agent_count: ONBOARDING_AGENTS.length,
|
|
257
|
+
});
|
|
258
|
+
let loaded;
|
|
259
|
+
let shouldCleanup = false;
|
|
254
260
|
try {
|
|
261
|
+
loaded = source ?? (await (0, remote_skills_1.loadRemoteSkills)());
|
|
262
|
+
shouldCleanup = source === undefined;
|
|
255
263
|
const results = [];
|
|
256
264
|
for (const skillName of skillNames) {
|
|
257
265
|
const skill = loaded.skills.find((candidate) => candidate.name === skillName);
|
|
@@ -270,14 +278,39 @@ async function installProjectSkills({ projectRoot, skillNames, source, }) {
|
|
|
270
278
|
});
|
|
271
279
|
}
|
|
272
280
|
}
|
|
281
|
+
await emitOnboardingTelemetry(telemetry, 'skills_install_succeeded', {
|
|
282
|
+
entrypoint: 'onboarding',
|
|
283
|
+
skill_count: skillNames.length,
|
|
284
|
+
agent_count: ONBOARDING_AGENTS.length,
|
|
285
|
+
installed_count: results.filter((result) => result.status === 'installed').length,
|
|
286
|
+
updated_count: results.filter((result) => result.status === 'updated').length,
|
|
287
|
+
unchanged_count: results.filter((result) => result.status === 'unchanged').length,
|
|
288
|
+
});
|
|
273
289
|
return results;
|
|
274
290
|
}
|
|
291
|
+
catch (err) {
|
|
292
|
+
await emitOnboardingTelemetry(telemetry, 'skills_install_failed', {
|
|
293
|
+
entrypoint: 'onboarding',
|
|
294
|
+
skill_count: skillNames.length,
|
|
295
|
+
agent_count: ONBOARDING_AGENTS.length,
|
|
296
|
+
error_category: (0, telemetry_1.telemetryErrorCategory)(err),
|
|
297
|
+
});
|
|
298
|
+
throw err;
|
|
299
|
+
}
|
|
275
300
|
finally {
|
|
276
|
-
if (shouldCleanup) {
|
|
301
|
+
if (shouldCleanup && loaded) {
|
|
277
302
|
loaded.cleanup();
|
|
278
303
|
}
|
|
279
304
|
}
|
|
280
305
|
}
|
|
306
|
+
async function emitOnboardingTelemetry(telemetry, event, properties) {
|
|
307
|
+
try {
|
|
308
|
+
await telemetry(event, properties);
|
|
309
|
+
}
|
|
310
|
+
catch {
|
|
311
|
+
// Analytics must never change onboarding behavior.
|
|
312
|
+
}
|
|
313
|
+
}
|
|
281
314
|
function applySkillDecision(kind, sourceDir, targetDir) {
|
|
282
315
|
if (kind === 'unchanged') {
|
|
283
316
|
return 'unchanged';
|