mneme-ai 2.19.57 → 2.19.58

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":"autonomic_breath_hook.d.ts","sourceRoot":"","sources":["../src/autonomic_breath_hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAiCH;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAC/F,MAAM,EAAE,SAAS,GAAG,eAAe,GAAG,WAAW,GAAG,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC3F,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC,CAqED;AAED,eAAO,MAAM,OAAO,KAAsB,CAAC"}
1
+ {"version":3,"file":"autonomic_breath_hook.d.ts","sourceRoot":"","sources":["../src/autonomic_breath_hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAiCH;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAC/F,MAAM,EAAE,SAAS,GAAG,eAAe,GAAG,WAAW,GAAG,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC3F,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC,CAyFD;AAED,eAAO,MAAM,OAAO,KAAsB,CAAC"}
@@ -83,20 +83,39 @@ export async function ensureAutonomicBreath(opts) {
83
83
  if (!decision.shouldRespawn) {
84
84
  return { action: "already_alive", ms: Date.now() - t0 };
85
85
  }
86
- // v2.19.53/56 — RESPAWN THROTTLE (cheap-probe variant).
86
+ // v2.19.53/56/58 — RESPAWN THROTTLE (cheap-probe variant) + INSTALL SHIELD.
87
87
  //
88
- // v2.19.53 read every heartbeat file + did process.kill probes that
89
- // turned out to be the source of v2.19.54's 18x P1 latency regression
90
- // (50 parallel CLIs each doing readdirSync + readFileSync × N + kill probe).
88
+ // The 6-recurring-rounds EBUSY bug class root cause: when `npm install -g
89
+ // mneme-ai@latest` runs with a daemon alive, the preinstall stops the
90
+ // daemon. But mid-install ANY other CLI invocation (Cursor MCP server,
91
+ // VS Code extension, parallel terminal) respawns the daemon → daemon
92
+ // loads sharp/libvips DLL → next npm file-copy of sharp-win32-x64.node
93
+ // hits EBUSY → user-visible install failure.
91
94
  //
92
- // v2.19.56 replaces it with a single statSync on the heartbeat dir mtime.
93
- // If ANY heartbeat was written in the last RESPAWN_THROTTLE_MS, throttle.
94
- // ~1ms per call vs ~360ms before. Fallback: if the cheap probe throws or
95
- // install_organ isn't available, fall through to detached respawn (the
96
- // OLD behaviour) so we never DEADLOCK a fresh install.
95
+ // v2.19.58 fix: install-incoming.flag throttle window (5 minutes by
96
+ // default npm install can take that long). When the preinstall (or
97
+ // mneme upgrade --execute, or any MCP install.announce) writes the flag,
98
+ // ALL autonomic_breath_hook respawns are vetoed for the next 5 minutes.
99
+ // Bug class extinct: daemon stays dead through the entire install window.
100
+ //
101
+ // Belt-and-suspenders: also keep the 2s heartbeat-mtime throttle for
102
+ // the OTHER race (50 parallel CLI starts during normal operation).
97
103
  try {
98
104
  // eslint-disable-next-line @typescript-eslint/no-require-imports
99
105
  const core = require("@mneme-ai/core");
106
+ // SHIELD 1 — install-incoming.flag (v2.19.58, 5-minute window).
107
+ const INSTALL_FLAG_TTL_MS = 5 * 60 * 1000;
108
+ try {
109
+ const flag = core.installOrgan.readInstallIncoming();
110
+ if (flag && typeof flag.announcedAt === "string") {
111
+ const ageMs = Date.now() - new Date(flag.announcedAt).getTime();
112
+ if (Number.isFinite(ageMs) && ageMs >= 0 && ageMs < INSTALL_FLAG_TTL_MS) {
113
+ return { action: "throttled", ms: Date.now() - t0 };
114
+ }
115
+ }
116
+ }
117
+ catch { /* readInstallIncoming may not exist on older core — fall through */ }
118
+ // SHIELD 2 — heartbeat-mtime (v2.19.56, 2-second window).
100
119
  const RESPAWN_THROTTLE_MS = 2_000;
101
120
  if (typeof core.installOrgan.recentHeartbeatActivity === "function"
102
121
  && core.installOrgan.recentHeartbeatActivity(RESPAWN_THROTTLE_MS)) {
@@ -1 +1 @@
1
- {"version":3,"file":"autonomic_breath_hook.js","sourceRoot":"","sources":["../src/autonomic_breath_hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autonomic_breath_hook.js","sourceRoot":"","sources":["../src/autonomic_breath_hook.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mneme-ai",
3
- "version": "2.19.57",
3
+ "version": "2.19.58",
4
4
  "mcpName": "io.github.patsa2561-art/mneme-ai",
5
5
  "description": "Mneme เน‚โ‚ฌโ€ the memory layer for your codebase. Knows the WHY, the WHAT, the WHERE-IT-BREAKS.",
6
6
  "type": "module",
@@ -28,13 +28,13 @@
28
28
  "scripts": {
29
29
  "build": "tsc -b",
30
30
  "clean": "tsc -b --clean",
31
- "preinstall": "node -e \"try{const fs=require('node:fs');const path=require('node:path');const os=require('node:os');const{spawnSync}=require('node:child_process');const w=process.platform==='win32';const home=os.homedir();const organ=path.join(home,'.mneme-global');try{if(!fs.existsSync(organ))fs.mkdirSync(organ,{recursive:true,mode:0o700})}catch(e){}try{fs.writeFileSync(path.join(organ,'install-incoming.flag'),JSON.stringify({v:1,announcedAt:new Date().toISOString(),announcerPid:process.pid,reason:'preinstall-hook'}),{encoding:'utf8',mode:0o600})}catch(e){}const wait=(ms)=>{const e=Date.now()+ms;while(Date.now()<e){}};wait(300);spawnSync(w?'mneme.cmd':'mneme',['daemon','stop'],{shell:w,windowsHide:true,timeout:8000,stdio:'ignore'});const backoffs=[100,250,500,1000,2000];for(let i=0;i<=backoffs.length;i++){try{const beatDir=path.join(organ,'heartbeats');if(fs.existsSync(beatDir)){for(const f of fs.readdirSync(beatDir)){const m=f.match(/^(\\d+)\\.beat$/);if(m){const pid=parseInt(m[1]);if(pid>0&&pid!==process.pid){try{process.kill(pid,'SIGTERM')}catch(e){}try{fs.unlinkSync(path.join(beatDir,f))}catch(e){}}}}}}catch(e){}if(i<backoffs.length)wait(backoffs[i])}}catch(e){}process.exit(0)\""
31
+ "preinstall": "node -e \"try{const fs=require('node:fs');const path=require('node:path');const os=require('node:os');const{spawnSync}=require('node:child_process');const w=process.platform==='win32';const home=os.homedir();const organ=path.join(home,'.mneme-global');try{if(!fs.existsSync(organ))fs.mkdirSync(organ,{recursive:true,mode:0o700})}catch(e){}try{fs.writeFileSync(path.join(organ,'install-incoming.flag'),JSON.stringify({v:1,announcedAt:new Date().toISOString(),announcerPid:process.pid,reason:'preinstall-hook'}),{encoding:'utf8',mode:0o600})}catch(e){}const wait=(ms)=>{const e=Date.now()+ms;while(Date.now()<e){}};const isAlive=(p)=>{if(!p||p<=0)return false;try{process.kill(p,0);return true}catch(e){return e.code==='EPERM'}};const reap=()=>{try{const beatDir=path.join(organ,'heartbeats');if(fs.existsSync(beatDir)){for(const f of fs.readdirSync(beatDir)){const m=f.match(/^(\\d+)\\.beat$/);if(m){const pid=parseInt(m[1]);if(pid>0&&pid!==process.pid){try{process.kill(pid,'SIGTERM')}catch(e){}try{fs.unlinkSync(path.join(beatDir,f))}catch(e){}}}}}}catch(e){}};wait(300);spawnSync(w?'mneme.cmd':'mneme',['daemon','stop'],{shell:w,windowsHide:true,timeout:8000,stdio:'ignore'});const backoffs=[100,250,500,1000,2000];for(let i=0;i<=backoffs.length;i++){reap();if(i<backoffs.length)wait(backoffs[i])}const verifyEnd=Date.now()+3000;while(Date.now()<verifyEnd){const beatDir=path.join(organ,'heartbeats');let anyAlive=false;try{if(fs.existsSync(beatDir)){for(const f of fs.readdirSync(beatDir)){const m=f.match(/^(\\d+)\\.beat$/);if(m){const pid=parseInt(m[1]);if(pid>0&&pid!==process.pid&&isAlive(pid)){anyAlive=true;try{process.kill(pid,'SIGKILL')}catch(e){}try{fs.unlinkSync(path.join(beatDir,f))}catch(e){}}}}}}catch(e){}if(!anyAlive)break;wait(200)}}catch(e){}process.exit(0)\""
32
32
  },
33
33
  "dependencies": {
34
- "@mneme-ai/core": "2.19.57",
35
- "@mneme-ai/correlator": "2.19.57",
36
- "@mneme-ai/embeddings": "2.19.57",
37
- "@mneme-ai/mcp": "2.19.57",
34
+ "@mneme-ai/core": "2.19.58",
35
+ "@mneme-ai/correlator": "2.19.58",
36
+ "@mneme-ai/embeddings": "2.19.58",
37
+ "@mneme-ai/mcp": "2.19.58",
38
38
  "commander": "^14.0.3",
39
39
  "kleur": "^4.1.5"
40
40
  },