claude-spotter 1.5.13 → 1.5.14
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/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
各節はそのversion公開時点の変更記録であり、後続versionにより置換された仕様を含む。
|
|
4
4
|
現行runtime契約は[`docs/00_overview.md`](docs/00_overview.md)から辿る。
|
|
5
5
|
|
|
6
|
+
## 1.5.14 — 2026-08-24
|
|
7
|
+
|
|
8
|
+
- **挙動不変のOS層整理(harness用語統一campaignの分離規約)。** Windows絶対パス表記
|
|
9
|
+
(ドライブレター/UNC)の判定を`src/platform/paths.mjs`の`isWindowsAbsolutePath()`へ集約し、
|
|
10
|
+
tool-db側の独自regexを委譲へ置換。runtime-error-storeの`killWorkerTree`には
|
|
11
|
+
`terminateProcessTree`と意図的に別物である理由(絶対にrejectしないbest-effort掃除)を明記した。
|
|
12
|
+
公開面・挙動は不変。
|
|
13
|
+
|
|
6
14
|
## 1.5.13 — 2026-08-23
|
|
7
15
|
|
|
8
16
|
- **OS依存を`src/platform/`へ集約。** 6ファイルへ重複していたWindowsのcmd.exe /c wrap・
|
package/package.json
CHANGED
|
@@ -292,6 +292,8 @@ function runRuntimeWorker(workerPath, args, timeoutMs, signal) {
|
|
|
292
292
|
});
|
|
293
293
|
}
|
|
294
294
|
|
|
295
|
+
// platform/spawn.mjs の terminateProcessTree と似るが意図的に別物: こちらは受領記録の
|
|
296
|
+
// best-effort掃除で、絶対にrejectせず(SIGKILL直行・225ms fallback)呼び出し元を止めない。
|
|
295
297
|
function killWorkerTree(child) {
|
|
296
298
|
if (!Number.isSafeInteger(child?.pid) || child.pid <= 0) return Promise.resolve();
|
|
297
299
|
if (process.platform === 'win32') {
|
package/src/platform/paths.mjs
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
// 5. ← tools/list result (response with tools[] each having {name, description})
|
|
11
11
|
|
|
12
12
|
import { spawn } from 'node:child_process';
|
|
13
|
+
import { isWindowsAbsolutePath } from '../platform/paths.mjs';
|
|
13
14
|
import { execFileWindowsSafe, windowsCompatibleCommand } from '../platform/spawn.mjs';
|
|
14
15
|
import { listToolsHttp } from './investigate-mcp-http.mjs';
|
|
15
16
|
import { readMcpServers, describeServer } from './mcp-config.mjs';
|
|
@@ -186,7 +187,7 @@ export function splitCommandLine(s) {
|
|
|
186
187
|
}
|
|
187
188
|
|
|
188
189
|
function extractUnquotedWindowsExecutable(s) {
|
|
189
|
-
if (
|
|
190
|
+
if (!isWindowsAbsolutePath(s)) return null;
|
|
190
191
|
const match = s.match(/^(.+?\.(?:exe|cmd|bat))(?:\s+|$)(.*)$/iu);
|
|
191
192
|
if (!match) return null;
|
|
192
193
|
return { command: match[1], rest: match[2].trim() };
|