litmus-cli 1.4.51 → 1.4.53
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/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +9 -6
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/doctor.d.ts +63 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +116 -5
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +2 -2
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +105 -71
- package/dist/commands/init.js.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/capture-selftest.d.ts +13 -0
- package/dist/lib/capture-selftest.d.ts.map +1 -1
- package/dist/lib/capture-selftest.js +40 -23
- package/dist/lib/capture-selftest.js.map +1 -1
- package/dist/lib/cursor-restart.d.ts +2 -0
- package/dist/lib/cursor-restart.d.ts.map +1 -1
- package/dist/lib/cursor-restart.js +9 -7
- package/dist/lib/cursor-restart.js.map +1 -1
- package/dist/lib/errors.d.ts +2 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +21 -1
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/notice.d.ts +23 -0
- package/dist/lib/notice.d.ts.map +1 -0
- package/dist/lib/notice.js +56 -0
- package/dist/lib/notice.js.map +1 -0
- package/package.json +1 -1
|
@@ -68,7 +68,7 @@ import { randomUUID } from "crypto";
|
|
|
68
68
|
import { existsSync, mkdirSync, writeFileSync } from "fs";
|
|
69
69
|
import os from "os";
|
|
70
70
|
import path from "path";
|
|
71
|
-
import
|
|
71
|
+
import { cautionLines, commandLine, doneLines, failedLines, noteLines } from "./notice.js";
|
|
72
72
|
import { installedHookCommands, } from "./ai-tracking.js";
|
|
73
73
|
import { fetchCaptureSelftest, isNetworkError, ServerError } from "./api.js";
|
|
74
74
|
import { classifyClaudeProcesses } from "./detection.js";
|
|
@@ -432,6 +432,16 @@ function joinLabels(labels) {
|
|
|
432
432
|
}
|
|
433
433
|
/** The read-back failure reason for a network error, as opposed to an error response. */
|
|
434
434
|
export const LITMUS_UNREACHABLE = "Litmus could not be reached";
|
|
435
|
+
/**
|
|
436
|
+
* The open tools this report tells the candidate to quit and reopen: running now, with a
|
|
437
|
+
* hook installed. `init` reads the same answer to decide whether its general restart
|
|
438
|
+
* warning is still needed, so the two can't drift (Greptile on #3127).
|
|
439
|
+
*/
|
|
440
|
+
export function openToolsToRestart(report, runningTools) {
|
|
441
|
+
return runningTools
|
|
442
|
+
.filter((tool) => report.tools.some((t) => t.tool === tool && t.status !== "not_installed"))
|
|
443
|
+
.map((tool) => TOOL_LABELS[tool]);
|
|
444
|
+
}
|
|
435
445
|
/**
|
|
436
446
|
* Lines for the terminal. A failure is a coloured block meant to be the LAST
|
|
437
447
|
* thing `init` prints; a pass is one green line, plus a yellow one naming any
|
|
@@ -443,38 +453,41 @@ export function renderCaptureSelfTest(report, opts) {
|
|
|
443
453
|
const unverified = report.tools.filter((t) => t.status === "unverified");
|
|
444
454
|
const unreachable = unverified.some((t) => t.detail.includes(LITMUS_UNREACHABLE));
|
|
445
455
|
const ok = report.tools.filter((t) => t.status === "arrived");
|
|
446
|
-
const restart = opts.runningTools
|
|
447
|
-
.filter((tool) => report.tools.some((t) => t.tool === tool && t.status !== "not_installed"))
|
|
448
|
-
.map((tool) => TOOL_LABELS[tool]);
|
|
456
|
+
const restart = openToolsToRestart(report, opts.runningTools);
|
|
449
457
|
if (report.verdict === "fail") {
|
|
450
458
|
// ENG-2895: the tools and the fix. Each tool's own reason (exit code, empty event)
|
|
451
459
|
// stays in the uploaded capture_selftest event and in `litmus doctor`, which re-runs
|
|
452
460
|
// this check and prints it.
|
|
453
461
|
const names = joinLabels(broken.map((t) => t.label));
|
|
454
|
-
lines.push(
|
|
455
|
-
lines.push(
|
|
456
|
-
lines.push(
|
|
457
|
-
lines.push(chalk.red(` If ${broken.length === 1 ? names : "any of them"} is open, quit and reopen it.`));
|
|
462
|
+
lines.push(...failedLines(`AI tracking check failed: prompts to ${names} won't reach Litmus.`));
|
|
463
|
+
lines.push(...noteLines("Fix it before you start:"), commandLine(`cd ${opts.folderName} && litmus doctor`));
|
|
464
|
+
lines.push(...noteLines(`If ${broken.length === 1 ? names : "any of them"} is open, quit and reopen it.`));
|
|
458
465
|
// A tool that could not be checked is not a pass: name it, so the candidate does not
|
|
459
466
|
// read this block as covering every tool (Greptile on #3101).
|
|
460
467
|
if (unverified.length)
|
|
461
|
-
lines.push(
|
|
462
|
-
lines.push(
|
|
468
|
+
lines.push(...noteLines(`Couldn't check ${joinLabels(unverified.map((t) => t.label))}. litmus doctor checks it again.`));
|
|
469
|
+
lines.push(...noteLines("Still failing? Contact the company."));
|
|
470
|
+
// Tools that passed but are open right now still need a restart, and on this path
|
|
471
|
+
// nothing else says so: init prints the general restart warning only when the check
|
|
472
|
+
// could not run at all (Greptile on #3127).
|
|
473
|
+
const brokenLabels = new Set(broken.map((t) => t.label));
|
|
474
|
+
const alsoOpen = restart.filter((label) => !brokenLabels.has(label));
|
|
475
|
+
if (alsoOpen.length)
|
|
476
|
+
lines.push("", ...restartLines(alsoOpen, "before you start", opts.unnamed));
|
|
463
477
|
return lines;
|
|
464
478
|
}
|
|
465
479
|
if (report.verdict === "unverified") {
|
|
466
|
-
lines.push(
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
: `⚠ Couldn't check AI tracking (Litmus had a problem). In a few minutes, run litmus doctor in ${opts.folderName}/.`));
|
|
480
|
+
lines.push(...cautionLines(unreachable
|
|
481
|
+
? `Couldn't check AI tracking (Litmus couldn't be reached). When you're online, run litmus doctor in ${opts.folderName}/.`
|
|
482
|
+
: `Couldn't check AI tracking (Litmus had a problem). In a few minutes, run litmus doctor in ${opts.folderName}/.`));
|
|
470
483
|
if (restart.length)
|
|
471
|
-
lines.push(...restartLines(restart));
|
|
484
|
+
lines.push("", ...restartLines(restart, "before you start", opts.unnamed));
|
|
472
485
|
return lines;
|
|
473
486
|
}
|
|
474
|
-
|
|
475
|
-
lines.push(
|
|
487
|
+
// A pass is one line; `init` prints it among the steps, above "Ready".
|
|
488
|
+
lines.push(...doneLines("AI tracking checked"));
|
|
476
489
|
if (restart.length)
|
|
477
|
-
lines.push(...restartLines(restart));
|
|
490
|
+
lines.push("", ...restartLines(restart, "before you start", opts.unnamed));
|
|
478
491
|
return lines;
|
|
479
492
|
}
|
|
480
493
|
/**
|
|
@@ -485,10 +498,14 @@ export function renderCaptureSelfTest(report, opts) {
|
|
|
485
498
|
export function renderRestartNotice(tools, opts = { then: "before you start" }) {
|
|
486
499
|
return restartLines(tools.map((t) => TOOL_LABELS[t]), opts.then);
|
|
487
500
|
}
|
|
488
|
-
function restartLines(labels, then = "before you start") {
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
501
|
+
function restartLines(labels, then = "before you start", unnamed) {
|
|
502
|
+
// `unnamed` (init only): the process scan that named these tools can miss one, and
|
|
503
|
+
// with a named notice on screen nothing else covers it, so the same sentence covers
|
|
504
|
+
// "any other AI tool that was already open" (Greptile on #3127). It leaves out a tool
|
|
505
|
+
// init already restarted, and doctor does not ask for it.
|
|
506
|
+
const one = labels.length === 1 && !unnamed;
|
|
507
|
+
const except = unnamed?.except.length ? ` except ${joinLabels(unnamed.except)}` : "";
|
|
508
|
+
const others = unnamed ? `, and any other AI tool${except} that was already open,` : "";
|
|
509
|
+
return cautionLines(`Quit and reopen ${joinLabels(labels)}${others} ${then}, or ${one ? "its" : "their"} prompts won't be recorded.`);
|
|
493
510
|
}
|
|
494
511
|
//# sourceMappingURL=capture-selftest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capture-selftest.js","sourceRoot":"","sources":["../../src/lib/capture-selftest.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"capture-selftest.js","sourceRoot":"","sources":["../../src/lib/capture-selftest.ts"],"names":[],"mappings":"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"}
|
|
@@ -255,6 +255,8 @@ export declare function realCursorProcessIo(ps?: () => string): CursorProcessIo;
|
|
|
255
255
|
* had open.
|
|
256
256
|
*/
|
|
257
257
|
export declare function announceCursorAutoRestart(): string[];
|
|
258
|
+
/** init's form of the announcement: a spinner the outcome line replaces (ENG-2895). */
|
|
259
|
+
export declare const CURSOR_RESTARTING_SPINNER = "Restarting Cursor (its windows will reopen; answer any save prompt)...";
|
|
258
260
|
/** What to say once the attempt is over — pass or one of the two ways it fails. */
|
|
259
261
|
export declare function renderCursorRestartOutcome(outcome: RestartOutcome): string[];
|
|
260
262
|
//# sourceMappingURL=cursor-restart.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-restart.d.ts","sourceRoot":"","sources":["../../src/lib/cursor-restart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkGG;
|
|
1
|
+
{"version":3,"file":"cursor-restart.d.ts","sourceRoot":"","sources":["../../src/lib/cursor-restart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkGG;AAQH,MAAM,MAAM,cAAc;AACxB,oFAAoF;AAClF;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE;AACzB,oGAAoG;GAClG;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE;AACzB;;;;GAIG;GACD;IAAE,IAAI,EAAE,yBAAyB,CAAA;CAAE;AACrC;;;;;GAKG;GACD;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE;AAC9B;;;;GAIG;GACD;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAA;AAEzB;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,+IAA+I;IAC/I,SAAS,EAAE,MAAM,eAAe,CAAA;IAChC,wHAAwH;IACxH,WAAW,EAAE,MAAM,OAAO,CAAA;IAC1B,iGAAiG;IACjG,WAAW,EAAE,MAAM,OAAO,CAAA;IAC1B,4FAA4F;IAC5F,eAAe,EAAE,MAAM,OAAO,CAAA;IAC9B,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC;AAED,wBAAgB,qCAAqC,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,OAAO,CAExF;AAED,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAC7C,eAAO,MAAM,2BAA2B,QAAS,CAAA;AAejD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,eAAe,EAAE,SAAS,SAA0B,GAAG,OAAO,CAAC,OAAO,CAAC,CAI5G;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,eAAe,EAAE,SAAS,SAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,CAGpH;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,EAAE,EAAE,eAAe,EACnB,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;CAAO,GAC5E,OAAO,CAAC,cAAc,CAAC,CASzB;AAID,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AAWvD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,GAAE,MAAM,MAAuB,GAAG,eAAe,CA0BtF;AAID;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,EAAE,CAIpD;AAED,uFAAuF;AACvF,eAAO,MAAM,yBAAyB,2EAA2E,CAAA;AAEjH,mFAAmF;AACnF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,EAAE,CAiB5E"}
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
* refuse the launch is the same hazard from a different direction.
|
|
99
99
|
*/
|
|
100
100
|
import { spawnSync } from "child_process";
|
|
101
|
-
import
|
|
101
|
+
import { cautionLines, doneLines, failedLines, noteLines } from "./notice.js";
|
|
102
102
|
import { detectRunningHookTools } from "./capture-selftest.js";
|
|
103
103
|
import { getProcessList } from "./platform.js";
|
|
104
104
|
export function platformSupportsGracefulCursorRestart(platform) {
|
|
@@ -267,21 +267,23 @@ export function realCursorProcessIo(ps = getProcessList) {
|
|
|
267
267
|
* had open.
|
|
268
268
|
*/
|
|
269
269
|
export function announceCursorAutoRestart() {
|
|
270
|
-
// ENG-2895:
|
|
271
|
-
//
|
|
272
|
-
return
|
|
270
|
+
// ENG-2895: the mechanism ("reads hook config at launch") is not something the
|
|
271
|
+
// candidate acts on; the save prompt and their windows closing are.
|
|
272
|
+
return noteLines("Restarting Cursor so it records your prompts. Its windows will reopen. If it asks to save, answer and setup continues.");
|
|
273
273
|
}
|
|
274
|
+
/** init's form of the announcement: a spinner the outcome line replaces (ENG-2895). */
|
|
275
|
+
export const CURSOR_RESTARTING_SPINNER = "Restarting Cursor (its windows will reopen; answer any save prompt)...";
|
|
274
276
|
/** What to say once the attempt is over — pass or one of the two ways it fails. */
|
|
275
277
|
export function renderCursorRestartOutcome(outcome) {
|
|
276
278
|
switch (outcome.kind) {
|
|
277
279
|
case "restarted":
|
|
278
280
|
// Says only what was checked: Cursor is running again (ENG-2895 dropped "it will use
|
|
279
281
|
// the hooks installed above", which the self-test, not this, verifies).
|
|
280
|
-
return
|
|
282
|
+
return doneLines("Restarted Cursor so it records your prompts");
|
|
281
283
|
case "quit-unconfirmed":
|
|
282
|
-
return
|
|
284
|
+
return cautionLines("Cursor didn't quit, so it won't record your prompts yet. Quit it (Cmd+Q) and reopen it before you start.");
|
|
283
285
|
case "relaunch-unconfirmed":
|
|
284
|
-
return
|
|
286
|
+
return failedLines(`Cursor closed but didn't reopen. Open it again (${CURSOR_RELAUNCH_COMMAND}), then run litmus doctor.`);
|
|
285
287
|
case "not-running":
|
|
286
288
|
case "unsupported":
|
|
287
289
|
// Silent, exactly like "not-running": nothing was touched, so nothing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-restart.js","sourceRoot":"","sources":["../../src/lib/cursor-restart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"cursor-restart.js","sourceRoot":"","sources":["../../src/lib/cursor-restart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAEzC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAsD9C,MAAM,UAAU,qCAAqC,CAAC,QAAyB;IAC7E,OAAO,QAAQ,KAAK,QAAQ,CAAA;AAC9B,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAM,CAAA;AAC7C,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAM,CAAA;AACjD,MAAM,gBAAgB,GAAG,GAAG,CAAA;AAE5B,KAAK,UAAU,SAAS,CACtB,SAAwB,EACxB,SAAiB,EACjB,KAA+B;IAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;IACvC,OAAO,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7C,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO,SAAS,EAAE,CAAA;AACpB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAAmB,EAAE,SAAS,GAAG,uBAAuB;IACxF,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,aAAa;QAAE,OAAO,IAAI,CAAA;IACjD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAA;IACnC,OAAO,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,aAAa,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;AAC/E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAmB,EAAE,SAAS,GAAG,2BAA2B;IAChG,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE;QAAE,OAAO,KAAK,CAAA;IACvC,OAAO,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;AAC3E,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAyB,EACzB,EAAmB,EACnB,OAA2E,EAAE;IAE7E,IAAI,CAAC,qCAAqC,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;IACpF,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;IAChE,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;IACjE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAA;IACpB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAA;IAC9C,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IAC7D,OAAO,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAA;AAC9E,CAAC;AAED,oEAAoE;AAEpE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAA;AAEvD,SAAS,YAAY,CAAC,MAAc;IAClC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;QACvF,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAA;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAClC,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAmB,cAAc;IACnE,OAAO;QACL,SAAS,EAAE,GAAG,EAAE;YACd,IAAI,IAAY,CAAA;YAChB,IAAI,CAAC;gBACH,IAAI,GAAG,EAAE,EAAE,CAAA;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,OAAO,sBAAsB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAA;QACxH,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YAChB,MAAM,MAAM,GAAG,YAAY,CAAC,8CAA8C,CAAC,CAAA;YAC3E,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;QACrD,CAAC;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,mCAAmC,CAAC,CAAC,EAAE;QACvE,eAAe,EAAE,GAAG,EAAE;YACpB,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,KAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACnF,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QACD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;KACjE,CAAA;AACH,CAAC;AAED,oEAAoE;AAEpE;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB;IACvC,+EAA+E;IAC/E,oEAAoE;IACpE,OAAO,SAAS,CAAC,wHAAwH,CAAC,CAAA;AAC5I,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,yBAAyB,GAAG,wEAAwE,CAAA;AAEjH,mFAAmF;AACnF,MAAM,UAAU,0BAA0B,CAAC,OAAuB;IAChE,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,WAAW;YACd,qFAAqF;YACrF,wEAAwE;YACxE,OAAO,SAAS,CAAC,6CAA6C,CAAC,CAAA;QACjE,KAAK,kBAAkB;YACrB,OAAO,YAAY,CAAC,0GAA0G,CAAC,CAAA;QACjI,KAAK,sBAAsB;YACzB,OAAO,WAAW,CAAC,mDAAmD,uBAAuB,4BAA4B,CAAC,CAAA;QAC5H,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,sEAAsE;QACtE,mEAAmE;QACnE,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAA;IACb,CAAC;AACH,CAAC"}
|
package/dist/lib/errors.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ export declare const FALLBACK_URL = "https://litmushiring.com";
|
|
|
2
2
|
export declare class FatalError extends Error {
|
|
3
3
|
constructor();
|
|
4
4
|
}
|
|
5
|
+
/** Keep `fatal` from exiting until `work` settles. Returns `work`. */
|
|
6
|
+
export declare function holdExitFor<T>(work: Promise<T>): Promise<T>;
|
|
5
7
|
declare let errorContext: {
|
|
6
8
|
token?: string;
|
|
7
9
|
apiBase?: string;
|
package/dist/lib/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,6BAA6B,CAAA;AAEtD,qBAAa,UAAW,SAAQ,KAAK;;CAEpC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,6BAA6B,CAAA;AAEtD,qBAAa,UAAW,SAAQ,KAAK;;CAEpC;AASD,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAK3D;AASD,QAAA,IAAI,YAAY,EAAE;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAEN,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,YAAY,CAAC,GAAG,IAAI,CAEvE;AAED,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAA;AAEnD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA0Bf;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAElE;AAED,0CAA0C;AAC1C,eAAO,MAAM,cAAc,8CAA8C,CAAA;AAEzE;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CACnB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GAAG;IAAE,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,GAC/D,KAAK,CAoCP;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C"}
|
package/dist/lib/errors.js
CHANGED
|
@@ -10,6 +10,24 @@ export const FALLBACK_URL = "https://litmushiring.com";
|
|
|
10
10
|
export class FatalError extends Error {
|
|
11
11
|
constructor() { super(); }
|
|
12
12
|
}
|
|
13
|
+
// ENG-2919: work that `fatal` must let finish before it exits. `fatal` ends the
|
|
14
|
+
// process once its report is sent, which skips any `finally` still awaiting work:
|
|
15
|
+
// `litmus connect`'s skills upload runs in the background while the editor opens,
|
|
16
|
+
// and a `fatal` there closed it mid-body, so the workspace got no skills and the
|
|
17
|
+
// candidate was never told.
|
|
18
|
+
const exitHolds = new Set();
|
|
19
|
+
/** Keep `fatal` from exiting until `work` settles. Returns `work`. */
|
|
20
|
+
export function holdExitFor(work) {
|
|
21
|
+
exitHolds.add(work);
|
|
22
|
+
const release = () => { exitHolds.delete(work); };
|
|
23
|
+
work.then(release, release);
|
|
24
|
+
return work;
|
|
25
|
+
}
|
|
26
|
+
async function heldWorkSettled() {
|
|
27
|
+
// A hold can add another while it runs.
|
|
28
|
+
while (exitHolds.size > 0)
|
|
29
|
+
await Promise.allSettled([...exitHolds]);
|
|
30
|
+
}
|
|
13
31
|
const DEFAULT_API_BASE = process.env.LITMUS_API_URL || FALLBACK_URL;
|
|
14
32
|
// Module-level context set by each command so fatal() can report errors
|
|
15
33
|
let errorContext = {};
|
|
@@ -105,7 +123,9 @@ export function fatal(message, hint, opts) {
|
|
|
105
123
|
const reportMessage = internalDetail ? `${message}\n\nInternal detail: ${internalDetail}` : message;
|
|
106
124
|
// Wait for the event report to send, then exit.
|
|
107
125
|
// Safety timeout ensures we always exit even if the request hangs.
|
|
108
|
-
|
|
126
|
+
// Held work bounds itself (the skills upload has its own timeout), so it waits
|
|
127
|
+
// even past the safety window, which is for a hung report.
|
|
128
|
+
const exit = () => { void heldWorkSettled().then(() => process.exit(1)); };
|
|
109
129
|
const safety = setTimeout(exit, 5500);
|
|
110
130
|
// Cleared once the report settles. In the CLI the exit beside it ends the
|
|
111
131
|
// process anyway; where process.exit is stubbed (the tests that drive a
|
package/dist/lib/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ENG-2895: the shape of a candidate-facing line, matching what `litmus connect` prints.
|
|
3
|
+
* Text is the terminal's own colour; only the leading symbol is coloured (✔ green,
|
|
4
|
+
* ⚠ yellow, ✖ red). Lines are wrapped at `NOTICE_WIDTH` so an 80-column terminal never
|
|
5
|
+
* breaks a word in two, which it did mid-word ("Copilot C / LI") before this.
|
|
6
|
+
*/
|
|
7
|
+
export declare const NOTICE_WIDTH = 72;
|
|
8
|
+
/** Word-wrap `text` to `width` columns, every line starting with `indent`. */
|
|
9
|
+
export declare function wrap(text: string, indent?: string, width?: number): string[];
|
|
10
|
+
/** A step that finished. */
|
|
11
|
+
export declare function doneLines(text: string): string[];
|
|
12
|
+
/** Something the candidate should act on, but nothing failed. */
|
|
13
|
+
export declare function cautionLines(text: string): string[];
|
|
14
|
+
/** Something that failed. */
|
|
15
|
+
export declare function failedLines(text: string): string[];
|
|
16
|
+
/**
|
|
17
|
+
* A command to copy, on its own line and never wrapped: wrapping at a space can split
|
|
18
|
+
* `cd <folder> && litmus doctor` into two lines that no longer paste as one command.
|
|
19
|
+
*/
|
|
20
|
+
export declare function commandLine(command: string): string;
|
|
21
|
+
/** Plain, indented text under one of the above. */
|
|
22
|
+
export declare function noteLines(text: string): string[];
|
|
23
|
+
//# sourceMappingURL=notice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notice.d.ts","sourceRoot":"","sources":["../../src/lib/notice.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,eAAO,MAAM,YAAY,KAAK,CAAA;AAE9B,8EAA8E;AAC9E,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAO,EAAE,KAAK,SAAe,GAAG,MAAM,EAAE,CAgBhF;AAOD,4BAA4B;AAC5B,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhD;AAED,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEnD;AAED,6BAA6B;AAC7B,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAElD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,mDAAmD;AACnD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhD"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
/**
|
|
3
|
+
* ENG-2895: the shape of a candidate-facing line, matching what `litmus connect` prints.
|
|
4
|
+
* Text is the terminal's own colour; only the leading symbol is coloured (✔ green,
|
|
5
|
+
* ⚠ yellow, ✖ red). Lines are wrapped at `NOTICE_WIDTH` so an 80-column terminal never
|
|
6
|
+
* breaks a word in two, which it did mid-word ("Copilot C / LI") before this.
|
|
7
|
+
*/
|
|
8
|
+
export const NOTICE_WIDTH = 72;
|
|
9
|
+
/** Word-wrap `text` to `width` columns, every line starting with `indent`. */
|
|
10
|
+
export function wrap(text, indent = " ", width = NOTICE_WIDTH) {
|
|
11
|
+
const lines = [];
|
|
12
|
+
let line = "";
|
|
13
|
+
// A word is never cut, even one longer than a line: a folder name split by a newline
|
|
14
|
+
// can't be copied back into a command (Greptile on #3127). Such a word gets a line of
|
|
15
|
+
// its own and the terminal soft-wraps it, which copies as one line.
|
|
16
|
+
for (const word of text.split(/\s+/).filter(Boolean)) {
|
|
17
|
+
if (line && indent.length + line.length + 1 + word.length > width) {
|
|
18
|
+
lines.push(indent + line);
|
|
19
|
+
line = word;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
line = line ? `${line} ${word}` : word;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (line)
|
|
26
|
+
lines.push(indent + line);
|
|
27
|
+
return lines;
|
|
28
|
+
}
|
|
29
|
+
function marked(symbol, text) {
|
|
30
|
+
const [first, ...rest] = wrap(text);
|
|
31
|
+
return [`${symbol} ${first.slice(2)}`, ...rest];
|
|
32
|
+
}
|
|
33
|
+
/** A step that finished. */
|
|
34
|
+
export function doneLines(text) {
|
|
35
|
+
return marked(chalk.green("✔"), text);
|
|
36
|
+
}
|
|
37
|
+
/** Something the candidate should act on, but nothing failed. */
|
|
38
|
+
export function cautionLines(text) {
|
|
39
|
+
return marked(chalk.yellow("⚠"), text);
|
|
40
|
+
}
|
|
41
|
+
/** Something that failed. */
|
|
42
|
+
export function failedLines(text) {
|
|
43
|
+
return marked(chalk.red("✖"), text);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* A command to copy, on its own line and never wrapped: wrapping at a space can split
|
|
47
|
+
* `cd <folder> && litmus doctor` into two lines that no longer paste as one command.
|
|
48
|
+
*/
|
|
49
|
+
export function commandLine(command) {
|
|
50
|
+
return ` ${command}`;
|
|
51
|
+
}
|
|
52
|
+
/** Plain, indented text under one of the above. */
|
|
53
|
+
export function noteLines(text) {
|
|
54
|
+
return wrap(text);
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=notice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notice.js","sourceRoot":"","sources":["../../src/lib/notice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAA;AAE9B,8EAA8E;AAC9E,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,GAAG,YAAY;IACpE,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,qFAAqF;IACrF,sFAAsF;IACtF,oEAAoE;IACpE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YAClE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;YACzB,IAAI,GAAG,IAAI,CAAA;QACb,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QACxC,CAAC;IACH,CAAC;IACD,IAAI,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IACnC,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,MAAM,CAAC,MAAc,EAAE,IAAY;IAC1C,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;IACnC,OAAO,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;AACjD,CAAC;AAED,4BAA4B;AAC5B,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAA;AACvC,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAA;AACxC,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAA;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,OAAO,OAAO,OAAO,EAAE,CAAA;AACzB,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAA;AACnB,CAAC"}
|