litmus-cli 1.3.4 → 1.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +21 -0
  2. package/dist/commands/init.d.ts.map +1 -1
  3. package/dist/commands/init.js +140 -43
  4. package/dist/commands/init.js.map +1 -1
  5. package/dist/commands/status.d.ts.map +1 -1
  6. package/dist/commands/status.js +97 -17
  7. package/dist/commands/status.js.map +1 -1
  8. package/dist/commands/submit.d.ts.map +1 -1
  9. package/dist/commands/submit.js +30 -4
  10. package/dist/commands/submit.js.map +1 -1
  11. package/dist/lib/ai-tracking.d.ts +50 -0
  12. package/dist/lib/ai-tracking.d.ts.map +1 -0
  13. package/dist/lib/ai-tracking.js +345 -0
  14. package/dist/lib/ai-tracking.js.map +1 -0
  15. package/dist/lib/api.d.ts.map +1 -1
  16. package/dist/lib/api.js +143 -30
  17. package/dist/lib/api.js.map +1 -1
  18. package/dist/lib/config.d.ts.map +1 -1
  19. package/dist/lib/config.js +14 -5
  20. package/dist/lib/config.js.map +1 -1
  21. package/dist/lib/errors.js +3 -3
  22. package/dist/lib/errors.js.map +1 -1
  23. package/dist/lib/extract.d.ts.map +1 -1
  24. package/dist/lib/extract.js +22 -3
  25. package/dist/lib/extract.js.map +1 -1
  26. package/dist/lib/format-time.d.ts +28 -0
  27. package/dist/lib/format-time.d.ts.map +1 -0
  28. package/dist/lib/format-time.js +68 -0
  29. package/dist/lib/format-time.js.map +1 -0
  30. package/dist/lib/hook-logger.cjs +50 -16
  31. package/dist/lib/tracker.d.ts.map +1 -1
  32. package/dist/lib/tracker.js +47 -16
  33. package/dist/lib/tracker.js.map +1 -1
  34. package/dist/lib/watcher.js +133 -35
  35. package/dist/lib/watcher.js.map +1 -1
  36. package/dist/lib/zip.d.ts.map +1 -1
  37. package/dist/lib/zip.js +45 -9
  38. package/dist/lib/zip.js.map +1 -1
  39. package/package.json +3 -2
@@ -19,6 +19,7 @@
19
19
 
20
20
  const fs = require("fs")
21
21
  const path = require("path")
22
+ const os = require("os")
22
23
  const https = require("https")
23
24
  const http = require("http")
24
25
 
@@ -26,18 +27,56 @@ const http = require("http")
26
27
  // ~1800 chars of prompt + ~150 bytes of wrapper fields + JSON escaping = safely under 2KB.
27
28
  const MAX_PROMPT_LENGTH = 1800
28
29
 
30
+ // Hard cap on stdin wait. Claude Code closes the pipe as soon as the prompt
31
+ // payload is written, so this only matters if a tool hangs without closing
32
+ // stdin. 5s matches the install-side hook timeout for `claude` so we never
33
+ // outlive the hook runner.
34
+ const STDIN_TIMEOUT_MS = 5000
35
+
29
36
  const tool = process.argv[2] || "unknown"
30
37
 
31
- // Find the .litmus directory walk up from cwd
38
+ // A directory only counts as an assessment if it has a config.json. Without
39
+ // this guard, the walk-up would resolve to `~/.litmus/` (created by the
40
+ // user-scope install) for any Claude Code session whose cwd is in HOME but
41
+ // outside an assessment — silently misrouting prompts to a junk log that
42
+ // never reaches the submission ZIP, and capturing non-Litmus prompts the
43
+ // candidate didn't intend to share.
44
+ function isAssessmentLitmusDir(litmusDir) {
45
+ try {
46
+ return fs.statSync(path.join(litmusDir, "config.json")).isFile()
47
+ } catch {
48
+ return false
49
+ }
50
+ }
51
+
52
+ // Find the .litmus directory — walk up from cwd, then fall back to the
53
+ // active-assessments registry that `litmus init` writes to ~/.litmus/.
54
+ // The cwd walk-up handles the common case (candidate opens VS Code at the
55
+ // assessment dir). The registry fallback handles the case where Claude Code,
56
+ // Codex, or Copilot CLI fires from a cwd outside the assessment dir — e.g.
57
+ // VS Code workspace opened at a parent dir, or the candidate ran `claude`
58
+ // from their home dir.
32
59
  function findLitmusDir() {
33
60
  let dir = process.cwd()
34
61
  for (let i = 0; i < 10; i++) {
35
62
  const candidate = path.join(dir, ".litmus")
36
- if (fs.existsSync(candidate)) return candidate
63
+ if (isAssessmentLitmusDir(candidate)) return candidate
37
64
  const parent = path.dirname(dir)
38
65
  if (parent === dir) break
39
66
  dir = parent
40
67
  }
68
+ try {
69
+ const home = os.homedir()
70
+ if (!home) return null
71
+ const registry = path.join(home, ".litmus", "active-assessments.json")
72
+ const list = JSON.parse(fs.readFileSync(registry, "utf8"))
73
+ if (!Array.isArray(list)) return null
74
+ for (const p of list) {
75
+ if (typeof p !== "string") continue
76
+ const candidate = path.join(p, ".litmus")
77
+ if (isAssessmentLitmusDir(candidate)) return candidate
78
+ }
79
+ } catch { /* no registry — give up silently */ }
41
80
  return null
42
81
  }
43
82
 
@@ -85,11 +124,9 @@ function readStdin() {
85
124
  process.stdin.on("end", () => {
86
125
  if (!resolved) { resolved = true; resolve(chunks.join("")) }
87
126
  })
88
- // Safety timeout — stdin should arrive immediately from hook runners.
89
- // Keep this short to avoid blocking the AI tool.
90
127
  setTimeout(() => {
91
128
  if (!resolved) { resolved = true; resolve(chunks.join("")) }
92
- }, 300)
129
+ }, STDIN_TIMEOUT_MS)
93
130
  })
94
131
  }
95
132
 
@@ -99,11 +136,9 @@ function extractPrompt(input, toolName) {
99
136
 
100
137
  switch (toolName) {
101
138
  case "claude": {
102
- // Claude Code UserPromptSubmit: prompt may be in message.content or content field
103
- const prompt = data.user_message
104
- || data.prompt
105
- || (data.message && data.message.content)
106
- || null
139
+ // Claude Code UserPromptSubmit per docs.claude.com/en/docs/claude-code/hooks:
140
+ // payload is { session_id, transcript_path, cwd, hook_event_name, prompt }.
141
+ const prompt = data.prompt || null
107
142
  return {
108
143
  prompt: typeof prompt === "string" ? prompt : JSON.stringify(prompt),
109
144
  sessionId: data.session_id || null,
@@ -117,14 +152,13 @@ function extractPrompt(input, toolName) {
117
152
  }
118
153
  }
119
154
  case "codex": {
120
- // Codex CLI: experimental, extract what we can
121
- const prompt = data.prompt
122
- || data.user_message
123
- || (data.message && data.message.content)
124
- || null
155
+ // Codex CLI UserPromptSubmit: { session_id, turn_id, prompt, cwd, hook_event_name }
156
+ // per developers.openai.com/codex/hooks. The previous user_message / message.content
157
+ // fallbacks were unfounded — Codex's payload is documented and stable.
158
+ const prompt = data.prompt || null
125
159
  return {
126
160
  prompt: typeof prompt === "string" ? prompt : JSON.stringify(prompt),
127
- sessionId: data.thread_id || null,
161
+ sessionId: data.session_id || null,
128
162
  }
129
163
  }
130
164
  default: {
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/lib/tracker.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAyCrD"}
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/lib/tracker.ts"],"names":[],"mappings":"AA+CA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAwCrD"}
@@ -1,9 +1,16 @@
1
1
  import { spawn } from "child_process";
2
- import { existsSync, mkdirSync, openSync, readFileSync, writeFileSync } from "fs";
2
+ import { existsSync, mkdirSync, openSync, readFileSync, writeFileSync, statSync } from "fs";
3
3
  import path from "path";
4
4
  import { fileURLToPath } from "url";
5
5
  const __filename = fileURLToPath(import.meta.url);
6
6
  const __dirname = path.dirname(__filename);
7
+ const NONCE_FILE = "tracker.nonce";
8
+ // Max gap between watcher startup time (nonce mtime) and `now` to treat a
9
+ // matching PID as legitimate rather than a recycled PID belonging to an
10
+ // unrelated host process. Watcher writes the nonce immediately after spawn,
11
+ // so even a freshly-started CLI session reads a recent nonce. If the gap is
12
+ // larger than this, the PID is stale and we re-spawn.
13
+ const NONCE_MAX_AGE_MS = 7 * 24 * 60 * 60 * 1000; // 7 days
7
14
  function isProcessAlive(pid) {
8
15
  try {
9
16
  process.kill(pid, 0); // Signal 0 = check if process exists
@@ -13,6 +20,31 @@ function isProcessAlive(pid) {
13
20
  return false;
14
21
  }
15
22
  }
23
+ function isExistingTrackerOurs(pidFile, noncePath) {
24
+ if (!existsSync(pidFile))
25
+ return false;
26
+ let pid;
27
+ try {
28
+ pid = parseInt(readFileSync(pidFile, "utf8").trim(), 10);
29
+ }
30
+ catch {
31
+ return false;
32
+ }
33
+ if (isNaN(pid) || !isProcessAlive(pid))
34
+ return false;
35
+ // PID is alive — but on small-PID-space systems (notably macOS) it might be
36
+ // an unrelated process that recycled our old PID. Cross-check the nonce:
37
+ // the watcher creates it on startup and updates its mtime on each heartbeat,
38
+ // so a recent mtime alongside a matching PID means the live process really
39
+ // is our watcher.
40
+ try {
41
+ const ageMs = Date.now() - statSync(noncePath).mtimeMs;
42
+ return ageMs >= 0 && ageMs <= NONCE_MAX_AGE_MS;
43
+ }
44
+ catch {
45
+ return false;
46
+ }
47
+ }
16
48
  /**
17
49
  * Start the file watcher in the background.
18
50
  * Spawns watcher.js as a detached process; logs file events to
@@ -23,28 +55,27 @@ export function startTracker(projectDir) {
23
55
  const activityLog = path.join(litmusDir, "activity.jsonl");
24
56
  const pidFile = path.join(litmusDir, "tracker.pid");
25
57
  const errLog = path.join(litmusDir, "tracker.log");
58
+ const noncePath = path.join(litmusDir, NONCE_FILE);
59
+ // Without .litmus/ we can't write the err log or pid file, and spawning a
60
+ // tracker that has nowhere to land its output is worse than no tracker.
61
+ // Bail loudly enough to be caught upstream so the candidate sees the warning.
26
62
  try {
27
63
  mkdirSync(litmusDir, { recursive: true });
28
64
  }
29
- catch {
30
- // Non-critical
31
- }
32
- // Check if a watcher is already running
33
- if (existsSync(pidFile)) {
34
- try {
35
- const existingPid = parseInt(readFileSync(pidFile, "utf8").trim(), 10);
36
- if (!isNaN(existingPid) && isProcessAlive(existingPid)) {
37
- return; // Watcher already running
38
- }
39
- }
40
- catch {
41
- // PID file unreadable — proceed to spawn a new watcher
42
- }
65
+ catch (e) {
66
+ const reason = e instanceof Error ? e.message : String(e);
67
+ throw new Error(`Tracker cannot start: failed to create ${litmusDir} (${reason}).`);
43
68
  }
69
+ // Skip respawn only when the existing PID is alive AND the watcher's nonce
70
+ // is recent — guards against PID reuse leaving us thinking a random shell
71
+ // is our watcher and silently disabling tracking.
72
+ if (isExistingTrackerOurs(pidFile, noncePath))
73
+ return;
44
74
  const errFd = openSync(errLog, "a");
45
75
  const watcherPath = path.join(__dirname, "watcher.js");
46
76
  const cliBinPath = path.join(__dirname, "..", "index.js");
47
- const child = spawn(process.execPath, [watcherPath, projectDir, activityLog, cliBinPath], {
77
+ // Pass the nonce path so the watcher can touch it on startup + heartbeat.
78
+ const child = spawn(process.execPath, [watcherPath, projectDir, activityLog, cliBinPath, noncePath], {
48
79
  detached: true,
49
80
  stdio: ["ignore", "ignore", errFd],
50
81
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/lib/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AACjF,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAE1C,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA,CAAC,qCAAqC;QAC1D,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAClD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAElD,IAAI,CAAC;QACH,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,wCAAwC;IACxC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;YACtE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvD,OAAM,CAAC,0BAA0B;YACnC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uDAAuD;QACzD,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACnC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;IAEzD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;QACxF,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC;KACnC,CAAC,CAAA;IAEF,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAI,CAAC;YACH,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAA;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/lib/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAA;AAC3F,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAE1C,MAAM,UAAU,GAAG,eAAe,CAAA;AAClC,0EAA0E;AAC1E,wEAAwE;AACxE,4EAA4E;AAC5E,4EAA4E;AAC5E,sDAAsD;AACtD,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,SAAS;AAE1D,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA,CAAC,qCAAqC;QAC1D,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe,EAAE,SAAiB;IAC/D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAA;IACtC,IAAI,GAAW,CAAA;IACf,IAAI,CAAC;QACH,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IACpD,4EAA4E;IAC5E,yEAAyE;IACzE,6EAA6E;IAC7E,2EAA2E;IAC3E,kBAAkB;IAClB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,CAAA;QACtD,OAAO,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,gBAAgB,CAAA;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAClD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IAElD,0EAA0E;IAC1E,wEAAwE;IACxE,8EAA8E;IAC9E,IAAI,CAAC;QACH,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACzD,MAAM,IAAI,KAAK,CAAC,0CAA0C,SAAS,KAAK,MAAM,IAAI,CAAC,CAAA;IACrF,CAAC;IAED,2EAA2E;IAC3E,0EAA0E;IAC1E,kDAAkD;IAClD,IAAI,qBAAqB,CAAC,OAAO,EAAE,SAAS,CAAC;QAAE,OAAM;IAErD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACnC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;IAEzD,0EAA0E;IAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;QACnG,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC;KACnC,CAAC,CAAA;IAEF,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAI,CAAC;YACH,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAA;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -20,11 +20,40 @@ import { execSync, execFile } from "child_process";
20
20
  import dns from "dns";
21
21
  import https from "https";
22
22
  import http from "http";
23
+ import { watch as chokidarWatch } from "chokidar";
23
24
  import { getEffectiveDeadline } from "./config.js";
24
25
  import { getProcessList, getConnections, extractConnectionIP } from "./platform.js";
25
- const [, , projectDir, activityLogPath, cliBinPath] = process.argv;
26
+ // Surface any uncaught throw during startup, before user code reaches the
27
+ // uncaughtException handler installed later. Without this, an early sync
28
+ // failure (createWriteStream EPERM under Windows Defender, import error,
29
+ // etc.) exits silently and the activity log stays empty.
30
+ process.on("uncaughtException", (err) => {
31
+ process.stderr.write(`[watcher] uncaughtException: ${err.stack || err}\n`);
32
+ process.exit(1);
33
+ });
34
+ // Unhandled promise rejection on Windows under some Node builds escalates
35
+ // to a fast-fail abort (exit code 0xC0000409) without firing
36
+ // uncaughtException. Catch them so the cause is visible.
37
+ process.on("unhandledRejection", (reason) => {
38
+ const msg = reason instanceof Error ? (reason.stack || reason.message) : String(reason);
39
+ process.stderr.write(`[watcher] unhandledRejection: ${msg}\n`);
40
+ });
41
+ const [, , projectDir, activityLogPath, cliBinPath, noncePath] = process.argv;
26
42
  process.stderr.write(`[watcher] starting: projectDir=${projectDir} log=${activityLogPath}\n`);
27
43
  process.stderr.write(`[watcher] node ${process.version}, platform=${process.platform}, arch=${process.arch}\n`);
44
+ // Touch the nonce file on startup so tracker.ts can distinguish "our watcher
45
+ // is alive" from "a recycled PID happens to match an old tracker.pid".
46
+ // Heartbeat updates the mtime; tracker.ts compares against NONCE_MAX_AGE_MS.
47
+ function touchNonce() {
48
+ if (!noncePath)
49
+ return;
50
+ try {
51
+ const now = new Date();
52
+ fs.writeFileSync(noncePath, String(now.getTime()));
53
+ }
54
+ catch { /* non-critical */ }
55
+ }
56
+ touchNonce();
28
57
  if (!projectDir || !activityLogPath) {
29
58
  process.stderr.write("[watcher] missing arguments\n");
30
59
  process.exit(1);
@@ -37,6 +66,12 @@ if (!fs.existsSync(projectDir)) {
37
66
  fs.mkdirSync(path.dirname(activityLogPath), { recursive: true });
38
67
  // Open the log file for appending
39
68
  const log = fs.createWriteStream(activityLogPath, { flags: "a" });
69
+ // Without an 'error' listener, a stream error (locked file, disk full, AV
70
+ // quarantine) becomes an unhandled 'error' event and crashes the watcher
71
+ // without explanation. Log instead so the cause surfaces in stderr.
72
+ log.on("error", (err) => {
73
+ process.stderr.write(`[watcher] log stream error: ${err.stack || err}\n`);
74
+ });
40
75
  // ── Config ──────────────────────────────────────────────────────
41
76
  let litmusConfig = null;
42
77
  try {
@@ -73,10 +108,13 @@ function uploadEvents() {
73
108
  },
74
109
  timeout: 10000,
75
110
  }, (res) => {
76
- // Collect response body (for pendingQuestions and other server signals)
77
- let responseData = "";
78
- res.on("data", (chunk) => { responseData += chunk.toString(); });
111
+ // Collect response body (for pendingQuestions and other server signals).
112
+ // Buffer the chunks and decode once at end — per-chunk `toString()`
113
+ // corrupts UTF-8 split across TCP boundaries.
114
+ const responseChunks = [];
115
+ res.on("data", (chunk) => { responseChunks.push(chunk); });
79
116
  res.on("end", () => {
117
+ const responseData = Buffer.concat(responseChunks).toString("utf8");
80
118
  if (res.statusCode >= 500) {
81
119
  process.stderr.write(`[watcher] upload failed (will retry): ${res.statusCode}\n`);
82
120
  uploadBuffer = events.concat(uploadBuffer);
@@ -220,43 +258,85 @@ function checkBurstEdit(filename) {
220
258
  }
221
259
  }
222
260
  // ── File system watcher (debounced) ──────────────────────────────
223
- process.on("uncaughtException", (err) => {
224
- process.stderr.write(`[watcher] uncaughtException: ${err.stack || err}\n`);
225
- process.exit(1);
226
- });
227
- try {
228
- const watcher = fs.watch(projectDir, { recursive: true }, (eventType, filename) => {
229
- if (!filename)
230
- return;
231
- // Check for AI artifact files before applying ignore filter (artifacts are dotfiles)
232
- checkArtifact(filename);
233
- if (shouldIgnore(filename))
234
- return;
235
- // Check for burst edits on raw events (before debounce — needs real timing)
236
- checkBurstEdit(filename);
237
- // Debounce per file: collapse multiple events within 500ms into one
238
- if (debounceTimers.has(filename)) {
239
- clearTimeout(debounceTimers.get(filename));
240
- }
241
- debounceTimers.set(filename, setTimeout(() => {
242
- debounceTimers.delete(filename);
243
- emitFileEvent(eventType, filename);
244
- }, 500));
245
- });
246
- watcher.on("error", (err) => {
247
- process.stderr.write(`[watcher] fs.watch error: ${err}\n`);
248
- });
249
- process.stderr.write("[watcher] file watcher started\n");
261
+ // (uncaughtException handler installed at the top of the file so it covers
262
+ // early-startup throws too.)
263
+ function handleFileEvent(eventType, filename) {
264
+ if (!filename)
265
+ return;
266
+ // Check for AI artifact files before applying ignore filter (artifacts are dotfiles)
267
+ checkArtifact(filename);
268
+ if (shouldIgnore(filename))
269
+ return;
270
+ // Check for burst edits on raw events (before debounce — needs real timing)
271
+ checkBurstEdit(filename);
272
+ // Debounce per file: collapse multiple events within 500ms into one
273
+ if (debounceTimers.has(filename)) {
274
+ clearTimeout(debounceTimers.get(filename));
275
+ }
276
+ debounceTimers.set(filename, setTimeout(() => {
277
+ debounceTimers.delete(filename);
278
+ emitFileEvent(eventType, filename);
279
+ }, 500));
250
280
  }
251
- catch (err) {
252
- // fs.watch with recursive: true is not supported on Linux < Node 22.
253
- // Continue without file watching heartbeats and git commit polling still work.
254
- process.stderr.write(`[watcher] file watching unavailable: ${err.message} (heartbeat + git tracking still active)\n`);
281
+ if (process.platform === "win32") {
282
+ // Node's fs.watch(dir, { recursive: true }) on Windows uses
283
+ // ReadDirectoryChangesW. On windows-2025-vs2026 runners with Node 24 this
284
+ // path calls __fastfail() from native code after watcher init completes,
285
+ // aborting the process with exit code 0xC0000409 and bypassing every
286
+ // JS-level exit hook (uncaughtException, beforeExit, exit). Confirmed by
287
+ // an isolation test that gated fs.watch behind an env var and showed the
288
+ // watcher healthy on the same runner. Until either Node or libuv fixes
289
+ // the recursive watch on Windows 2025, use chokidar's polling mode here.
290
+ try {
291
+ const watcher = chokidarWatch(projectDir, {
292
+ ignoreInitial: true,
293
+ followSymlinks: false,
294
+ usePolling: true,
295
+ interval: 500,
296
+ binaryInterval: 1000,
297
+ ignored: (p) => {
298
+ const rel = path.relative(projectDir, p);
299
+ // Don't ignore the root dir itself, or chokidar reports nothing.
300
+ if (!rel)
301
+ return false;
302
+ return shouldIgnore(rel);
303
+ },
304
+ });
305
+ watcher.on("add", (p) => handleFileEvent("rename", path.relative(projectDir, p)));
306
+ watcher.on("change", (p) => handleFileEvent("change", path.relative(projectDir, p)));
307
+ watcher.on("unlink", (p) => handleFileEvent("rename", path.relative(projectDir, p)));
308
+ watcher.on("error", (err) => {
309
+ process.stderr.write(`[watcher] chokidar error: ${err}\n`);
310
+ });
311
+ process.stderr.write("[watcher] file watcher started (chokidar polling)\n");
312
+ }
313
+ catch (err) {
314
+ process.stderr.write(`[watcher] chokidar setup failed: ${err.message} (heartbeat + git tracking still active)\n`);
315
+ }
316
+ }
317
+ else {
318
+ try {
319
+ const watcher = fs.watch(projectDir, { recursive: true }, (eventType, filename) => {
320
+ if (!filename)
321
+ return;
322
+ handleFileEvent(eventType, filename);
323
+ });
324
+ watcher.on("error", (err) => {
325
+ process.stderr.write(`[watcher] fs.watch error: ${err}\n`);
326
+ });
327
+ process.stderr.write("[watcher] file watcher started\n");
328
+ }
329
+ catch (err) {
330
+ // fs.watch with recursive: true is not supported on Linux < Node 22.
331
+ // Continue without file watching — heartbeats and git commit polling still work.
332
+ process.stderr.write(`[watcher] file watching unavailable: ${err.message} (heartbeat + git tracking still active)\n`);
333
+ }
255
334
  }
256
335
  // ── Heartbeats ───────────────────────────────────────────────────
257
336
  function emitHeartbeat() {
258
337
  emit({ ts: new Date().toISOString(), type: "heartbeat" });
259
338
  uploadEvents(); // Upload buffered events to server
339
+ touchNonce(); // Keep our liveness signal fresh for the CLI's PID-reuse check
260
340
  }
261
341
  emitHeartbeat(); // Immediate heartbeat + initial upload
262
342
  setInterval(emitHeartbeat, 5 * 60 * 1000); // Every 5 minutes
@@ -549,6 +629,18 @@ const SNAPSHOT_IGNORE = [
549
629
  /package-lock\.json$/,
550
630
  /yarn\.lock$/,
551
631
  /pnpm-lock\.yaml$/,
632
+ // Likely-secret files. Defensive: dotfile rule catches `.env` and `.envrc`,
633
+ // but a candidate's `secrets.json`, `credentials.yaml`, RSA keys, or PEM
634
+ // certificates would otherwise stream to /cli/snapshot. The snapshot is
635
+ // meant for interview-agent context, not auth material.
636
+ /(?:^|[/\\])secrets?\.[^/\\]+$/i,
637
+ /(?:^|[/\\])credentials?\.[^/\\]+$/i,
638
+ /\.pem$/i,
639
+ /\.key$/i,
640
+ /\.pfx$/i,
641
+ /\.p12$/i,
642
+ /id_rsa(\.pub)?$/i,
643
+ /id_ed25519(\.pub)?$/i,
552
644
  ];
553
645
  function shouldIgnoreForSnapshot(relPath) {
554
646
  return SNAPSHOT_IGNORE.some((re) => re.test(relPath));
@@ -658,6 +750,12 @@ function getRecentCommits() {
658
750
  function uploadSnapshot() {
659
751
  if (!uploadConfig)
660
752
  return;
753
+ // Submit / time-limit / SIGTERM all set shuttingDown=true and flush the
754
+ // queue. The 5-min interval would otherwise keep firing after the session
755
+ // closed (server has already accepted the submission). Bail if we're
756
+ // already on the way out.
757
+ if (shuttingDown)
758
+ return;
661
759
  const files = collectProjectFiles();
662
760
  const fileCount = Object.keys(files).length;
663
761
  if (fileCount === 0)
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../src/lib/watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../src/lib/watcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../src/lib/zip.ts"],"names":[],"mappings":"AAqCA,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,6DAA6D;IAC7D,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC1C;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAwDhF"}
1
+ {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../src/lib/zip.ts"],"names":[],"mappings":"AA8CA,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,6DAA6D;IAC7D,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC1C;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CA6DhF"}