gm-skill 2.0.1410 → 2.0.1411

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/AGENTS.md CHANGED
@@ -34,7 +34,9 @@ Agents dispatch verbs by writing to `.gm/exec-spool/in/<verb>/<N>.txt` (request
34
34
 
35
35
  **Orchestrator verbs**: `instruction`, `transition`, `phase-status`, `mutable-resolve`, `memorize-fire`, `residual-scan`, `auto-recall`.
36
36
 
37
- **Wasm-direct verbs**: `fs_read`, `fs_write`, `fs_stat`, `fs_readdir`, `kv_get`, `kv_put`, `kv_query`, `fetch`, `exec_js`, `env_get`, `recall`, `codesearch`, `memorize`, `health`, `filter`, `git_status`, `branch_status`, `git_push`.
37
+ **Wasm-direct verbs**: `fs_read`, `fs_write`, `fs_stat`, `fs_readdir`, `kv_get`, `kv_put`, `kv_query`, `fetch`, `exec_js`, `env_get`, `recall`, `codesearch`, `memorize`, `memorize-prune`, `health`, `filter`, `git_status`, `branch_status`, `git_push`.
38
+
39
+ **memorize-prune verb**: deletes bad/superseded memories — pruning bad memory matters more than preserving good memory, since a wrong recall hit is worse than a miss. Two modes: explicit `{key}`/`{keys:[...]}` deletes exactly those mem keys (text + `-vec` embedding sibling) via the `host_kv_delete` host import; `{query}` returns review-only candidates (vector_top_k hits with keys) for the agent to judge, then re-dispatch with the stale `{keys:[...]}`. Query mode never auto-deletes by similarity — a blind similarity-delete is itself a bad-memory generator; the destructive step stays under agent judgment. Emits `memory.pruned` per deletion.
38
40
 
39
41
  **git verbs**: `git_status` returns `{dirty, modified, untracked, deleted, staged}` from `git status --porcelain`. `branch_status` returns `{branch, ahead, behind, remote}` — the `remote-pushed` witness. `git_push` is the ONLY admissible push surface — it gates on `git_porcelain()` non-empty (refuses dirty), emits `deviation.push-dirty` on attempt, and shells the push only when clean. A raw `git push` via Bash bypasses the gate and is itself a deviation; ccsniff `--git-discipline` flags it.
40
42
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gm-plugkit",
3
- "version": "2.0.1410",
3
+ "version": "2.0.1411",
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": {
@@ -1505,6 +1505,26 @@ function makeHostFunctions(instanceRef) {
1505
1505
  }
1506
1506
  },
1507
1507
 
1508
+ host_kv_delete: (nsPtr, nsLen, keyPtr, keyLen) => {
1509
+ try {
1510
+ const ns = readWasmStr(instanceRef.value, nsPtr, nsLen);
1511
+ const key = readWasmStr(instanceRef.value, keyPtr, keyLen);
1512
+ if (!ns || !key) return 0;
1513
+ let removed = 0;
1514
+ // Delete the key from the namespace AND its -vec sibling across every enabled discipline dir,
1515
+ // so a pruned memory leaves no orphan embedding that host_vec_search would still surface.
1516
+ for (const baseNs of [ns, `${ns}-vec`]) {
1517
+ for (const dir of kvNamespaceDirs(baseNs)) {
1518
+ const fp = path.join(dir, safeName(key) + '.json');
1519
+ try { if (fs.existsSync(fp)) { fs.rmSync(fp, { force: true }); removed++; } } catch (_) {}
1520
+ }
1521
+ }
1522
+ return removed > 0 ? 1 : 0;
1523
+ } catch (e) {
1524
+ return 0;
1525
+ }
1526
+ },
1527
+
1508
1528
  host_kv_query: (nsPtr, nsLen, qPtr, qLen) => {
1509
1529
  try {
1510
1530
  const ns = readWasmStr(instanceRef.value, nsPtr, nsLen);
package/gm.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gm",
3
- "version": "2.0.1410",
3
+ "version": "2.0.1411",
4
4
  "description": "Spool-dispatch orchestration engine with unified state machine, skills, and automated git enforcement",
5
5
  "author": "AnEntrypoint",
6
6
  "license": "MIT",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gm-skill",
3
- "version": "2.0.1410",
3
+ "version": "2.0.1411",
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",