gm-skill 2.0.1359 → 2.0.1361
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/bin/gm-shell-validate.js
CHANGED
|
@@ -81,7 +81,8 @@ return JSON.stringify(result);
|
|
|
81
81
|
`);
|
|
82
82
|
|
|
83
83
|
const script = fs.readFileSync(witness, 'utf8');
|
|
84
|
-
const
|
|
84
|
+
const relayPort = Number(process.env.PLAYWRITER_PORT) || 19988;
|
|
85
|
+
const relayUrl = `http://127.0.0.1:${relayPort}/cli/execute`;
|
|
85
86
|
const response = await fetch(relayUrl, {
|
|
86
87
|
method: 'POST',
|
|
87
88
|
headers: { 'Content-Type': 'application/json' },
|
package/bin/plugkit.version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.1.
|
|
1
|
+
0.1.513
|
package/bin/plugkit.wasm.sha256
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
b426108ab7ca3eaf2bd344326ac7c607bf36cdf1ecbb507abd07e09f2e8eb918 plugkit.wasm
|
package/gm-plugkit/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm-plugkit",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1361",
|
|
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": {
|
|
@@ -2171,6 +2171,17 @@ async function runSpoolWatcher(instance, spoolDir) {
|
|
|
2171
2171
|
if (unsupervised) {
|
|
2172
2172
|
if (_wrapperDriftLoggedOnce) return;
|
|
2173
2173
|
_wrapperDriftLoggedOnce = true;
|
|
2174
|
+
try {
|
|
2175
|
+
const marker = {
|
|
2176
|
+
ts: new Date().toISOString(),
|
|
2177
|
+
reason: 'wrapper-has-newer-on-disk',
|
|
2178
|
+
running_sha12: _wrapperShaAtBoot.slice(0, 12),
|
|
2179
|
+
disk_sha12: cur.slice(0, 12),
|
|
2180
|
+
running_pid: process.pid,
|
|
2181
|
+
instruction: 'Wrapper code on disk has newer sha than what this watcher loaded in-memory. Drift-suppress kept the watcher alive (good), but new code only loads on restart. Kill this watcher (taskkill /F /PID ' + process.pid + ' on Windows, kill ' + process.pid + ' on POSIX) and re-bootstrap (bun x gm-plugkit@latest spool) to pick up the new wrapper.',
|
|
2182
|
+
};
|
|
2183
|
+
fs.writeFileSync(path.join(spoolDir, '.wrapper-stale-in-memory.json'), JSON.stringify(marker, null, 2));
|
|
2184
|
+
} catch (_) {}
|
|
2174
2185
|
logEvent('plugkit', 'wrapper.drift-detected-no-exit', {
|
|
2175
2186
|
boot_sha: _wrapperShaAtBoot.slice(0, 12),
|
|
2176
2187
|
file_sha: cur.slice(0, 12),
|
|
@@ -2639,17 +2650,47 @@ async function runSpoolWatcher(instance, spoolDir) {
|
|
|
2639
2650
|
fs.renameSync(tmp, UPDATE_CHECK_SHARED_CACHE);
|
|
2640
2651
|
} catch (_) {}
|
|
2641
2652
|
}
|
|
2653
|
+
const UPDATE_CHECK_ERROR_MARKER = path.join(GM_TOOLS_ROOT, '.update-check-error.json');
|
|
2642
2654
|
let _lastKnownUpdateError = null;
|
|
2655
|
+
function readSharedUpdateErrorKey() {
|
|
2656
|
+
try {
|
|
2657
|
+
const raw = fs.readFileSync(UPDATE_CHECK_ERROR_MARKER, 'utf-8');
|
|
2658
|
+
const parsed = JSON.parse(raw);
|
|
2659
|
+
if (parsed && typeof parsed.key === 'string' && Date.now() - (parsed.ts || 0) < 60 * 60 * 1000) {
|
|
2660
|
+
return parsed.key;
|
|
2661
|
+
}
|
|
2662
|
+
} catch (_) {}
|
|
2663
|
+
return null;
|
|
2664
|
+
}
|
|
2665
|
+
function writeSharedUpdateErrorKey(key) {
|
|
2666
|
+
try {
|
|
2667
|
+
const tmp = UPDATE_CHECK_ERROR_MARKER + '.tmp';
|
|
2668
|
+
fs.writeFileSync(tmp, JSON.stringify({ ts: Date.now(), key, by_pid: process.pid }));
|
|
2669
|
+
fs.renameSync(tmp, UPDATE_CHECK_ERROR_MARKER);
|
|
2670
|
+
} catch (_) {}
|
|
2671
|
+
}
|
|
2672
|
+
function clearSharedUpdateErrorKey() {
|
|
2673
|
+
try { fs.unlinkSync(UPDATE_CHECK_ERROR_MARKER); } catch (_) {}
|
|
2674
|
+
}
|
|
2643
2675
|
function logUpdateCheckError(fields) {
|
|
2644
2676
|
const key = `${fields.status || ''}:${fields.error || ''}`;
|
|
2645
2677
|
if (_lastKnownUpdateError === key) return;
|
|
2678
|
+
const shared = readSharedUpdateErrorKey();
|
|
2679
|
+
if (shared === key) {
|
|
2680
|
+
_lastKnownUpdateError = key;
|
|
2681
|
+
return;
|
|
2682
|
+
}
|
|
2646
2683
|
_lastKnownUpdateError = key;
|
|
2684
|
+
writeSharedUpdateErrorKey(key);
|
|
2647
2685
|
logEvent('plugkit', 'update.check.error', fields);
|
|
2648
2686
|
}
|
|
2649
2687
|
function clearUpdateCheckError(installed) {
|
|
2650
|
-
|
|
2651
|
-
|
|
2688
|
+
const shared = readSharedUpdateErrorKey();
|
|
2689
|
+
if (_lastKnownUpdateError !== null || shared !== null) {
|
|
2690
|
+
const was = _lastKnownUpdateError || shared;
|
|
2691
|
+
logEvent('plugkit', 'update.check.recovered', { installed, was });
|
|
2652
2692
|
_lastKnownUpdateError = null;
|
|
2693
|
+
clearSharedUpdateErrorKey();
|
|
2653
2694
|
}
|
|
2654
2695
|
}
|
|
2655
2696
|
function applyUpdateCheckResult(installed, latest, statusCode) {
|
package/gm.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1361",
|
|
4
4
|
"description": "Spool-dispatch orchestration engine with unified state machine, skills, and automated git enforcement",
|
|
5
5
|
"author": "AnEntrypoint",
|
|
6
6
|
"license": "MIT",
|
|
@@ -17,5 +17,5 @@
|
|
|
17
17
|
"publishConfig": {
|
|
18
18
|
"access": "public"
|
|
19
19
|
},
|
|
20
|
-
"plugkitVersion": "0.1.
|
|
20
|
+
"plugkitVersion": "0.1.513"
|
|
21
21
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm-skill",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1361",
|
|
4
4
|
"description": "Canonical universal harness — AI-native software engineering via skill-driven orchestration; bootstraps plugkit for task execution and session isolation. Install in any AI coding agent host.",
|
|
5
5
|
"author": "AnEntrypoint",
|
|
6
6
|
"license": "MIT",
|