gm-plugkit 2.0.1164 → 2.0.1165

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gm-plugkit",
3
- "version": "2.0.1164",
3
+ "version": "2.0.1165",
4
4
  "description": "Bootstrap and daemon-spawn tool for gm plugkit binary. Downloads the correct platform binary, verifies SHA256, and starts the spool watcher daemon. Includes plugkit-wasm-wrapper for WASM-based spool watching.",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -56,6 +56,22 @@ function turnTick(sess, verb, taskBase, phase) {
56
56
  if (phase) { t.phases.add(phase); t.lastPhase = phase; }
57
57
  }
58
58
 
59
+ let __sessCache = { value: '', mtimeMs: 0, readAt: 0 };
60
+ function readCurrentSess() {
61
+ const now = Date.now();
62
+ if (now - __sessCache.readAt < 1000) return __sessCache.value;
63
+ try {
64
+ const p = path.join(process.cwd(), '.gm', 'exec-spool', '.session-current');
65
+ const st = fs.statSync(p);
66
+ if (st.mtimeMs !== __sessCache.mtimeMs) {
67
+ __sessCache.value = fs.readFileSync(p, 'utf8').trim();
68
+ __sessCache.mtimeMs = st.mtimeMs;
69
+ }
70
+ } catch (_) {}
71
+ __sessCache.readAt = now;
72
+ return __sessCache.value || process.env.CLAUDE_SESSION_ID || process.env.GM_SESSION_ID || '';
73
+ }
74
+
59
75
  function logEvent(sub, event, fields) {
60
76
  if (process.env.GM_LOG_DISABLE) return;
61
77
  try {
@@ -67,7 +83,7 @@ function logEvent(sub, event, fields) {
67
83
  sub,
68
84
  event,
69
85
  pid: process.pid,
70
- sess: process.env.CLAUDE_SESSION_ID || process.env.GM_SESSION_ID || '',
86
+ sess: readCurrentSess(),
71
87
  ...fields,
72
88
  });
73
89
  fs.appendFileSync(path.join(dir, `${sub}.jsonl`), line + '\n');
@@ -83,7 +99,7 @@ function emitOrchestratorEvents(verb, taskBase, resultStr) {
83
99
  return;
84
100
  }
85
101
  const data = parsed.data || {};
86
- const sess = process.env.CLAUDE_SESSION_ID || process.env.GM_SESSION_ID || '';
102
+ const sess = readCurrentSess();
87
103
  turnTick(sess, verb, taskBase, data.phase);
88
104
  switch (verb) {
89
105
  case 'transition':