instar 1.3.147 → 1.3.148
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/dist/memory/NativeModuleHealer.d.ts +17 -7
- package/dist/memory/NativeModuleHealer.d.ts.map +1 -1
- package/dist/memory/NativeModuleHealer.js +74 -28
- package/dist/memory/NativeModuleHealer.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.148.md +68 -0
- package/upgrades/side-effects/remediator-heal-prebuilt-first.md +57 -0
|
@@ -183,9 +183,17 @@ declare class NativeModuleHealerImpl {
|
|
|
183
183
|
* - the rebuilt `.node` binary's sha256 is recorded in `lastResult` so
|
|
184
184
|
* the Remediator's audit-projection can detect cross-process binary
|
|
185
185
|
* divergence (A28),
|
|
186
|
-
* -
|
|
187
|
-
*
|
|
188
|
-
*
|
|
186
|
+
* - prebuilt-first heal (parity with the boot heal paths): attempt 1 is
|
|
187
|
+
* `npm install better-sqlite3@<pinned> --no-save` so prebuild-install
|
|
188
|
+
* fetches the correct-ABI prebuilt (no compiler needed — the only path
|
|
189
|
+
* that heals a node-ABI bump on a box without a C++ toolchain); attempt 2
|
|
190
|
+
* is the from-source `--ignore-scripts --build-from-source` fallback.
|
|
191
|
+
* NOTE — this deliberately RELAXES the original §A45 from-source-only
|
|
192
|
+
* stance: the scoped prebuilt fetch (single pinned package, official
|
|
193
|
+
* better-sqlite3 release — the same source a normal `npm install` uses)
|
|
194
|
+
* is accepted in exchange for healability, matching what the boot heal
|
|
195
|
+
* paths already do fleet-wide. The from-source fallback retains
|
|
196
|
+
* `--ignore-scripts` (no arbitrary postinstalls).
|
|
189
197
|
*
|
|
190
198
|
* Returns an `ExecutionResult`-shaped object compatible with F-8's
|
|
191
199
|
* `ApprovedRunbook.surfaceCallable` contract. Errors are caught and
|
|
@@ -201,10 +209,12 @@ declare class NativeModuleHealerImpl {
|
|
|
201
209
|
*/
|
|
202
210
|
invokeFromRemediator(ctx: RemediatorInvocationContext, keyVault?: InvocationContextKeyVault): Promise<RemediatorExecutionResult>;
|
|
203
211
|
/**
|
|
204
|
-
* Remediator-side rebuild path. Mirrors `healBetterSqlite3
|
|
205
|
-
*
|
|
206
|
-
*
|
|
207
|
-
*
|
|
212
|
+
* Remediator-side rebuild path. Mirrors `healBetterSqlite3`: prebuilt-first
|
|
213
|
+
* (`npm install better-sqlite3@<pinned>` → prebuild-install fetches the
|
|
214
|
+
* correct-ABI prebuilt, no compiler) with a scoped `--ignore-scripts
|
|
215
|
+
* --build-from-source` fallback (A28 + A45), toolchain PATH-pinned to this
|
|
216
|
+
* process's Node, and records the sha256 of the rebuilt `.node` binary in the
|
|
217
|
+
* heal log for cross-process binary-divergence detection (A28).
|
|
208
218
|
*
|
|
209
219
|
* Returns `{outcome: 'success' | 'failure', details: {...}}` directly so
|
|
210
220
|
* the caller (W-1 runbook surfaceCallable) doesn't need a second mapping
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeModuleHealer.d.ts","sourceRoot":"","sources":["../../src/memory/NativeModuleHealer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAkBH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,4EAA4E;IAC5E,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/D;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACxB,+FAA+F;IAC/F,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;AAE3D;;;;GAIG;AACH,cAAM,sBAAsB;IAC1B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,SAAS,CAAqC;IAEtD,2DAA2D;IAC3D,SAAS,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI;IAInD;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAOpD,yBAAyB;IACzB,eAAe,IAAI,IAAI;IAOvB;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAqDzB;;;;;OAKG;YACW,oBAAoB;IAmClC,+EAA+E;IAC/E,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAS/C,8DAA8D;IAC9D,aAAa,IAAI,SAAS,GAAG,IAAI;IAIjC;;;;;;;;;OASG;IACG,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAiDlF;;;;;;;;;OASG;IACH,gBAAgB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAoC1D;;;;;OAKG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5D;;;;;OAKG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IA0GjD;;;;;;;OAOG;IACH,OAAO,CAAC,8BAA8B;IAsBtC;;OAEG;IACH,OAAO,CAAC,WAAW;IA+BnB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAY/B
|
|
1
|
+
{"version":3,"file":"NativeModuleHealer.d.ts","sourceRoot":"","sources":["../../src/memory/NativeModuleHealer.ts"],"names":[],"mappings":"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"}
|
|
@@ -475,9 +475,17 @@ class NativeModuleHealerImpl {
|
|
|
475
475
|
* - the rebuilt `.node` binary's sha256 is recorded in `lastResult` so
|
|
476
476
|
* the Remediator's audit-projection can detect cross-process binary
|
|
477
477
|
* divergence (A28),
|
|
478
|
-
* -
|
|
479
|
-
*
|
|
480
|
-
*
|
|
478
|
+
* - prebuilt-first heal (parity with the boot heal paths): attempt 1 is
|
|
479
|
+
* `npm install better-sqlite3@<pinned> --no-save` so prebuild-install
|
|
480
|
+
* fetches the correct-ABI prebuilt (no compiler needed — the only path
|
|
481
|
+
* that heals a node-ABI bump on a box without a C++ toolchain); attempt 2
|
|
482
|
+
* is the from-source `--ignore-scripts --build-from-source` fallback.
|
|
483
|
+
* NOTE — this deliberately RELAXES the original §A45 from-source-only
|
|
484
|
+
* stance: the scoped prebuilt fetch (single pinned package, official
|
|
485
|
+
* better-sqlite3 release — the same source a normal `npm install` uses)
|
|
486
|
+
* is accepted in exchange for healability, matching what the boot heal
|
|
487
|
+
* paths already do fleet-wide. The from-source fallback retains
|
|
488
|
+
* `--ignore-scripts` (no arbitrary postinstalls).
|
|
481
489
|
*
|
|
482
490
|
* Returns an `ExecutionResult`-shaped object compatible with F-8's
|
|
483
491
|
* `ApprovedRunbook.surfaceCallable` contract. Errors are caught and
|
|
@@ -557,10 +565,12 @@ class NativeModuleHealerImpl {
|
|
|
557
565
|
return result;
|
|
558
566
|
}
|
|
559
567
|
/**
|
|
560
|
-
* Remediator-side rebuild path. Mirrors `healBetterSqlite3
|
|
561
|
-
*
|
|
562
|
-
*
|
|
563
|
-
*
|
|
568
|
+
* Remediator-side rebuild path. Mirrors `healBetterSqlite3`: prebuilt-first
|
|
569
|
+
* (`npm install better-sqlite3@<pinned>` → prebuild-install fetches the
|
|
570
|
+
* correct-ABI prebuilt, no compiler) with a scoped `--ignore-scripts
|
|
571
|
+
* --build-from-source` fallback (A28 + A45), toolchain PATH-pinned to this
|
|
572
|
+
* process's Node, and records the sha256 of the rebuilt `.node` binary in the
|
|
573
|
+
* heal log for cross-process binary-divergence detection (A28).
|
|
564
574
|
*
|
|
565
575
|
* Returns `{outcome: 'success' | 'failure', details: {...}}` directly so
|
|
566
576
|
* the caller (W-1 runbook surfaceCallable) doesn't need a second mapping
|
|
@@ -605,29 +615,65 @@ class NativeModuleHealerImpl {
|
|
|
605
615
|
// rebuild (the in-line healer must keep working; the gold-standard
|
|
606
616
|
// sha256 lockfile from A55 lands in a follow-up PR).
|
|
607
617
|
const integrity = this.readPackageLockIntegrity(installPrefix);
|
|
608
|
-
//
|
|
609
|
-
//
|
|
610
|
-
|
|
618
|
+
// FLEET FIX (2026-05-31 — instar-codey node-25 ABI deadlock): prebuilt-first,
|
|
619
|
+
// mirroring `healBetterSqlite3` and the ServerSupervisor preflight (both made
|
|
620
|
+
// prebuilt-first by #539). The remediator path was the last rebuild surface
|
|
621
|
+
// still `npm rebuild --build-from-source`-ONLY, which ALWAYS node-gyp-compiles
|
|
622
|
+
// and can't heal a box without a working C++ toolchain — exactly where the
|
|
623
|
+
// node-25/ABI-141-vs-127 boxes got stuck.
|
|
624
|
+
// (1) Pin the toolchain to THIS process's Node dir so node-gyp /
|
|
625
|
+
// prebuild-install / any `#!/usr/bin/env node` shebang resolve the
|
|
626
|
+
// correct ABI even when another Node (e.g. an asdf 22.x) is first on PATH.
|
|
627
|
+
// (2) Try the PREBUILT first via `npm install better-sqlite3@<pinned>` (runs
|
|
628
|
+
// the install script → prebuild-install fetches the correct-ABI prebuilt,
|
|
629
|
+
// ~2s, NO compiler), then a from-source `--build-from-source` fallback.
|
|
630
|
+
// A45 supply-chain: the prebuilt attempt MUST run scripts (that is how
|
|
631
|
+
// prebuild-install fetches the binary) but is scoped to the single pinned
|
|
632
|
+
// package with `--no-save`; the from-source fallback keeps `--ignore-scripts`
|
|
633
|
+
// (no arbitrary postinstalls) — identical to the two sibling paths.
|
|
634
|
+
const nodeDir = path.dirname(process.execPath);
|
|
635
|
+
const rebuildEnv = {
|
|
636
|
+
...process.env,
|
|
637
|
+
npm_config_node_gyp: undefined,
|
|
638
|
+
npm_node_execpath: process.execPath,
|
|
639
|
+
PATH: `${nodeDir}${path.delimiter}${process.env.PATH ?? ''}`,
|
|
640
|
+
};
|
|
641
|
+
let pkgVersion = '';
|
|
611
642
|
try {
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
643
|
+
pkgVersion = JSON.parse(fs.readFileSync(path.join(installPrefix, 'node_modules', 'better-sqlite3', 'package.json'), 'utf-8')).version || '';
|
|
644
|
+
}
|
|
645
|
+
catch { /* version optional */ }
|
|
646
|
+
const installSpec = pkgVersion ? `better-sqlite3@${pkgVersion}` : 'better-sqlite3';
|
|
647
|
+
const attempts = [
|
|
648
|
+
[npmPath, 'install', installSpec, '--no-save', '--prefix', installPrefix],
|
|
649
|
+
[npmPath, 'rebuild', '--build-from-source', '--ignore-scripts', 'better-sqlite3', '--prefix', installPrefix],
|
|
650
|
+
];
|
|
651
|
+
let result = null;
|
|
652
|
+
let lastSpawnErr = '';
|
|
653
|
+
for (const args of attempts) {
|
|
654
|
+
if (ctx.abortSignal.aborted)
|
|
655
|
+
break;
|
|
656
|
+
try {
|
|
657
|
+
// Use namespace access so tests can monkey-patch `child_process.spawnSync`.
|
|
658
|
+
result = child_process.spawnSync(process.execPath, args, {
|
|
659
|
+
encoding: 'utf-8',
|
|
660
|
+
timeout: timeoutMs,
|
|
661
|
+
cwd: installPrefix,
|
|
662
|
+
env: rebuildEnv,
|
|
663
|
+
signal: ctx.abortSignal,
|
|
664
|
+
});
|
|
665
|
+
}
|
|
666
|
+
catch (spawnErr) {
|
|
667
|
+
lastSpawnErr = spawnErr instanceof Error ? spawnErr.message : String(spawnErr);
|
|
668
|
+
continue;
|
|
669
|
+
}
|
|
670
|
+
// Stop at the first attempt that npm reports as successful; the
|
|
671
|
+
// post-rebuild load/sha256 checks below confirm it is actually loadable.
|
|
672
|
+
if (result && result.status === 0)
|
|
673
|
+
break;
|
|
628
674
|
}
|
|
629
|
-
|
|
630
|
-
event.errorTail = `spawn failed: ${
|
|
675
|
+
if (!result) {
|
|
676
|
+
event.errorTail = `spawn failed: ${lastSpawnErr || 'no rebuild attempt produced a result'}`;
|
|
631
677
|
event.durationMs = Date.now() - started;
|
|
632
678
|
this.logHealEvent(event);
|
|
633
679
|
this.lastResult = event;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeModuleHealer.js","sourceRoot":"","sources":["../../src/memory/NativeModuleHealer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NativeModuleHealer.js","sourceRoot":"","sources":["../../src/memory/NativeModuleHealer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-05-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-05-31T07:09:17.964Z",
|
|
5
|
+
"instarVersion": "1.3.148",
|
|
6
6
|
"entryCount": 193,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
review-convergence: complete
|
|
3
|
+
approved: true
|
|
4
|
+
approved-by: echo (standing 12h deploy mandate, topic 13435; Codey-down native-module ABI incident)
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Upgrade Guide — vNEXT
|
|
8
|
+
|
|
9
|
+
<!-- bump: patch -->
|
|
10
|
+
|
|
11
|
+
## What Changed — the last better-sqlite3 heal path is now prebuilt-first
|
|
12
|
+
|
|
13
|
+
An agent (instar-codey) went offline for hours after a Node upgrade: a new Node
|
|
14
|
+
was installed, the boot wrapper repointed the agent at it, but the agent's
|
|
15
|
+
better-sqlite3 native module was still built for the old Node's ABI and could no
|
|
16
|
+
longer load. The agent is supposed to self-heal by rebuilding better-sqlite3 — and
|
|
17
|
+
two of its three rebuild paths already do this the fast, robust way (try the
|
|
18
|
+
prebuilt binary first via `npm install`, which needs no C++ toolchain; compile
|
|
19
|
+
from source only as a fallback). The **third** path —
|
|
20
|
+
`NativeModuleHealer.healBetterSqlite3FromRemediator`, used by the
|
|
21
|
+
`supervisor-preflight` self-healing runbook — was still **from-source-only**
|
|
22
|
+
(`npm rebuild --build-from-source`), which cannot heal a box without a working
|
|
23
|
+
compiler. That is exactly the situation that bricked Codey.
|
|
24
|
+
|
|
25
|
+
This change makes that third path mirror the other two: **prebuilt-first**, with a
|
|
26
|
+
PATH pinned to the running Node so the rebuilt module targets the correct ABI, and
|
|
27
|
+
a scoped `--ignore-scripts` from-source fallback. It relaxes the (aspirational,
|
|
28
|
+
unimplemented) "build-from-source preferred" spec stance — flagged in the spec for
|
|
29
|
+
review — but introduces no new divergence: both shipped boot heal paths are
|
|
30
|
+
already prebuilt-first, and the spec's sha256-pinned lockfiles do not exist yet.
|
|
31
|
+
|
|
32
|
+
## Summary of New Capabilities
|
|
33
|
+
|
|
34
|
+
- `NativeModuleHealer.healBetterSqlite3FromRemediator` is now prebuilt-first
|
|
35
|
+
(`npm install better-sqlite3@<pinned>` → `npm rebuild --build-from-source
|
|
36
|
+
--ignore-scripts` fallback), toolchain PATH-pinned to `process.execPath`'s dir,
|
|
37
|
+
matching `healBetterSqlite3` and `ServerSupervisor.preflightSelfHeal`.
|
|
38
|
+
- The self-healing remediator's native-module rebuild can now recover a
|
|
39
|
+
node-ABI-mismatch on a machine without a C++ build toolchain.
|
|
40
|
+
|
|
41
|
+
## What to Tell Your User
|
|
42
|
+
|
|
43
|
+
If you ever upgrade Node on a machine running your agent, your agent can now heal
|
|
44
|
+
its database engine without needing a compiler installed. It grabs the ready-made,
|
|
45
|
+
correct-version binary first and only falls back to building from scratch if that
|
|
46
|
+
download fails. This closes the gap that took one of our agents offline for hours
|
|
47
|
+
after a Node bump. Nothing to configure — it applies on the next update.
|
|
48
|
+
|
|
49
|
+
## Evidence
|
|
50
|
+
|
|
51
|
+
- Root cause traced live in instar-codey logs: a homebrew Node 25.6.1 install
|
|
52
|
+
self-healed the agent's node link forward (ABI 141) while shadow-install
|
|
53
|
+
better-sqlite3 was ABI 127, and the from-source-only remediator rebuild could
|
|
54
|
+
not produce a loadable module without a toolchain.
|
|
55
|
+
- The two boot heal paths were confirmed already prebuilt-first
|
|
56
|
+
(`src/memory/NativeModuleHealer.ts` healBetterSqlite3, lines ~445-446;
|
|
57
|
+
`src/lifeline/ServerSupervisor.ts` preflight, lines ~855-856); the
|
|
58
|
+
`dist/native-source.lock.json` / `dist/native-prebuilds.lock.json` lockfiles do
|
|
59
|
+
not exist in the tree.
|
|
60
|
+
- Unit: `tests/unit/NativeModuleHealer-invokeFromRemediator.test.ts` — new cases
|
|
61
|
+
prove prebuilt-first heals in one step and falls back to from-source on prebuilt
|
|
62
|
+
failure; all prior guard/sha256/once-per-process cases stay green.
|
|
63
|
+
- Regression: NativeModuleHealer + Remediator + node-abi-mismatch runbook +
|
|
64
|
+
find/fix-better-sqlite3 suites — 96 tests pass.
|
|
65
|
+
- `tsc --noEmit` clean; `npm run lint` clean.
|
|
66
|
+
- Spec: `docs/specs/remediator-heal-prebuilt-first.md` (+ `.eli16.md`); V3
|
|
67
|
+
consolidated spec §7.1 annotated.
|
|
68
|
+
- Side-effects: `upgrades/side-effects/remediator-heal-prebuilt-first.md`.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Side-effects — Remediator better-sqlite3 heal: prebuilt-first
|
|
2
|
+
|
|
3
|
+
## 1. What files/state does this touch at runtime?
|
|
4
|
+
Only the better-sqlite3 native module under the agent's install prefix
|
|
5
|
+
(`<prefix>/node_modules/better-sqlite3/...`), and ONLY when the W-1
|
|
6
|
+
`supervisor-preflight` remediation runbook invokes
|
|
7
|
+
`NativeModuleHealer.healBetterSqlite3FromRemediator` — i.e. when a genuine
|
|
8
|
+
NODE_MODULE_VERSION ABI mismatch is detected. No config keys, no schema, no other
|
|
9
|
+
files. The post-rebuild sha256 is recorded in the existing in-line heal log
|
|
10
|
+
(unchanged behavior).
|
|
11
|
+
|
|
12
|
+
## 2. Does it change any functional behavior?
|
|
13
|
+
Yes, narrowly: the remediator heal now attempts the **prebuilt** (`npm install
|
|
14
|
+
better-sqlite3@<pinned> --no-save`) BEFORE the from-source compile (`npm rebuild
|
|
15
|
+
--build-from-source --ignore-scripts`), and pins the toolchain PATH to the running
|
|
16
|
+
Node's directory. Outcome on success is identical (a loadable, correct-ABI
|
|
17
|
+
module). The change makes the path able to heal on a box without a C++ toolchain,
|
|
18
|
+
which it previously could not.
|
|
19
|
+
|
|
20
|
+
## 3. What happens on failure / unwritable path / non-toolchain box?
|
|
21
|
+
- No toolchain: the prebuilt attempt heals it (the whole point). If the prebuilt
|
|
22
|
+
fetch also fails (e.g. no network / no prebuild for that ABI yet), it falls back
|
|
23
|
+
to the from-source compile exactly as before.
|
|
24
|
+
- Both attempts fail: returns `{outcome: 'failure', ...}` with the last npm
|
|
25
|
+
stderr tail — identical failure contract to before (the verify step decides
|
|
26
|
+
next action; nothing is bricked).
|
|
27
|
+
- Abort signal fires mid-heal: honoured at the top of each attempt; an
|
|
28
|
+
already-aborted signal short-circuits.
|
|
29
|
+
|
|
30
|
+
## 4. Migration parity — do existing agents get it?
|
|
31
|
+
Yes, automatically. This is shipped code in `dist/` — every agent picks it up on
|
|
32
|
+
its next instar update via the normal shadow-install. No PostUpdateMigrator change
|
|
33
|
+
needed (no agent-installed file/config/hook/skill is touched).
|
|
34
|
+
|
|
35
|
+
## 5. Could it spam / flood / burn resources?
|
|
36
|
+
No — the opposite. The prebuilt fetch (~2s) replaces a ~30s+ node-gyp compile as
|
|
37
|
+
the first attempt, and the path only runs on a real ABI mismatch (gated by the
|
|
38
|
+
remediator runbook + once-per-process guard). It does LESS CPU work than before,
|
|
39
|
+
and it stops the multi-hour launchd restart-loop that a non-healable path caused.
|
|
40
|
+
|
|
41
|
+
## 6. Rollback / off-switch?
|
|
42
|
+
Revert the PR. The two sibling heal paths are unaffected. No new flag, no residual
|
|
43
|
+
state. The whole remediator path is already gated behind the SelfHealingRemediator
|
|
44
|
+
(largely dark by default), so blast radius is small even before rollback.
|
|
45
|
+
|
|
46
|
+
## 7. Concurrency / ordering?
|
|
47
|
+
Unchanged from the prior implementation: a single spawnSync loop inside the
|
|
48
|
+
existing async method, honouring `ctx.abortSignal`. The once-per-process heal
|
|
49
|
+
guard (`healAttempted`) still prevents re-entry. No new shared state.
|
|
50
|
+
|
|
51
|
+
## Blast radius
|
|
52
|
+
Minimal + consistency-increasing. One method body in
|
|
53
|
+
`src/memory/NativeModuleHealer.ts` (+ two docstring corrections), mirroring two
|
|
54
|
+
already-shipped heal paths. Two unit tests updated/added; 96 healer/remediator
|
|
55
|
+
tests green. No route, sentinel, schema, config, or migration surface changes.
|
|
56
|
+
Spec note: relaxes the aspirational (unimplemented) §A45/§7.1 "build-from-source
|
|
57
|
+
preferred" stance — documented in the spec + V3 spec annotation for review.
|