instar 1.3.76 → 1.3.77
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.map +1 -1
- package/dist/memory/NativeModuleHealer.js +29 -7
- package/dist/memory/NativeModuleHealer.js.map +1 -1
- package/dist/monitoring/TokenLedger.d.ts +5 -0
- package/dist/monitoring/TokenLedger.d.ts.map +1 -1
- package/dist/monitoring/TokenLedger.js +3 -1
- package/dist/monitoring/TokenLedger.js.map +1 -1
- package/package.json +2 -2
- package/scripts/lib/pre-push-scope.mjs +132 -0
- package/scripts/pre-push-smoke.mjs +85 -0
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.77.md +30 -0
- package/upgrades/side-effects/heal-shared-rebuild-retry.md +84 -0
- package/upgrades/side-effects/prepush-smoke-base-guard.md +84 -0
- package/upgrades/side-effects/tokenledger-scanall-async-deterministic.md +34 -0
|
@@ -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;
|
|
1
|
+
{"version":3,"file":"NativeModuleHealer.d.ts","sourceRoot":"","sources":["../../src/memory/NativeModuleHealer.ts"],"names":[],"mappings":"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"}
|
|
@@ -196,12 +196,26 @@ class NativeModuleHealerImpl {
|
|
|
196
196
|
catch (err) {
|
|
197
197
|
if (!this.isNodeModuleVersionError(err))
|
|
198
198
|
throw err;
|
|
199
|
-
//
|
|
199
|
+
// The expensive rebuild runs at most once per process. But "rebuild
|
|
200
|
+
// already ran" does NOT mean "this caller can't recover" — it depends on
|
|
201
|
+
// whether that rebuild SUCCEEDED.
|
|
200
202
|
if (this.healAttempted) {
|
|
201
203
|
const last = this.lastResult;
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
204
|
+
// Multi-subsystem case: the FIRST sqlite subsystem to open (e.g.
|
|
205
|
+
// SemanticMemory) consumes the once-per-process rebuild. When that
|
|
206
|
+
// rebuild succeeded, the on-disk binding is already correct — a LATER
|
|
207
|
+
// subsystem (e.g. TokenLedger) that is still holding the stale cached
|
|
208
|
+
// binding just needs a fresh require. Clear the cache and retry the
|
|
209
|
+
// open once (cheap; no second rebuild). Without this, every sqlite
|
|
210
|
+
// subsystem opened after the first one stays broken on a node-upgraded
|
|
211
|
+
// agent — observed live as TokenLedger 503 while SemanticMemory 200.
|
|
212
|
+
if (last?.success) {
|
|
213
|
+
this.clearBetterSqlite3Cache();
|
|
214
|
+
return await opener();
|
|
215
|
+
}
|
|
216
|
+
// The prior rebuild FAILED — retrying the open won't help; surface the
|
|
217
|
+
// original error with heal context.
|
|
218
|
+
const hint = ` (heal previously attempted and failed: ${last?.errorTail ?? 'unknown'})`;
|
|
205
219
|
const wrapped = err instanceof Error ? err : new Error(String(err));
|
|
206
220
|
wrapped.message = `${wrapped.message}${hint}`;
|
|
207
221
|
throw wrapped;
|
|
@@ -238,11 +252,19 @@ class NativeModuleHealerImpl {
|
|
|
238
252
|
catch (err) {
|
|
239
253
|
if (!this.isNodeModuleVersionError(err))
|
|
240
254
|
throw err;
|
|
255
|
+
// The expensive rebuild runs at most once per process — but recovery for
|
|
256
|
+
// THIS caller depends on whether that rebuild succeeded (see openWithHeal).
|
|
241
257
|
if (this.healAttempted) {
|
|
242
258
|
const last = this.lastResult;
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
259
|
+
// A prior rebuild succeeded → binding on disk is already correct. Clear
|
|
260
|
+
// this caller's stale cached binding and retry the open once. This is
|
|
261
|
+
// the path TokenLedger's sync constructor takes when SemanticMemory
|
|
262
|
+
// healed first.
|
|
263
|
+
if (last?.success) {
|
|
264
|
+
this.clearBetterSqlite3Cache();
|
|
265
|
+
return opener();
|
|
266
|
+
}
|
|
267
|
+
const hint = ` (heal previously attempted and failed: ${last?.errorTail ?? 'unknown'})`;
|
|
246
268
|
const wrapped = err instanceof Error ? err : new Error(String(err));
|
|
247
269
|
wrapped.message = `${wrapped.message}${hint}`;
|
|
248
270
|
throw wrapped;
|
|
@@ -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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"}
|
|
@@ -109,6 +109,10 @@ export interface TokenLedgerOptions {
|
|
|
109
109
|
* seconds without yielding.
|
|
110
110
|
*/
|
|
111
111
|
yieldEveryNFiles?: number;
|
|
112
|
+
/**
|
|
113
|
+
* Test seam for scanAllAsync's event-loop yield. Production uses setImmediate.
|
|
114
|
+
*/
|
|
115
|
+
asyncYieldFn?: () => Promise<void>;
|
|
112
116
|
}
|
|
113
117
|
export declare class TokenLedger {
|
|
114
118
|
private db;
|
|
@@ -116,6 +120,7 @@ export declare class TokenLedger {
|
|
|
116
120
|
private maxFileAgeMs;
|
|
117
121
|
private maxFilesPerScan;
|
|
118
122
|
private yieldEveryNFiles;
|
|
123
|
+
private asyncYieldFn;
|
|
119
124
|
private scanCursor;
|
|
120
125
|
private stmts;
|
|
121
126
|
constructor(opts: TokenLedgerOptions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenLedger.d.ts","sourceRoot":"","sources":["../../src/monitoring/TokenLedger.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AA2FrF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kFAAkF;IAClF,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,iFAAiF;IACjF,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"TokenLedger.d.ts","sourceRoot":"","sources":["../../src/monitoring/TokenLedger.ts"],"names":[],"mappings":"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"}
|
|
@@ -116,6 +116,7 @@ export class TokenLedger {
|
|
|
116
116
|
maxFileAgeMs;
|
|
117
117
|
maxFilesPerScan;
|
|
118
118
|
yieldEveryNFiles;
|
|
119
|
+
asyncYieldFn;
|
|
119
120
|
// Cursor between scan calls — when a tick stops at the per-scan cap,
|
|
120
121
|
// the next tick resumes from here instead of restarting the whole tree.
|
|
121
122
|
scanCursor = { dirIdx: 0, fileIdx: 0 };
|
|
@@ -125,6 +126,7 @@ export class TokenLedger {
|
|
|
125
126
|
this.maxFileAgeMs = opts.maxFileAgeMs && opts.maxFileAgeMs > 0 ? opts.maxFileAgeMs : 0;
|
|
126
127
|
this.maxFilesPerScan = opts.maxFilesPerScan && opts.maxFilesPerScan > 0 ? opts.maxFilesPerScan : 500;
|
|
127
128
|
this.yieldEveryNFiles = opts.yieldEveryNFiles && opts.yieldEveryNFiles > 0 ? opts.yieldEveryNFiles : 25;
|
|
129
|
+
this.asyncYieldFn = opts.asyncYieldFn ?? (() => new Promise(resolve => setImmediate(resolve)));
|
|
128
130
|
if (opts.dbPath !== ':memory:') {
|
|
129
131
|
fs.mkdirSync(path.dirname(opts.dbPath), { recursive: true });
|
|
130
132
|
}
|
|
@@ -430,7 +432,7 @@ export class TokenLedger {
|
|
|
430
432
|
*/
|
|
431
433
|
async scanAllAsync() {
|
|
432
434
|
return this.scanInternal({
|
|
433
|
-
yieldFn:
|
|
435
|
+
yieldFn: this.asyncYieldFn,
|
|
434
436
|
});
|
|
435
437
|
}
|
|
436
438
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenLedger.js","sourceRoot":"","sources":["../../src/monitoring/TokenLedger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TokenLedger.js","sourceRoot":"","sources":["../../src/monitoring/TokenLedger.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "instar",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.77",
|
|
4
4
|
"description": "Coherence infrastructure for self-evolving AI agents — on the Claude Code or Codex subscription you already have.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"dev": "tsc --watch",
|
|
21
21
|
"test": "vitest run",
|
|
22
22
|
"test:push": "vitest run --config vitest.push.config.ts",
|
|
23
|
-
"test:smoke": "
|
|
23
|
+
"test:smoke": "node scripts/pre-push-smoke.mjs",
|
|
24
24
|
"test:flaky": "vitest run tests/unit/relationship-routes.test.ts tests/integration/messaging-routes.test.ts tests/integration/whatsapp-routes.test.ts tests/unit/server.test.ts tests/e2e/semantic-memory-lifecycle.test.ts tests/e2e/system-reviewer-e2e.test.ts tests/e2e/working-memory-lifecycle.test.ts tests/e2e/messaging-multi-agent.test.ts",
|
|
25
25
|
"test:watch": "vitest",
|
|
26
26
|
"test:integration": "vitest run --config vitest.integration.config.ts",
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// safe-git-allow: pre-push bootstrap helpers — read-only git only.
|
|
2
|
+
import { execFileSync } from 'node:child_process';
|
|
3
|
+
|
|
4
|
+
export const DEFAULT_SMOKE_LIMITS = Object.freeze({
|
|
5
|
+
maxChangedFiles: 200,
|
|
6
|
+
maxTestFiles: 80,
|
|
7
|
+
maxTestCases: 1000,
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
function git(args, opts = {}) {
|
|
11
|
+
return execFileSync('git', args, {
|
|
12
|
+
cwd: opts.cwd,
|
|
13
|
+
encoding: 'utf-8',
|
|
14
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
15
|
+
env: opts.env ?? process.env,
|
|
16
|
+
}).trim();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function tryGit(args, opts = {}) {
|
|
20
|
+
try {
|
|
21
|
+
const out = (opts.git ?? git)(args, opts);
|
|
22
|
+
return out ? String(out).trim() : '';
|
|
23
|
+
} catch {
|
|
24
|
+
return '';
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function remoteRef(remote, branch = 'main') {
|
|
29
|
+
if (!remote) return '';
|
|
30
|
+
return `refs/remotes/${remote}/${branch}`;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function refExists(ref, opts = {}) {
|
|
34
|
+
if (!ref) return false;
|
|
35
|
+
return Boolean(tryGit(['rev-parse', '--verify', ref], opts));
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function addCandidate(candidates, seen, ref, reason, opts) {
|
|
39
|
+
if (!ref || seen.has(ref)) return;
|
|
40
|
+
seen.add(ref);
|
|
41
|
+
if (refExists(ref, opts)) candidates.push({ ref, reason });
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function shortRemoteRef(ref) {
|
|
45
|
+
return ref.startsWith('refs/remotes/') ? ref.slice('refs/remotes/'.length) : ref;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function resolvePrePushBase(opts = {}) {
|
|
49
|
+
const candidates = [];
|
|
50
|
+
const seen = new Set();
|
|
51
|
+
const branch = tryGit(['branch', '--show-current'], opts);
|
|
52
|
+
const upstream = tryGit(['rev-parse', '--abbrev-ref', '--symbolic-full-name', '@{u}'], opts);
|
|
53
|
+
|
|
54
|
+
if (upstream) {
|
|
55
|
+
const parts = upstream.split('/');
|
|
56
|
+
const upstreamRemote = parts[0];
|
|
57
|
+
const upstreamBranch = parts.slice(1).join('/');
|
|
58
|
+
if (upstreamBranch === 'main') {
|
|
59
|
+
addCandidate(candidates, seen, `refs/remotes/${upstream}`, 'branch upstream', opts);
|
|
60
|
+
} else {
|
|
61
|
+
addCandidate(candidates, seen, remoteRef(upstreamRemote), 'branch upstream remote main', opts);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
const pushRemote =
|
|
66
|
+
(branch && tryGit(['config', `branch.${branch}.pushRemote`], opts)) ||
|
|
67
|
+
tryGit(['config', 'remote.pushDefault'], opts);
|
|
68
|
+
addCandidate(candidates, seen, remoteRef(pushRemote), 'push remote main', opts);
|
|
69
|
+
|
|
70
|
+
const branchRemote = branch ? tryGit(['config', `branch.${branch}.remote`], opts) : '';
|
|
71
|
+
addCandidate(candidates, seen, remoteRef(branchRemote), 'branch remote main', opts);
|
|
72
|
+
|
|
73
|
+
addCandidate(candidates, seen, 'refs/remotes/JKHeadley/main', 'fallback JKHeadley/main', opts);
|
|
74
|
+
addCandidate(candidates, seen, 'refs/remotes/upstream/main', 'fallback upstream/main', opts);
|
|
75
|
+
addCandidate(candidates, seen, 'refs/remotes/origin/main', 'fallback origin/main', opts);
|
|
76
|
+
|
|
77
|
+
if (candidates.length > 0) {
|
|
78
|
+
return { ref: shortRemoteRef(candidates[0].ref), reason: candidates[0].reason };
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
const previousCommit = tryGit(['rev-parse', 'HEAD~1'], opts);
|
|
82
|
+
if (previousCommit) return { ref: previousCommit, reason: 'fallback HEAD~1' };
|
|
83
|
+
|
|
84
|
+
return { ref: 'HEAD', reason: 'fallback HEAD' };
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export function changedFilesSince(baseRef, opts = {}) {
|
|
88
|
+
const out = (opts.git ?? git)(['diff', '--name-only', `${baseRef}...HEAD`], opts);
|
|
89
|
+
return String(out)
|
|
90
|
+
.split('\n')
|
|
91
|
+
.map(s => s.trim())
|
|
92
|
+
.filter(Boolean);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export function readSmokeLimits(env = process.env) {
|
|
96
|
+
return {
|
|
97
|
+
maxChangedFiles: Number.parseInt(env.INSTAR_PRE_PUSH_SMOKE_MAX_CHANGED_FILES ?? '', 10) || DEFAULT_SMOKE_LIMITS.maxChangedFiles,
|
|
98
|
+
maxTestFiles: Number.parseInt(env.INSTAR_PRE_PUSH_SMOKE_MAX_TEST_FILES ?? '', 10) || DEFAULT_SMOKE_LIMITS.maxTestFiles,
|
|
99
|
+
maxTestCases: Number.parseInt(env.INSTAR_PRE_PUSH_SMOKE_MAX_TEST_CASES ?? '', 10) || DEFAULT_SMOKE_LIMITS.maxTestCases,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export function evaluateSmokeBreadth({ changedFileCount, testFileCount, testCaseCount }, limits = DEFAULT_SMOKE_LIMITS) {
|
|
104
|
+
if (changedFileCount > limits.maxChangedFiles) {
|
|
105
|
+
return {
|
|
106
|
+
skip: true,
|
|
107
|
+
reason: `changed file count ${changedFileCount} exceeds local smoke cap ${limits.maxChangedFiles}`,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
if (testFileCount > limits.maxTestFiles) {
|
|
111
|
+
return {
|
|
112
|
+
skip: true,
|
|
113
|
+
reason: `affected test file count ${testFileCount} exceeds local smoke cap ${limits.maxTestFiles}`,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
if (testCaseCount > limits.maxTestCases) {
|
|
117
|
+
return {
|
|
118
|
+
skip: true,
|
|
119
|
+
reason: `affected test case count ${testCaseCount} exceeds local smoke cap ${limits.maxTestCases}`,
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
return { skip: false, reason: 'within local smoke caps' };
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export function summarizeVitestList(stdout) {
|
|
126
|
+
const tests = String(stdout)
|
|
127
|
+
.split('\n')
|
|
128
|
+
.map(s => s.trim())
|
|
129
|
+
.filter(Boolean);
|
|
130
|
+
const files = new Set(tests.map(line => line.split(' > ')[0]).filter(Boolean));
|
|
131
|
+
return { testCaseCount: tests.length, testFileCount: files.size };
|
|
132
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// safe-git-allow: pre-push smoke runner — read-only git, then Vitest.
|
|
3
|
+
import { spawnSync } from 'node:child_process';
|
|
4
|
+
import {
|
|
5
|
+
changedFilesSince,
|
|
6
|
+
evaluateSmokeBreadth,
|
|
7
|
+
readSmokeLimits,
|
|
8
|
+
resolvePrePushBase,
|
|
9
|
+
summarizeVitestList,
|
|
10
|
+
} from './lib/pre-push-scope.mjs';
|
|
11
|
+
|
|
12
|
+
function run(command, args, opts = {}) {
|
|
13
|
+
return spawnSync(command, args, {
|
|
14
|
+
cwd: opts.cwd ?? process.cwd(),
|
|
15
|
+
env: opts.env ?? process.env,
|
|
16
|
+
encoding: 'utf-8',
|
|
17
|
+
stdio: opts.stdio ?? ['ignore', 'pipe', 'pipe'],
|
|
18
|
+
timeout: opts.timeout,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function printSkip(reason) {
|
|
23
|
+
console.log(`⏭️ Local smoke too broad; CI is the authority. ${reason}.`);
|
|
24
|
+
console.log(' The PR test matrix still runs the full suite before merge.');
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const base = resolvePrePushBase();
|
|
28
|
+
const limits = readSmokeLimits();
|
|
29
|
+
let changed = [];
|
|
30
|
+
|
|
31
|
+
try {
|
|
32
|
+
changed = changedFilesSince(base.ref);
|
|
33
|
+
} catch (err) {
|
|
34
|
+
console.warn(`pre-push smoke: could not compute changed files from ${base.ref} (${err instanceof Error ? err.message : err}) — skipping local smoke; CI is the authority.`);
|
|
35
|
+
process.exit(0);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
console.log(`🧪 Running smoke tier against ${base.ref} (${base.reason}); changed files: ${changed.length}.`);
|
|
39
|
+
|
|
40
|
+
if (changed.length === 0) {
|
|
41
|
+
console.log('✅ No changed files relative to smoke base; skipping local smoke.');
|
|
42
|
+
process.exit(0);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
let breadth = evaluateSmokeBreadth({ changedFileCount: changed.length, testFileCount: 0, testCaseCount: 0 }, limits);
|
|
46
|
+
if (breadth.skip) {
|
|
47
|
+
printSkip(breadth.reason);
|
|
48
|
+
process.exit(0);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
const list = run('npx', ['vitest', 'list', '--config', 'vitest.push.config.ts', '--changed', base.ref], {
|
|
52
|
+
timeout: Number.parseInt(process.env.INSTAR_PRE_PUSH_SMOKE_LIST_TIMEOUT_MS ?? '', 10) || 120_000,
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
if (list.status !== 0) {
|
|
56
|
+
process.stdout.write(list.stdout ?? '');
|
|
57
|
+
process.stderr.write(list.stderr ?? '');
|
|
58
|
+
if (list.signal === 'SIGTERM') {
|
|
59
|
+
console.warn('pre-push smoke: affected-test listing timed out — skipping local smoke; CI is the authority.');
|
|
60
|
+
process.exit(0);
|
|
61
|
+
}
|
|
62
|
+
process.exit(list.status ?? 1);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
const selected = summarizeVitestList(list.stdout);
|
|
66
|
+
console.log(`🧪 Smoke affected set: ${selected.testFileCount} test files / ${selected.testCaseCount} test cases.`);
|
|
67
|
+
|
|
68
|
+
breadth = evaluateSmokeBreadth(
|
|
69
|
+
{ changedFileCount: changed.length, testFileCount: selected.testFileCount, testCaseCount: selected.testCaseCount },
|
|
70
|
+
limits,
|
|
71
|
+
);
|
|
72
|
+
if (breadth.skip) {
|
|
73
|
+
printSkip(breadth.reason);
|
|
74
|
+
process.exit(0);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
if (selected.testCaseCount === 0) {
|
|
78
|
+
console.log('✅ No affected tests selected by Vitest.');
|
|
79
|
+
process.exit(0);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
const result = run('npx', ['vitest', 'run', '--config', 'vitest.push.config.ts', '--changed', base.ref], {
|
|
83
|
+
stdio: 'inherit',
|
|
84
|
+
});
|
|
85
|
+
process.exit(result.status ?? 1);
|
|
@@ -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-29T07:53:32.454Z",
|
|
5
|
+
"instarVersion": "1.3.77",
|
|
6
6
|
"entryCount": 193,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Instar Upgrade Guide — NEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
**Fixes a native-module self-heal bug where only the FIRST sqlite-backed subsystem recovered after a Node upgrade.**
|
|
8
|
+
|
|
9
|
+
`NativeModuleHealer` rebuilds the `better-sqlite3` native binding at most once per process when it sees a `NODE_MODULE_VERSION` mismatch (a Node upgrade landing after install). That once-per-process guard (`healAttempted`) was too coarse: once the first subsystem to open SQLite (e.g. `SemanticMemory`) healed successfully and consumed the single rebuild, every *later* subsystem (`TokenLedger`, `TopicMemory`, `MemoryIndex`) that hit the same mismatch was short-circuited with `throw "(heal previously attempted)"` — even though the binding on disk was already rebuilt and a cheap re-open would have succeeded.
|
|
10
|
+
|
|
11
|
+
Surfaced live while dogfooding the Codey agent (Telegram topic 13435): `/memory/search` returned 200 while `/tokens/summary` returned 503 (`token ledger unavailable`), with the binding on disk already ABI-correct and the heal log empty.
|
|
12
|
+
|
|
13
|
+
The fix branches the `healAttempted` block on the prior outcome (`this.lastResult.success`): when a prior heal **succeeded**, the later caller clears its stale cached binding and retries the open once (no second rebuild); when a prior heal **failed**, it throws with the existing failure context (unchanged). Applied to both `openWithHeal` (async) and `openWithHealSync` (sync). This finishes AC#7 of the approved `token-ledger-native-heal` spec.
|
|
14
|
+
|
|
15
|
+
## What to Tell Your User
|
|
16
|
+
|
|
17
|
+
If your agent ran for a while with its token usage tab or other SQLite-backed features showing as unavailable after a Node version upgrade, this fixes it. The agent already knew how to repair the underlying database driver automatically, but a safety limit meant only the first feature to ask for a repair actually got fixed — anything that asked afterward was told "already repaired once" and stayed dark until the next restart, even though the repair had already worked. Now every SQLite-backed feature comes back together, not just whichever one happened to start first. Nothing for you to do; it takes effect the next time the agent restarts onto this version.
|
|
18
|
+
|
|
19
|
+
## Summary of New Capabilities
|
|
20
|
+
|
|
21
|
+
| Capability | How to Use |
|
|
22
|
+
|-----------|-----------|
|
|
23
|
+
| Shared prior-heal retry | Automatic. After the native-module healer rebuilds the better-sqlite3 binding once per process, any later SQLite subsystem that hits the version mismatch now clears its stale cache and retries the open (no second rebuild) instead of failing. No config. |
|
|
24
|
+
|
|
25
|
+
## Evidence
|
|
26
|
+
|
|
27
|
+
- Unit: `tests/unit/NativeModuleHealer.test.ts` — new `shared prior heal — multi-subsystem recovery` block: prior-success → cache-clear + retry succeeds with NO second rebuild (sync + async); prior-failure → still throws and does not retry (both sides of the boundary); a persistent post-retry failure surfaces the original error directly. All 21 healer tests + 56 adjacent healer/ledger/runbook tests pass.
|
|
28
|
+
- Live diagnosis: on the Codey agent, `/memory/search` 200 vs `/tokens/summary` 503 with an ABI-correct on-disk binding and empty heal log; server-stderr showed `NODE_MODULE_VERSION 141 … requires 127 … (heal previously attempted)` at `TokenLedger.js` open — the exact short-circuit this fix removes.
|
|
29
|
+
|
|
30
|
+
Spec: `docs/specs/token-ledger-native-heal.md` (2026-05-29 amendment — in-scope, finishes AC#7).
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Side-Effects Review — Shared prior-heal retry (NativeModuleHealer)
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `heal-shared-rebuild-retry`
|
|
4
|
+
**Date:** `2026-05-29`
|
|
5
|
+
**Author:** Echo (instar developer agent)
|
|
6
|
+
**Spec:** `docs/specs/token-ledger-native-heal.md` (2026-05-29 amendment — in-scope, finishes AC#7)
|
|
7
|
+
**Second-pass reviewer:** required (touches the fleet-wide native-module heal authority)
|
|
8
|
+
|
|
9
|
+
## Summary of the change
|
|
10
|
+
|
|
11
|
+
`NativeModuleHealer`'s once-per-process heal guard (`healAttempted`) was too coarse: after the FIRST sqlite subsystem to open heals successfully (rebuilding the better-sqlite3 binding on disk), any LATER subsystem that hits `NODE_MODULE_VERSION` is short-circuited with `throw "(heal previously attempted)"` — even though the binding is already fixed and a cheap re-require would succeed. Observed live on the Codey agent (Telegram topic 13435): `/memory/search` (SemanticMemory) returned 200 while `/tokens/summary` (TokenLedger) returned 503, binding on disk already ABI-correct, heal log empty.
|
|
12
|
+
|
|
13
|
+
The fix branches the `healAttempted` block on the prior outcome: prior heal **succeeded** → `clearBetterSqlite3Cache()` + retry the open once (no second rebuild); prior heal **failed** → throw with the existing failure context (unchanged). Applied identically to both `openWithHeal` (async) and `openWithHealSync` (sync).
|
|
14
|
+
|
|
15
|
+
Files touched:
|
|
16
|
+
- `src/memory/NativeModuleHealer.ts` — the two `if (this.healAttempted)` blocks in `openWithHeal` and `openWithHealSync`. Additive branch; no other surface changes.
|
|
17
|
+
- `tests/unit/NativeModuleHealer.test.ts` — adds a `shared prior heal — multi-subsystem recovery` describe block (4 tests: sync prior-success retry, async prior-success retry, prior-failure still throws, persistent post-retry failure surfaces).
|
|
18
|
+
|
|
19
|
+
Decision point interacted with: exactly one — `NativeModuleHealer` (the authority over native-module rebuilds). The change does NOT alter who rebuilds or when a rebuild runs (still at most once per process); it only stops the guard from spuriously blocking a *cheap re-open* after a *successful* rebuild.
|
|
20
|
+
|
|
21
|
+
## Decision-point inventory
|
|
22
|
+
|
|
23
|
+
- `NativeModuleHealer.openWithHeal` / `openWithHealSync` (deterministic authority over native-module rebuild) — **modify (narrow)** — the `healAttempted` branch now distinguishes prior-success (retry) from prior-failure (throw). The rebuild gate itself is untouched.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 1. Over-block
|
|
28
|
+
|
|
29
|
+
**What legitimate inputs does this change reject that it shouldn't?**
|
|
30
|
+
|
|
31
|
+
It removes an over-block. Before: a legitimate later open (binding already fixed) was rejected with "(heal previously attempted)". After: that legitimate open succeeds via cache-clear + retry. The prior-failure path is unchanged, so nothing newly legitimate is rejected. No allow/deny surface is added.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 2. Under-block
|
|
36
|
+
|
|
37
|
+
**What failure modes does this still miss?**
|
|
38
|
+
|
|
39
|
+
- **Genuinely-broken binding after a successful prior heal.** If `lastResult.success` is true but THIS subsystem's open still fails (e.g. a different native dep, or a partial rebuild), the retry runs once and the real error surfaces directly (test A4). It is not retried indefinitely and is not swallowed.
|
|
40
|
+
- **First-heal-fails-then-binding-fixed-externally.** If the first heal FAILED, later callers still throw without retry (by design — `success === false`). If an operator manually rebuilds afterward, a process restart is still required. This matches the documented "rebuild fails → visible in heal log + restart" behavior of the original spec; out of scope to auto-detect external repair mid-process.
|
|
41
|
+
- **Non-better-sqlite3 native modules.** Unchanged — the healer only knows better-sqlite3.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 3. Level-of-abstraction fit
|
|
46
|
+
|
|
47
|
+
**Is this at the right layer?**
|
|
48
|
+
|
|
49
|
+
Yes. The bug is in the healer's process-global guard, so the fix belongs in the healer — fixing it once benefits every sqlite consumer (TokenLedger, TopicMemory, MemoryIndex, SemanticMemory) rather than patching each call site. No call site changes.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## 4. Signal vs authority compliance
|
|
54
|
+
|
|
55
|
+
The `NativeModuleHealer` remains the sole authority over native-module rebuilds. This change does not move authority and does not add an LLM-backed decision — it is a deterministic refinement of an existing deterministic guard. The expensive action (rebuild) is still gated to once-per-process; only the cheap action (re-require + open) is now permitted after a confirmed-good rebuild. Compliant with `docs/signal-vs-authority.md`.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 5. Interactions
|
|
60
|
+
|
|
61
|
+
- **SemanticMemory / TopicMemory / MemoryIndex** (existing async callers): unaffected on the happy path and on the first-heal path. They gain the same prior-success retry behavior if they happen to open after another subsystem healed — strictly an improvement.
|
|
62
|
+
- **ServerSupervisor.preflightSelfHeal** (supervisor-spawn rebuild): independent path; not touched. If preflight already rebuilt the binding, in-process opens never hit the mismatch at all.
|
|
63
|
+
- **Remediator path (`invokeFromRemediator`, F-8/W-1)**: untouched. It sets `healAttempted`/`lastResult` via its own surface; a subsequent legacy `openWithHeal` after a successful remediator heal now correctly retries instead of throwing — consistent with the fix's intent.
|
|
64
|
+
- **Heal log / `NativeHealDegradationBridge`**: no new event types emitted by the retry path; the prior successful heal event is already logged. Bridge behavior unchanged.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## 6. External surfaces
|
|
69
|
+
|
|
70
|
+
No API contract change. No config. No migration. No agent-installed-file change (ships with the npm package, not via `init`/`PostUpdateMigrator`). The observable external effect is positive: on a node-upgraded agent, `/tokens/*` (and any other sqlite-backed endpoint that previously 503'd after another subsystem healed) returns live data once the agent runs the new code.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## 7. Rollback cost
|
|
75
|
+
|
|
76
|
+
Revert the two `if (this.healAttempted)` blocks to their unconditional-throw form (one file). No persistent state, no migration, no contract. The reverted-to state is the pre-amendment behavior (later sqlite subsystems dark after the first heals) — exactly the bug being fixed, never a worse state. ~5 minutes detection-to-revert.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Second-pass review
|
|
81
|
+
|
|
82
|
+
**Reviewer concern surfaced:** Could the prior-success retry mask a real ABI problem by retrying into a still-bad binding? No — the retry runs exactly once and any persistent failure is thrown directly (test A4 pins this). The guard against repeated *rebuilds* is preserved, so the pathological-loop protection the original spec relied on is intact.
|
|
83
|
+
|
|
84
|
+
**Concurrence:** The change is mechanically narrow (one branch in two sibling methods), the test matrix covers both sides of the new decision boundary (prior-success → retry; prior-failure → throw) plus the persistent-failure escape, and the rollback is a single-file revert to a strictly-not-worse state. Concurred.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Side-Effects Review — Pre-push smoke base resolver and breadth guard
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `prepush-smoke-base-guard`
|
|
4
|
+
**Date:** `2026-05-29`
|
|
5
|
+
**Author:** `instar-codey`
|
|
6
|
+
**Second-pass reviewer:** `instar-codey second-pass checklist`
|
|
7
|
+
|
|
8
|
+
## Summary of the change
|
|
9
|
+
|
|
10
|
+
This change moves the pre-push smoke selection logic into `scripts/pre-push-smoke.mjs` and `scripts/lib/pre-push-scope.mjs`, updates `.husky/pre-push` to use that runner, and adds focused unit tests in `tests/unit/scripts/pre-push-scope.test.ts`. The smoke runner now resolves a branch-appropriate base, logs that base plus changed-file count, lists the affected Vitest set, and skips local smoke when the selected set is too broad. CI remains the authoritative merge gate.
|
|
11
|
+
|
|
12
|
+
## Decision-point inventory
|
|
13
|
+
|
|
14
|
+
- `scripts/lib/pre-push-scope.mjs#resolvePrePushBase` — add — chooses which git base local smoke uses for changed-test selection.
|
|
15
|
+
- `scripts/lib/pre-push-scope.mjs#evaluateSmokeBreadth` — add — decides whether local smoke is small enough to run locally.
|
|
16
|
+
- `scripts/pre-push-smoke.mjs` — add — applies the local-only smoke skip decision before invoking Vitest run.
|
|
17
|
+
- `.husky/pre-push` — modify — delegates smoke execution to the runner after best-effort remote fetches.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 1. Over-block
|
|
22
|
+
|
|
23
|
+
The broad-set guard can skip local smoke for a legitimate branch that changes many files or maps to many tests. That does not block the push or merge; it only declines to run a local smoke subset. The hook prints that CI is the authority, and the PR test matrix still runs before merge.
|
|
24
|
+
|
|
25
|
+
The resolver can choose a branch upstream or push remote whose `main` is missing or stale. It falls back through canonical remotes, and the hook performs best-effort fetches for those remotes before running the resolver.
|
|
26
|
+
|
|
27
|
+
## 2. Under-block
|
|
28
|
+
|
|
29
|
+
This change does not guarantee a local smoke run catches every failure. A branch under the caps may still have failures outside Vitest's changed-test selection. That is an accepted limitation of local smoke; CI remains the full authority.
|
|
30
|
+
|
|
31
|
+
The runner also skips local smoke if changed-file calculation or affected-test listing fails due to local git/Vitest state. This avoids pathological local blocking but leaves the real failure detection to CI.
|
|
32
|
+
|
|
33
|
+
## 3. Level-of-abstraction fit
|
|
34
|
+
|
|
35
|
+
The resolver is a local git-scope helper. The broad-set guard is a deterministic local ergonomics check, not a product or conversational authority. It operates at the pre-push developer-tooling layer where the question is only whether the optional local smoke run is small enough to be useful.
|
|
36
|
+
|
|
37
|
+
The implementation uses existing git configuration and Vitest changed-test listing rather than adding a new cross-system state source.
|
|
38
|
+
|
|
39
|
+
## 4. Signal vs authority compliance
|
|
40
|
+
|
|
41
|
+
**Required reference:** [docs/signal-vs-authority.md](../../docs/signal-vs-authority.md)
|
|
42
|
+
|
|
43
|
+
- [ ] No — this change produces a signal consumed by an existing smart gate.
|
|
44
|
+
- [ ] No — this change has no block/allow surface.
|
|
45
|
+
- [ ] Yes — but the logic is a smart gate with full conversational context (LLM-backed with recent history or equivalent).
|
|
46
|
+
- [x] Not applicable to conversational/product judgment — this is a local developer-tooling guard that fails open to CI.
|
|
47
|
+
|
|
48
|
+
This change does hold local skip authority over an optional smoke run, but it does not block user messages, external operations, information flow, or product behavior. It is a fail-open performance guard: when the local set is too broad, it avoids running the local subset and explicitly defers to CI.
|
|
49
|
+
|
|
50
|
+
## 5. Interactions
|
|
51
|
+
|
|
52
|
+
- **Shadowing:** The broad-set guard runs before `vitest run`. It can shadow local smoke execution, but it cannot shadow CI because CI is separate and unchanged.
|
|
53
|
+
- **Double-fire:** `.husky/pre-push` still wraps `npm run test:smoke` in the existing retry loop. When the runner skips broad smoke, it exits successfully and the retry loop does not repeat.
|
|
54
|
+
- **Races:** The runner reads git refs after the hook performs best-effort fetches. Concurrent branch updates could change remote refs during a push, but that risk already exists for local changed-test selection.
|
|
55
|
+
- **Feedback loops:** No persistent state is written. The hook does not feed its skip decision back into future runs.
|
|
56
|
+
|
|
57
|
+
## 6. External surfaces
|
|
58
|
+
|
|
59
|
+
This affects developers and agents pushing branches from this repository. It changes local terminal output and can reduce local pre-push runtime for broad affected sets. It does not change CI, GitHub PR checks, Telegram messaging, dashboard behavior, persisted ledgers, or external service APIs.
|
|
60
|
+
|
|
61
|
+
## 7. Rollback cost
|
|
62
|
+
|
|
63
|
+
Rollback is a pure code revert of `.husky/pre-push`, `package.json`, the new smoke runner/helper files, and tests. No migration, persistent state repair, or user notification is required. The only user-visible regression during rollback would be returning to the older hard-coded local smoke base behavior.
|
|
64
|
+
|
|
65
|
+
## Conclusion
|
|
66
|
+
|
|
67
|
+
The review found the main risk is local under-testing when a broad affected set is skipped. That is acceptable because local smoke is not the merge authority, and the skip message makes the authority boundary explicit. The change is clear to ship with focused tests and the instar-dev gate.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Second-pass review (if required)
|
|
72
|
+
|
|
73
|
+
**Reviewer:** instar-codey second-pass checklist
|
|
74
|
+
**Independent read of the artifact:** concur
|
|
75
|
+
|
|
76
|
+
The second pass agrees that the guard is local-only, fail-open, and does not introduce a brittle product/message blocking authority. The main risk is documented as reliance on CI for broad changes.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Evidence pointers
|
|
81
|
+
|
|
82
|
+
- `tests/unit/scripts/pre-push-scope.test.ts`
|
|
83
|
+
- `scripts/pre-push-smoke.mjs`
|
|
84
|
+
- `scripts/lib/pre-push-scope.mjs`
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# TokenLedger scanAllAsync deterministic yield test
|
|
2
|
+
|
|
3
|
+
## Scope
|
|
4
|
+
|
|
5
|
+
This change touches `TokenLedger` and its unit test for `scanAllAsync`.
|
|
6
|
+
|
|
7
|
+
## Behavioral Change
|
|
8
|
+
|
|
9
|
+
Production behavior is unchanged by default. `scanAllAsync` still yields with
|
|
10
|
+
`setImmediate` when callers do not provide an override.
|
|
11
|
+
|
|
12
|
+
The new behavior is an optional constructor seam, `asyncYieldFn`, that lets
|
|
13
|
+
tests or specialized callers provide the async yield primitive used by
|
|
14
|
+
`scanAllAsync`.
|
|
15
|
+
|
|
16
|
+
## Side Effects Review
|
|
17
|
+
|
|
18
|
+
1. User-facing behavior: none expected. The server's token ledger scanner keeps
|
|
19
|
+
the same default event-loop yielding behavior.
|
|
20
|
+
2. Data persistence: none. No database schema, ingestion format, offset, or
|
|
21
|
+
summary-query behavior changes.
|
|
22
|
+
3. Runtime risk: low. The new option is opt-in and defaults to the previous
|
|
23
|
+
implementation.
|
|
24
|
+
4. Signal versus authority: no new blocking or routing authority is introduced.
|
|
25
|
+
The seam only changes how an async pause is performed.
|
|
26
|
+
5. Test quality: improved. The unit test now observes the scanner's yield call
|
|
27
|
+
directly instead of depending on wall-clock timer scheduling.
|
|
28
|
+
6. Rollback: remove the option and restore the prior test. No migration or state
|
|
29
|
+
cleanup is required.
|
|
30
|
+
|
|
31
|
+
## Verification
|
|
32
|
+
|
|
33
|
+
- Affected test passed 10 consecutive local runs.
|
|
34
|
+
- Full `tests/unit/token-ledger.test.ts` passed locally.
|