litmus-cli 1.3.10 → 1.3.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAmBA,wBAAsB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6P1D"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAmBA,wBAAsB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoQ1D"}
@@ -13,7 +13,7 @@ import { detectProject } from "../lib/detect-project.js";
13
13
  import { fatal, success, info, warn, setErrorContext, reportSuccess, FALLBACK_URL } from "../lib/errors.js";
14
14
  import { resolveApiBaseFromToken } from "../lib/env-hosts.js";
15
15
  import { formatDeadlinePT } from "../lib/format-time.js";
16
- import { installUserScopeClaudeHook, installUserScopeCodexHook, installUserScopeCursorHook, addActiveAssessment, removeActiveAssessment } from "../lib/ai-tracking.js";
16
+ import { installUserScopeClaudeHook, installUserScopeCodexHook, installUserScopeCursorHook, installRepoScopeCopilotHook, USER_SCOPE_LOGGER, addActiveAssessment, removeActiveAssessment } from "../lib/ai-tracking.js";
17
17
  import { execSync } from "child_process";
18
18
  import { fileURLToPath } from "url";
19
19
  export async function runInit(token) {
@@ -171,8 +171,15 @@ export async function runInit(token) {
171
171
  // config must never be silent — they may have had hooks of their own.
172
172
  console.log();
173
173
  console.log(chalk.yellow("Your ~/.cursor/hooks.json could not be parsed and was replaced."));
174
- console.log(chalk.dim(" A copy was saved as ~/.cursor/hooks.json.litmus-backup — if you had"));
175
- console.log(chalk.dim(" your own Cursor hooks, restore them from there."));
174
+ console.log(chalk.dim(` A copy was saved as ${result.cursorBackupPath ?? "~/.cursor/hooks.json.litmus-backup"} — if you`));
175
+ console.log(chalk.dim(" had your own Cursor hooks, restore them from there."));
176
+ }
177
+ if (result.copilotConfigReplaced) {
178
+ // Same rule as Cursor above: replacing a config we couldn't merge into is
179
+ // unavoidable, but it must never be silent.
180
+ console.log();
181
+ console.log(chalk.yellow("This project's .github/hooks/litmus.json could not be parsed and was replaced."));
182
+ console.log(chalk.dim(` A copy was saved as ${result.copilotBackupPath ?? "litmus.json.litmus-backup"}.`));
176
183
  }
177
184
  }
178
185
  catch (err) {
@@ -326,32 +333,54 @@ function setupAiTracking(targetDir) {
326
333
  // Process dimension from their score entirely. Failure here is non-fatal:
327
334
  // candidates not using Cursor are unaffected.
328
335
  let cursorConfigReplaced = false;
336
+ let cursorBackupPath;
329
337
  try {
330
338
  // hookLoggerSrc is passed so the install can guarantee the logger exists at
331
339
  // USER_SCOPE_LOGGER before writing a hook that points at it. That copy
332
340
  // normally happens inside installUserScopeClaudeHook above, which may have
333
341
  // failed (and then we'd be pointing Cursor at a file that was never created).
334
- cursorConfigReplaced = installUserScopeCursorHook(hookLoggerSrc).backedUpMalformed;
342
+ const cursorResult = installUserScopeCursorHook(hookLoggerSrc);
343
+ cursorConfigReplaced = cursorResult.backedUpMalformed;
344
+ cursorBackupPath = cursorResult.backupPath;
335
345
  }
336
346
  catch {
337
347
  // Couldn't write ~/.cursor/hooks.json, or the logger is missing — skip.
338
348
  }
339
- // GitHub Copilot CLI: .github/hooks/litmus.json (separate file — won't conflict).
340
- // ENG-771 Bug 2: event name is `userPromptSubmit`, not `userPromptSubmitted`.
341
- // The previous typo meant the Copilot CLI never recognized the hook.
342
- const ghHooksDir = path.join(targetDir, ".github", "hooks");
343
- mkdirSync(ghHooksDir, { recursive: true });
344
- writeFileSync(path.join(ghHooksDir, "litmus.json"), JSON.stringify({
345
- version: 1,
346
- hooks: {
347
- userPromptSubmit: [{
348
- type: "command",
349
- bash: "node .litmus/hook-logger.cjs copilot",
350
- powershell: "node .litmus/hook-logger.cjs copilot",
351
- timeoutSec: 5,
352
- }],
353
- },
354
- }, null, 2) + "\n");
349
+ // GitHub Copilot: repo-scope <assessment>/.github/hooks/litmus.json.
350
+ //
351
+ // ENG-1292. The shipped key was `userPromptSubmit`, which is not a valid event
352
+ // in Copilot's schema at all — confirmed against the first-party
353
+ // @github/copilot SDK, whose zod schema and validation Set both name
354
+ // `userPromptSubmitted`, with `UserPromptSubmit` as the PascalCase alias.
355
+ // `userPromptSubmit` matches neither, so the entry failed validation and was
356
+ // dropped silently: no Copilot prompt has ever been captured. The ENG-771
357
+ // "fix" inverted a name that was previously correct.
358
+ //
359
+ // The PascalCase spelling is deliberate — it is the one key both Copilot CLI
360
+ // and VS Code Copilot Chat accept, so this single file covers the terminal
361
+ // binary, the cloud agent, VS Code and JetBrains. See installRepoScopeCopilotHook
362
+ // for why repo scope (and not ~/.copilot/hooks) is the right home.
363
+ //
364
+ // Best-effort like Codex and Cursor: a candidate not using Copilot is
365
+ // unaffected, and a failure here must not abort tracking for the tools that
366
+ // already installed successfully above.
367
+ let copilotConfigReplaced = false;
368
+ let copilotBackupPath;
369
+ try {
370
+ // Prefer the user-scope logger for the same reason the other three tools do
371
+ // (it survives ENG-1297 dropping the in-assessment copy). Fall back to the
372
+ // assessment's own copy when user scope is unavailable — the same situation
373
+ // that puts Claude Code into project-scope mode.
374
+ const copilotLogger = existsSync(USER_SCOPE_LOGGER)
375
+ ? USER_SCOPE_LOGGER
376
+ : path.join(litmusDir, "hook-logger.cjs");
377
+ const copilotResult = installRepoScopeCopilotHook(targetDir, copilotLogger);
378
+ copilotConfigReplaced = copilotResult.backedUpMalformed;
379
+ copilotBackupPath = copilotResult.backupPath;
380
+ }
381
+ catch {
382
+ // Couldn't write .github/hooks/litmus.json, or the shape was unrecognized.
383
+ }
355
384
  // Register this assessment in ~/.litmus/active-assessments.json so the
356
385
  // hook-logger can fall back to it when cwd walk-up fails (e.g. VS Code
357
386
  // workspace opened above the assessment dir). Only meaningful in user-scope
@@ -368,7 +397,7 @@ function setupAiTracking(targetDir) {
368
397
  }
369
398
  catch { /* best effort — a stale entry is preferable to failing init */ }
370
399
  }
371
- return { mode, codexInstalled, cursorConfigReplaced };
400
+ return { mode, codexInstalled, cursorConfigReplaced, cursorBackupPath, copilotConfigReplaced, copilotBackupPath };
372
401
  }
373
402
  /**
374
403
  * Project-scope fallback for Claude Code: writes .claude/settings.local.json
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { submitZip, ServerError } from "../lib/api.js";
10
10
  import { createSubmissionZip } from "../lib/zip.js";
11
11
  import { fatal, success, warn, info, setErrorContext, reportSuccess } from "../lib/errors.js";
12
12
  import { formatDeadlinePT } from "../lib/format-time.js";
13
- import { uninstallUserScopeClaudeHook, uninstallUserScopeCodexHook, uninstallUserScopeCursorHook, removeActiveAssessment } from "../lib/ai-tracking.js";
13
+ import { uninstallUserScopeClaudeHook, uninstallUserScopeCodexHook, uninstallUserScopeCursorHook, uninstallRepoScopeCopilotHook, removeActiveAssessment } from "../lib/ai-tracking.js";
14
14
  export async function runSubmit(opts) {
15
15
  // Step 1: Read config
16
16
  const config = await readConfig();
@@ -364,6 +364,19 @@ async function deleteAssessmentFolder(projectRoot, token, folderName) {
364
364
  // terminal server-side errors (Time limit exceeded etc). Idempotent.
365
365
  function releaseAiTrackingForAssessment(projectRoot) {
366
366
  const registryEmpty = removeActiveAssessment(projectRoot);
367
+ // ENG-1292: the Copilot hook is REPO scope — it belongs to this assessment,
368
+ // not to the machine — so it is removed unconditionally, outside the
369
+ // registry-empty gate the user-scope hooks sit behind. Gating it the same way
370
+ // would be wrong in both directions: assessment A's hook would survive
371
+ // whenever assessment B is still registered, and there is nothing shared to
372
+ // protect here since the file lives inside A's own directory.
373
+ //
374
+ // Load-bearing on the exit paths that KEEP the folder — walkthrough handoff
375
+ // most of all. The successful-submit path deletes the whole directory and
376
+ // takes the hook with it, so this is a no-op there; on handoff it is the only
377
+ // thing that stops a retired assessment from continuing to capture Copilot
378
+ // prompts into a submission that has already gone.
379
+ uninstallRepoScopeCopilotHook(projectRoot);
367
380
  if (registryEmpty) {
368
381
  uninstallUserScopeClaudeHook();
369
382
  uninstallUserScopeCodexHook();
@@ -1 +1 @@
1
- {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../src/commands/submit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../src/commands/submit.ts"],"names":[],"mappings":"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"}
@@ -50,9 +50,10 @@ export declare function uninstallUserScopeCodexHook(): void;
50
50
  * given: Cursor capture failing is worth far less than `litmus init` failing, and
51
51
  * the read-side check already prevents the both-paths-lost case.
52
52
  *
53
- * Returns `backedUpMalformed` so the caller can tell the candidate when we had to
54
- * replace an unparseable config that write is unavoidable (you cannot merge into
55
- * JSON you cannot parse) but it must not be silent.
53
+ * Returns `backedUpMalformed` and the `backupPath` actually written so the
54
+ * caller can tell the candidate when we had to replace an unparseable config.
55
+ * That write is unavoidable (you cannot merge into JSON you cannot parse) but
56
+ * it must not be silent.
56
57
  *
57
58
  * Throws on a non-array `beforeSubmitPrompt` (rather than clobbering a config
58
59
  * shape we don't understand) and on any filesystem failure, so the caller can
@@ -60,8 +61,41 @@ export declare function uninstallUserScopeCodexHook(): void;
60
61
  */
61
62
  export declare function installUserScopeCursorHook(hookLoggerSrc?: string): {
62
63
  backedUpMalformed: boolean;
64
+ backupPath?: string;
63
65
  };
64
66
  export declare function uninstallUserScopeCursorHook(): void;
67
+ export declare function copilotHooksFile(assessmentDir: string): string;
68
+ /**
69
+ * Install a `UserPromptSubmit` hook in `<assessment>/.github/hooks/litmus.json`.
70
+ * Idempotent.
71
+ *
72
+ * `loggerAbsPath` must be absolute. The shipped version used a RELATIVE path
73
+ * (`node .litmus/hook-logger.cjs copilot`), which only resolves when the hook
74
+ * runner's cwd happens to be the assessment root — and VS Code Copilot Chat
75
+ * sends no cwd at all.
76
+ *
77
+ * Merges rather than overwrites: the previous implementation was an
78
+ * unconditional writeFileSync, so a candidate whose repo already had a
79
+ * `.github/hooks/litmus.json` lost it with no backup. Preserves their other
80
+ * events and any foreign entries under our own event, and keeps a `.litmus-backup`
81
+ * copy when the existing file cannot be parsed.
82
+ *
83
+ * Throws on a non-array value for our event rather than clobbering a shape we
84
+ * don't understand, and on any filesystem failure, so the caller can treat
85
+ * Copilot tracking as best-effort the way it already does for Codex and Cursor.
86
+ */
87
+ export declare function installRepoScopeCopilotHook(assessmentDir: string, loggerAbsPath: string): {
88
+ backedUpMalformed: boolean;
89
+ backupPath?: string;
90
+ };
91
+ /**
92
+ * Remove our entry from the assessment's Copilot hooks file.
93
+ *
94
+ * Usually moot — `litmus submit` deletes the whole assessment folder — but the
95
+ * walkthrough-handoff exit path does not, and a candidate may have pointed init
96
+ * at a directory they keep.
97
+ */
98
+ export declare function uninstallRepoScopeCopilotHook(assessmentDir: string): void;
65
99
  export declare function addActiveAssessment(assessmentPath: string): void;
66
100
  /**
67
101
  * Remove an assessment from the registry. Returns `true` only when we
@@ -1 +1 @@
1
- {"version":3,"file":"ai-tracking.d.ts","sourceRoot":"","sources":["../../src/lib/ai-tracking.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,iBAAiB,QAA2C,CAAA;AAyIzE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAkCtE;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,IAAI,IAAI,CAyBnD;AASD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAwBhD;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAuBlD;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG;IAAE,iBAAiB,EAAE,OAAO,CAAA;CAAE,CA4CjG;AAED,wBAAgB,4BAA4B,IAAI,IAAI,CAuBnD;AAyBD,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAShE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAqBtE"}
1
+ {"version":3,"file":"ai-tracking.d.ts","sourceRoot":"","sources":["../../src/lib/ai-tracking.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,iBAAiB,QAA2C,CAAA;AAyIzE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAoCtE;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,IAAI,IAAI,CAyBnD;AASD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CA0BhD;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAuBlD;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG;IAAE,iBAAiB,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CA8CtH;AAED,wBAAgB,4BAA4B,IAAI,IAAI,CAuBnD;AAqCD,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE9D;AAoDD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,GACpB;IAAE,iBAAiB,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CA4CrD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAwBzE;AAyBD,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAShE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAqBtE"}
@@ -1,4 +1,4 @@
1
- import { existsSync, readFileSync, writeFileSync, renameSync, mkdirSync, copyFileSync, openSync, closeSync, unlinkSync, statSync, } from "fs";
1
+ import { existsSync, readFileSync, writeFileSync, renameSync, mkdirSync, copyFileSync, openSync, closeSync, unlinkSync, statSync, constants as fsConstants, } from "fs";
2
2
  import path from "path";
3
3
  import os from "os";
4
4
  const CLAUDE_DIR = path.join(os.homedir(), ".claude");
@@ -20,7 +20,7 @@ export const USER_SCOPE_LOGGER = path.join(LITMUS_DIR, "hook-logger.cjs");
20
20
  // repeat-install idempotency and uninstall both silently stop working.
21
21
  // hook-logger.cjs carries the same pattern for its Cursor dedupe check — keep
22
22
  // the two in step.
23
- const OUR_COMMAND_PATTERN = /[/\\]\.litmus[/\\]hook-logger\.cjs["']?\s+(claude|codex|cursor)\b/;
23
+ const OUR_COMMAND_PATTERN = /[/\\]\.litmus[/\\]hook-logger\.cjs["']?\s+(claude|codex|cursor|copilot)\b/;
24
24
  const SENTINEL_FIELD = "_litmus";
25
25
  /**
26
26
  * Shell-quote a path for a hook `command` string.
@@ -184,11 +184,10 @@ export function installUserScopeClaudeHook(hookLoggerSrc) {
184
184
  }
185
185
  catch {
186
186
  // Malformed settings.json — preserve a backup so the candidate doesn't
187
- // lose their existing config when we overwrite.
188
- try {
189
- copyFileSync(CLAUDE_SETTINGS, CLAUDE_SETTINGS + ".litmus-backup");
190
- }
191
- catch { /* best effort */ }
187
+ // lose their existing config when we overwrite. If the backup cannot be
188
+ // written this throws rather than replacing a file we could not
189
+ // preserve, and the caller falls back to project scope.
190
+ backupAside(CLAUDE_SETTINGS);
192
191
  data = {};
193
192
  }
194
193
  }
@@ -266,10 +265,9 @@ export function installUserScopeCodexHook() {
266
265
  data = JSON.parse(readFileSync(CODEX_HOOKS, "utf8"));
267
266
  }
268
267
  catch {
269
- try {
270
- copyFileSync(CODEX_HOOKS, CODEX_HOOKS + ".litmus-backup");
271
- }
272
- catch { /* best effort */ }
268
+ // Same rule as the Claude path above: back the unparseable file up,
269
+ // throwing rather than replacing it when the backup cannot be written.
270
+ backupAside(CODEX_HOOKS);
273
271
  data = {};
274
272
  }
275
273
  }
@@ -343,9 +341,10 @@ export function uninstallUserScopeCodexHook() {
343
341
  * given: Cursor capture failing is worth far less than `litmus init` failing, and
344
342
  * the read-side check already prevents the both-paths-lost case.
345
343
  *
346
- * Returns `backedUpMalformed` so the caller can tell the candidate when we had to
347
- * replace an unparseable config that write is unavoidable (you cannot merge into
348
- * JSON you cannot parse) but it must not be silent.
344
+ * Returns `backedUpMalformed` and the `backupPath` actually written so the
345
+ * caller can tell the candidate when we had to replace an unparseable config.
346
+ * That write is unavoidable (you cannot merge into JSON you cannot parse) but
347
+ * it must not be silent.
349
348
  *
350
349
  * Throws on a non-array `beforeSubmitPrompt` (rather than clobbering a config
351
350
  * shape we don't understand) and on any filesystem failure, so the caller can
@@ -362,6 +361,7 @@ export function installUserScopeCursorHook(hookLoggerSrc) {
362
361
  }
363
362
  mkdirSync(CURSOR_DIR, { recursive: true });
364
363
  let backedUpMalformed = false;
364
+ let backupPath;
365
365
  let data = {};
366
366
  if (existsSync(CURSOR_HOOKS)) {
367
367
  try {
@@ -370,12 +370,12 @@ export function installUserScopeCursorHook(hookLoggerSrc) {
370
370
  catch {
371
371
  // Unparseable — possibly a genuinely broken file, possibly one caught
372
372
  // mid-write. Either way their hooks can't be preserved, so keep a copy and
373
- // report it upward rather than replacing their config silently.
374
- try {
375
- copyFileSync(CURSOR_HOOKS, CURSOR_HOOKS + ".litmus-backup");
376
- backedUpMalformed = true;
377
- }
378
- catch { /* best effort — if even the backup fails, still don't fail init */ }
373
+ // report it upward rather than replacing their config silently. If even
374
+ // the backup cannot be written, throw rather than replace a file we could
375
+ // not preserve — the caller already treats this install as best-effort,
376
+ // and this is the candidate's own machine-wide editor config.
377
+ backupPath = backupAside(CURSOR_HOOKS);
378
+ backedUpMalformed = true;
379
379
  data = {};
380
380
  }
381
381
  }
@@ -393,7 +393,7 @@ export function installUserScopeCursorHook(hookLoggerSrc) {
393
393
  const others = existing.filter(e => !isOurCursorEntry(e));
394
394
  hooks.beforeSubmitPrompt = [...others, buildCursorHookEntry(USER_SCOPE_LOGGER)];
395
395
  atomicWriteFileSync(CURSOR_HOOKS, JSON.stringify(data, null, 2) + "\n");
396
- return { backedUpMalformed };
396
+ return { backedUpMalformed, backupPath };
397
397
  }
398
398
  export function uninstallUserScopeCursorHook() {
399
399
  if (!existsSync(CURSOR_HOOKS))
@@ -424,6 +424,189 @@ export function uninstallUserScopeCursorHook() {
424
424
  }
425
425
  catch { /* unwritable, give up silently */ }
426
426
  }
427
+ // ── GitHub Copilot hook ───────────────────────────────────────────
428
+ // One repo-scope file, `<assessment>/.github/hooks/litmus.json`, covers every
429
+ // Copilot surface: the `copilot` CLI binary, the cloud agent, VS Code Copilot
430
+ // Chat, and JetBrains. Verified live on VS Code 1.131 / Copilot Chat 0.59.0 —
431
+ // five agent-mode prompts captured verbatim and correctly labelled.
432
+ //
433
+ // Two things make this the right scope, both verified in VS Code core
434
+ // (workbench.desktop.main.js):
435
+ // - `chat.useHooks` defaults TRUE and its discovery glob is
436
+ // `**/.github/hooks/*.json`, so repo scope works with no candidate setup.
437
+ // - `chat.useClaudeHooks` — which is what would make Copilot read
438
+ // `~/.claude/settings.json` — defaults FALSE. So we do NOT get Copilot
439
+ // capture for free from the Claude hook, and must not assume we do.
440
+ // Both additionally require workspace trust, and both are `restricted` +
441
+ // `disallowConfigurationDefault`, so neither can be flipped from a workspace
442
+ // settings file. Repo scope is the only route that needs nothing from the
443
+ // candidate.
444
+ //
445
+ // Deliberately repo scope ONLY — no `~/.copilot/hooks/`. A fourth write into
446
+ // the candidate's home directory is exactly the over-capture surface ENG-953
447
+ // and ENG-1297 are about, and this file lives inside the assessment where the
448
+ // candidate can see it.
449
+ //
450
+ // Entry shape is the portable one: PascalCase key (Copilot CLI maps it onto
451
+ // `userPromptSubmitted` internally; VS Code uses it natively), `command`
452
+ // rather than `bash`/`powershell`, and `timeout` rather than `timeoutSec` —
453
+ // both aliases since CLI 1.0.2 and the only spelling VS Code understands. No
454
+ // `version` key: optional for the CLI since 1.0.5 and not part of VS Code's
455
+ // format at all. No `_litmus` sentinel, for the same reason Cursor gets none —
456
+ // the config is schema-validated and an unknown key risks rejecting the whole
457
+ // file, taking the candidate's other hooks with it. The command string is the
458
+ // identifier.
459
+ const COPILOT_HOOK_EVENT = "UserPromptSubmit";
460
+ const COPILOT_HOOK_TIMEOUT_SECONDS = 10;
461
+ export function copilotHooksFile(assessmentDir) {
462
+ return path.join(assessmentDir, ".github", "hooks", "litmus.json");
463
+ }
464
+ /**
465
+ * Copy `file` aside for safekeeping without ever clobbering an earlier rescue.
466
+ *
467
+ * A candidate can leave the config unparseable more than once — hand-edit it,
468
+ * re-run init, break it again, re-run init. An unconditional copy to a fixed
469
+ * `.litmus-backup` path means the SECOND rescue overwrites the first, and the
470
+ * first is the one holding their original pre-Litmus config. So the later, less
471
+ * valuable copy destroys the earlier, more valuable one.
472
+ *
473
+ * `COPYFILE_EXCL` makes each attempt fail rather than overwrite, so this is
474
+ * race-safe against a concurrent init rather than merely existsSync-guarded.
475
+ * Returns the path actually written so the caller can name it accurately.
476
+ */
477
+ function backupAside(file) {
478
+ for (let i = 0; i < 100; i++) {
479
+ const dest = i === 0 ? `${file}.litmus-backup` : `${file}.litmus-backup-${i}`;
480
+ try {
481
+ copyFileSync(file, dest, fsConstants.COPYFILE_EXCL);
482
+ return dest;
483
+ }
484
+ catch (err) {
485
+ if (err.code !== "EEXIST")
486
+ throw err;
487
+ }
488
+ }
489
+ throw new Error(`${file}: no free .litmus-backup path after 100 attempts`);
490
+ }
491
+ function buildCopilotHookEntry(loggerAbsPath, assessmentDir) {
492
+ // The assessment path is passed EXPLICITLY, not left to be discovered.
493
+ //
494
+ // VS Code Copilot Chat's hook payload has no `cwd` and no workspace roots, so
495
+ // the logger would otherwise fall back to a cwd walk-up (wrong whenever the
496
+ // editor process starts outside the assessment) or the active-assessments
497
+ // registry. The registry is not dependable here: `litmus init` deliberately
498
+ // removes the entry in project-scope mode, which silently dropped every Chat
499
+ // prompt for candidates whose HOME could not take the user-scope Claude hook.
500
+ // A repo-scope hook lives inside the assessment and knows its own path, so
501
+ // there is no reason to make it guess.
502
+ return {
503
+ type: "command",
504
+ command: `node ${quoteForShell(loggerAbsPath)} copilot ${quoteForShell(assessmentDir)}`,
505
+ timeout: COPILOT_HOOK_TIMEOUT_SECONDS,
506
+ };
507
+ }
508
+ function isOurCopilotEntry(entry) {
509
+ if (!entry || typeof entry !== "object")
510
+ return false;
511
+ const cmd = entry.command;
512
+ return typeof cmd === "string" && OUR_COMMAND_PATTERN.test(cmd);
513
+ }
514
+ /**
515
+ * Install a `UserPromptSubmit` hook in `<assessment>/.github/hooks/litmus.json`.
516
+ * Idempotent.
517
+ *
518
+ * `loggerAbsPath` must be absolute. The shipped version used a RELATIVE path
519
+ * (`node .litmus/hook-logger.cjs copilot`), which only resolves when the hook
520
+ * runner's cwd happens to be the assessment root — and VS Code Copilot Chat
521
+ * sends no cwd at all.
522
+ *
523
+ * Merges rather than overwrites: the previous implementation was an
524
+ * unconditional writeFileSync, so a candidate whose repo already had a
525
+ * `.github/hooks/litmus.json` lost it with no backup. Preserves their other
526
+ * events and any foreign entries under our own event, and keeps a `.litmus-backup`
527
+ * copy when the existing file cannot be parsed.
528
+ *
529
+ * Throws on a non-array value for our event rather than clobbering a shape we
530
+ * don't understand, and on any filesystem failure, so the caller can treat
531
+ * Copilot tracking as best-effort the way it already does for Codex and Cursor.
532
+ */
533
+ export function installRepoScopeCopilotHook(assessmentDir, loggerAbsPath) {
534
+ if (!path.isAbsolute(loggerAbsPath)) {
535
+ throw new Error(`installRepoScopeCopilotHook needs an absolute logger path, got: ${loggerAbsPath}`);
536
+ }
537
+ const hooksFile = copilotHooksFile(assessmentDir);
538
+ mkdirSync(path.dirname(hooksFile), { recursive: true });
539
+ let backedUpMalformed = false;
540
+ let backupPath;
541
+ let data = {};
542
+ if (existsSync(hooksFile)) {
543
+ try {
544
+ data = JSON.parse(readFileSync(hooksFile, "utf8"));
545
+ }
546
+ catch {
547
+ // Unparseable — we cannot merge into it, so the only options are "preserve
548
+ // a copy and replace" or "leave it alone". Deliberately NOT best-effort:
549
+ // if the copy fails we let it throw rather than replacing a file we could
550
+ // not preserve. Swallowing it would destroy the candidate's config
551
+ // permanently AND leave `backedUpMalformed` false, so init would print no
552
+ // warning — a silent data loss. Throwing costs only Copilot capture for
553
+ // this assessment, since the caller treats this install as best-effort.
554
+ backupPath = backupAside(hooksFile);
555
+ backedUpMalformed = true;
556
+ data = {};
557
+ }
558
+ }
559
+ if (!data.hooks || typeof data.hooks !== "object" || Array.isArray(data.hooks)) {
560
+ data.hooks = {};
561
+ }
562
+ const hooks = data.hooks;
563
+ const existingEvent = hooks[COPILOT_HOOK_EVENT];
564
+ if (existingEvent !== undefined && !Array.isArray(existingEvent)) {
565
+ throw new Error(`${hooksFile} has a non-array ${COPILOT_HOOK_EVENT} value (${typeof existingEvent}); refusing to overwrite.`);
566
+ }
567
+ const existing = Array.isArray(existingEvent) ? existingEvent : [];
568
+ const others = existing.filter(e => !isOurCopilotEntry(e));
569
+ hooks[COPILOT_HOOK_EVENT] = [...others, buildCopilotHookEntry(loggerAbsPath, assessmentDir)];
570
+ atomicWriteFileSync(hooksFile, JSON.stringify(data, null, 2) + "\n");
571
+ return { backedUpMalformed, backupPath };
572
+ }
573
+ /**
574
+ * Remove our entry from the assessment's Copilot hooks file.
575
+ *
576
+ * Usually moot — `litmus submit` deletes the whole assessment folder — but the
577
+ * walkthrough-handoff exit path does not, and a candidate may have pointed init
578
+ * at a directory they keep.
579
+ */
580
+ export function uninstallRepoScopeCopilotHook(assessmentDir) {
581
+ const hooksFile = copilotHooksFile(assessmentDir);
582
+ if (!existsSync(hooksFile))
583
+ return;
584
+ let data;
585
+ try {
586
+ data = JSON.parse(readFileSync(hooksFile, "utf8"));
587
+ }
588
+ catch {
589
+ return;
590
+ }
591
+ const entries = data.hooks?.[COPILOT_HOOK_EVENT];
592
+ if (!Array.isArray(entries))
593
+ return;
594
+ const filtered = entries.filter(e => !isOurCopilotEntry(e));
595
+ if (filtered.length === entries.length)
596
+ return;
597
+ if (filtered.length === 0) {
598
+ delete data.hooks[COPILOT_HOOK_EVENT];
599
+ if (Object.keys(data.hooks).length === 0)
600
+ delete data.hooks;
601
+ }
602
+ else {
603
+ data.hooks[COPILOT_HOOK_EVENT] = filtered;
604
+ }
605
+ try {
606
+ atomicWriteFileSync(hooksFile, JSON.stringify(data, null, 2) + "\n");
607
+ }
608
+ catch { /* unwritable, give up silently */ }
609
+ }
427
610
  // ── Active-assessments registry ───────────────────────────────────
428
611
  // Tracks which assessment directories are currently active so the hook-logger
429
612
  // can capture even when Claude Code / Codex / Copilot CLI fire from a cwd
@@ -1 +1 @@
1
- {"version":3,"file":"ai-tracking.js","sourceRoot":"","sources":["../../src/lib/ai-tracking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-tracking.js","sourceRoot":"","sources":["../../src/lib/ai-tracking.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,9 @@
9
9
  *
10
10
  * Each tool pipes JSON on stdin when a user submits a prompt:
11
11
  * - Claude Code (UserPromptSubmit): stdin JSON with session_id, prompt content
12
- * - Copilot CLI (userPromptSubmitted): { timestamp, cwd, prompt }
12
+ * - GitHub Copilot (UserPromptSubmit): CLI sends { sessionId, timestamp, cwd,
13
+ * prompt }; VS Code Copilot Chat sends { hook_event_name, session_id,
14
+ * transcript_path, timestamp, prompt } and notably NO cwd
13
15
  * - Codex CLI: experimental hooks support (format TBD)
14
16
  * - Cursor (beforeSubmitPrompt): { conversation_id, generation_id, prompt, ... }
15
17
  *
@@ -43,6 +45,21 @@ const STDIN_TIMEOUT_MS = 5000
43
45
 
44
46
  const tool = process.argv[2] || "unknown"
45
47
 
48
+ // Optional explicit assessment directory (argv[3]).
49
+ //
50
+ // Repo-scope hooks are written INTO an assessment, so they know its absolute
51
+ // path at install time and should never have to guess. That matters most for
52
+ // Copilot: VS Code Copilot Chat's payload carries no `cwd` and no workspace
53
+ // roots, so without this the only resolution left is the cwd walk-up (wrong
54
+ // whenever the editor's process starts elsewhere) or the active-assessments
55
+ // registry — and the registry is not always populated. `litmus init` removes
56
+ // the entry in project-scope mode, which silently disabled Copilot Chat capture
57
+ // for exactly the candidates whose HOME could not take the user-scope hook.
58
+ //
59
+ // Passing it explicitly also sidesteps the registry's first-match behaviour,
60
+ // which misattributes prompts when a candidate has more than one assessment.
61
+ const explicitAssessmentDir = process.argv[3] || null
62
+
46
63
  // A directory only counts as an assessment if it has a config.json. Without
47
64
  // this guard, the walk-up would resolve to `~/.litmus/` (created by the
48
65
  // user-scope install) for any Claude Code session whose cwd is in HOME but
@@ -202,13 +219,44 @@ function readStdin() {
202
219
  resolve(chunks.join(""))
203
220
  }
204
221
  process.stdin.setEncoding("utf8")
205
- process.stdin.on("data", (chunk) => chunks.push(chunk))
222
+ process.stdin.on("data", (chunk) => {
223
+ chunks.push(chunk)
224
+ // Resolve as soon as the payload is a COMPLETE JSON document instead of
225
+ // waiting for EOF.
226
+ //
227
+ // Not every hook runner closes stdin after writing. Cursor demonstrably
228
+ // does not: every Cursor prompt burned the full STDIN_TIMEOUT_MS, which
229
+ // killed the 5s-budget Claude entry outright (exit 1). Waiting for EOF
230
+ // therefore spends the whole hook budget doing nothing, and the budget is
231
+ // what the awaited /cli/activity upload has to fit inside — so on any
232
+ // such runner the process is killed before the upload lands and prompts
233
+ // silently stop reaching candidate_activity_logs. That is precisely the
234
+ // regression 2c1aeeb1b fixed for Cursor; resolving on a complete document
235
+ // removes the whole failure mode rather than re-tuning timeouts per tool.
236
+ //
237
+ // Safe against partial reads: every payload is a JSON object, and a
238
+ // truncated object never parses (`{"prompt":` throws). Worst case this
239
+ // never fires and we fall back to EOF or the timeout, i.e. today's
240
+ // behaviour.
241
+ if (isCompleteJson(chunks.join(""))) done()
242
+ })
206
243
  process.stdin.on("end", done)
207
244
  process.stdin.on("error", done) // closed/absent stdin must not hang either
208
245
  timer = setTimeout(done, STDIN_TIMEOUT_MS)
209
246
  })
210
247
  }
211
248
 
249
+ function isCompleteJson(buf) {
250
+ const trimmed = buf.trim()
251
+ if (!trimmed) return false
252
+ try {
253
+ JSON.parse(trimmed)
254
+ return true
255
+ } catch {
256
+ return false
257
+ }
258
+ }
259
+
212
260
  function extractPrompt(input, toolName) {
213
261
  try {
214
262
  const data = JSON.parse(input)
@@ -224,10 +272,24 @@ function extractPrompt(input, toolName) {
224
272
  }
225
273
  }
226
274
  case "copilot": {
227
- // Copilot CLI userPromptSubmitted: { timestamp, cwd, prompt }
275
+ // GitHub Copilot, both surfaces. We register the hook under the
276
+ // PascalCase `UserPromptSubmit` key, which Copilot CLI maps onto its
277
+ // internal `userPromptSubmitted` (alias map verified in the first-party
278
+ // @github/copilot SDK) and which VS Code Copilot Chat uses natively —
279
+ // so one config serves the terminal binary, the cloud agent, VS Code
280
+ // and JetBrains.
281
+ //
282
+ // Payloads differ slightly by surface, so read both spellings:
283
+ // Copilot CLI { sessionId | session_id, timestamp, cwd, prompt }
284
+ // VS Code Chat { hook_event_name, session_id?, transcript_path?,
285
+ // timestamp, prompt } <- note: no cwd
286
+ // The missing cwd is why this arm must never rely on the hook's working
287
+ // directory to locate the assessment; resolution comes from the
288
+ // registry fallback in findLitmusDir.
289
+ const prompt = data.prompt || null
228
290
  return {
229
- prompt: data.prompt || null,
230
- sessionId: null,
291
+ prompt: typeof prompt === "string" ? prompt : JSON.stringify(prompt),
292
+ sessionId: data.session_id || data.sessionId || null,
231
293
  }
232
294
  }
233
295
  case "codex": {
@@ -403,7 +465,12 @@ async function main() {
403
465
  const { prompt, sessionId, workspaceRoots } = extractPrompt(raw, effectiveTool)
404
466
  if (!prompt) return
405
467
 
406
- const litmusDir = findLitmusDir(workspaceRoots || [])
468
+ // Explicit hint first: it is the only source that is correct by construction.
469
+ // Then the tool-supplied workspace roots, then cwd, then the registry.
470
+ const hintDirs = explicitAssessmentDir
471
+ ? [explicitAssessmentDir, ...(workspaceRoots || [])]
472
+ : (workspaceRoots || [])
473
+ const litmusDir = findLitmusDir(hintDirs)
407
474
  if (!litmusDir) return // Not in a Litmus assessment — silently exit
408
475
 
409
476
  // Claim as LATE as possible — only once we know we have a prompt and somewhere
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "litmus-cli",
3
- "version": "1.3.10",
3
+ "version": "1.3.12",
4
4
  "description": "CLI tool for Litmus engineering assessments",
5
5
  "license": "MIT",
6
6
  "author": "elenazhao",