amicus 3.2.2 → 3.2.3
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/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +15 -0
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/sidecar/electron-lock.js +4 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "amicus",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.3",
|
|
4
4
|
"description": "Multi-model LLM Council + parallel AI window for Claude Code. Run structured council reviews across Gemini, GPT, DeepSeek and more — or fork a conversation to any model and fold the results back.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Christian Wagner"
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,21 @@ All notable changes to Amicus are documented here. Format follows
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [3.2.3] - 2026-07-18
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- **The Electron repair lockfile key is per-install again.** `lockPathFor()`
|
|
13
|
+
derived its temp-lockfile key from only the first 8 characters of the Electron
|
|
14
|
+
dir path (its hex encoding truncated to 16 chars), so distinct installs that
|
|
15
|
+
share a leading path segment (`C:\Users…`, `/home/us…`) collapsed onto a single
|
|
16
|
+
shared lockfile — defeating the intended per-install isolation and causing
|
|
17
|
+
intermittent cross-worktree test failures, where suites run from different
|
|
18
|
+
`.claude/worktrees/*` raced on the same lock. The key now hashes the full
|
|
19
|
+
Electron dir with sha1, mirroring the engine-lock fix shipped in v3.2.2. The
|
|
20
|
+
public `acquireRepairLock` interface is unchanged, so there is no downstream
|
|
21
|
+
impact; stale lockfiles from the old key simply age out (#69).
|
|
22
|
+
|
|
8
23
|
## [3.2.2] - 2026-07-17
|
|
9
24
|
|
|
10
25
|
### Fixed
|
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "amicus",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.3",
|
|
4
4
|
"mcpName": "io.github.BourbonDog/amicus",
|
|
5
5
|
"description": "Multi-model LLM Council + parallel AI window for Claude Code. Run structured council reviews across Gemini, GPT, DeepSeek and more — or fork a conversation to any model and fold the results back.",
|
|
6
6
|
"keywords": [
|
|
@@ -22,7 +22,10 @@ const STALE_MS = 15 * 60 * 1000;
|
|
|
22
22
|
|
|
23
23
|
/** Temp-dir lockfile path, keyed by the electron install dir. */
|
|
24
24
|
function lockPathFor(electronDir) {
|
|
25
|
-
|
|
25
|
+
// Hash the FULL path: a truncated hex prefix collapsed distinct installs that
|
|
26
|
+
// share a leading path segment (C:\Users…, /home/us…) onto one lockfile,
|
|
27
|
+
// defeating per-install isolation. Mirrors src/utils/engine-lock.js.
|
|
28
|
+
const key = require('crypto').createHash('sha1').update(electronDir).digest('hex').slice(0, 16);
|
|
26
29
|
return path.join(os.tmpdir(), `amicus-electron-repair-${key}.lock`);
|
|
27
30
|
}
|
|
28
31
|
|