instar 1.3.912 → 1.3.913
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/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +44 -1
- package/dist/commands/server.js.map +1 -1
- package/dist/monitoring/PresenceProxy.d.ts +4 -0
- package/dist/monitoring/PresenceProxy.d.ts.map +1 -1
- package/dist/monitoring/PresenceProxy.js +43 -3
- package/dist/monitoring/PresenceProxy.js.map +1 -1
- package/dist/monitoring/SessionRecovery.d.ts +17 -1
- package/dist/monitoring/SessionRecovery.d.ts.map +1 -1
- package/dist/monitoring/SessionRecovery.js +103 -16
- package/dist/monitoring/SessionRecovery.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.913.md +30 -0
- package/upgrades/side-effects/context-wall-recovery-robustness.md +62 -0
|
@@ -27,6 +27,18 @@ import { detectCrashedSession, detectErrorLoop } from './crash-detector.js';
|
|
|
27
27
|
import { truncateJsonlToSafePoint } from './jsonl-truncator.js';
|
|
28
28
|
import { detectContextExhaustion } from './QuotaExhaustionDetector.js';
|
|
29
29
|
import { SafeFsExecutor } from '../core/SafeFsExecutor.js';
|
|
30
|
+
import { transcriptDelta, } from './transcriptProber.js';
|
|
31
|
+
function isTranscriptProbe(value) {
|
|
32
|
+
if (!value || typeof value !== 'object')
|
|
33
|
+
return false;
|
|
34
|
+
const row = value;
|
|
35
|
+
return typeof row.resolved === 'boolean'
|
|
36
|
+
&& typeof row.path === 'string'
|
|
37
|
+
&& typeof row.size === 'number'
|
|
38
|
+
&& Number.isFinite(row.size)
|
|
39
|
+
&& typeof row.mtime === 'number'
|
|
40
|
+
&& Number.isFinite(row.mtime);
|
|
41
|
+
}
|
|
30
42
|
// ============================================================================
|
|
31
43
|
// SessionRecovery Class
|
|
32
44
|
// ============================================================================
|
|
@@ -35,8 +47,9 @@ export class SessionRecovery extends EventEmitter {
|
|
|
35
47
|
deps;
|
|
36
48
|
recoveryAttempts = new Map();
|
|
37
49
|
/** Durable memory that the existing context detector matched for a topic.
|
|
38
|
-
*
|
|
39
|
-
|
|
50
|
+
* The timestamp supplies the bounded-deferral ceiling; the optional probe is
|
|
51
|
+
* the prior observation used to prove transcript growth. */
|
|
52
|
+
contextWedgedSeen = new Map();
|
|
40
53
|
stateFilePath;
|
|
41
54
|
constructor(config, deps) {
|
|
42
55
|
super();
|
|
@@ -45,6 +58,7 @@ export class SessionRecovery extends EventEmitter {
|
|
|
45
58
|
maxAttempts: config.maxAttempts ?? 3,
|
|
46
59
|
cooldownMs: config.cooldownMs ?? 15 * 60 * 1000,
|
|
47
60
|
projectDir: config.projectDir || process.cwd(),
|
|
61
|
+
contextExhaustionDeferralCeilingMs: config.contextExhaustionDeferralCeilingMs ?? 30 * 60 * 1000,
|
|
48
62
|
};
|
|
49
63
|
this.deps = deps;
|
|
50
64
|
this.stateFilePath = path.join(this.config.projectDir, '.instar', 'recovery-state.json');
|
|
@@ -160,7 +174,7 @@ export class SessionRecovery extends EventEmitter {
|
|
|
160
174
|
markContextWedgedSeen(topicId) {
|
|
161
175
|
if (this.contextWedgedSeen.has(topicId))
|
|
162
176
|
return;
|
|
163
|
-
this.contextWedgedSeen.
|
|
177
|
+
this.contextWedgedSeen.set(topicId, { firstSeenAt: this.now() });
|
|
164
178
|
this.saveState();
|
|
165
179
|
}
|
|
166
180
|
/** Mechanical read seam for SessionMonitor; this makes no recovery decision. */
|
|
@@ -173,6 +187,10 @@ export class SessionRecovery extends EventEmitter {
|
|
|
173
187
|
return;
|
|
174
188
|
this.saveState();
|
|
175
189
|
}
|
|
190
|
+
/** First detector observation, exposed for honest status surfaces/tests. */
|
|
191
|
+
getContextWedgedFirstSeenAt(topicId) {
|
|
192
|
+
return this.contextWedgedSeen.get(topicId)?.firstSeenAt ?? null;
|
|
193
|
+
}
|
|
176
194
|
/**
|
|
177
195
|
* Part D decision logic (docs/specs/ownership-follows-live-work.md). Resolves the
|
|
178
196
|
* per-topic ownership state into a recovery direction. The safe direction is
|
|
@@ -320,8 +338,10 @@ export class SessionRecovery extends EventEmitter {
|
|
|
320
338
|
* @returns `'killed'` on a kill we performed; `'deferred-still-working'`
|
|
321
339
|
* when the work-check vetoed the kill.
|
|
322
340
|
*/
|
|
323
|
-
async killForRecovery(sessionName) {
|
|
324
|
-
if (
|
|
341
|
+
async killForRecovery(sessionName, options = {}) {
|
|
342
|
+
if (!options.bypassChildProcessVeto
|
|
343
|
+
&& this.deps.hasActiveProcesses
|
|
344
|
+
&& this.deps.hasActiveProcesses(sessionName)) {
|
|
325
345
|
console.log(`[SessionRecovery] "${sessionName}": P1/P2 cross-check found active child processes — `
|
|
326
346
|
+ `deferring recovery (JSONL stall but the process is still producing work)`);
|
|
327
347
|
return 'deferred-still-working';
|
|
@@ -384,8 +404,52 @@ export class SessionRecovery extends EventEmitter {
|
|
|
384
404
|
message: `Context exhaustion recovery exhausted or in cooldown for ${sessionName}`,
|
|
385
405
|
};
|
|
386
406
|
}
|
|
407
|
+
// Context-wall work is measured from the session's transcript, not from
|
|
408
|
+
// helper-process existence. MCP/browser/SSH children can remain alive at a
|
|
409
|
+
// hard wall while the model produces nothing.
|
|
410
|
+
const latch = this.contextWedgedSeen.get(topicId)
|
|
411
|
+
?? { firstSeenAt: this.now() };
|
|
412
|
+
this.contextWedgedSeen.set(topicId, latch);
|
|
413
|
+
const latchAgeMs = Math.max(0, this.now() - latch.firstSeenAt);
|
|
414
|
+
const ceilingReached = latchAgeMs >= this.config.contextExhaustionDeferralCeilingMs;
|
|
415
|
+
const currentProbe = this.deps.probeTranscript?.(sessionName);
|
|
416
|
+
const priorProbe = latch.transcript;
|
|
417
|
+
if (currentProbe) {
|
|
418
|
+
latch.transcript = currentProbe;
|
|
419
|
+
this.saveState();
|
|
420
|
+
}
|
|
421
|
+
const growth = currentProbe && priorProbe
|
|
422
|
+
? transcriptDelta(priorProbe, currentProbe)
|
|
423
|
+
: 'unknown';
|
|
424
|
+
// With the production transcript seam, only positive transcript growth
|
|
425
|
+
// proves work. The first/unresolved observation defers safely, but spends
|
|
426
|
+
// ZERO recovery attempts. The durable ceiling prevents ambiguity from
|
|
427
|
+
// becoming an infinite wait. Legacy callers without the seam retain their
|
|
428
|
+
// old child-process check until they are upgraded.
|
|
429
|
+
const legacyBusyWithoutProbe = !this.deps.probeTranscript
|
|
430
|
+
&& (this.deps.hasActiveProcesses?.(sessionName) ?? false);
|
|
431
|
+
if (!ceilingReached && (growth === 'grew' || growth === 'unknown' && (this.deps.probeTranscript !== undefined || legacyBusyWithoutProbe))) {
|
|
432
|
+
return {
|
|
433
|
+
recovered: false,
|
|
434
|
+
failureType: 'context_exhaustion',
|
|
435
|
+
deferred: true,
|
|
436
|
+
message: growth === 'grew'
|
|
437
|
+
? `Context-exhaustion recovery deferred for ${sessionName} — its transcript is still growing`
|
|
438
|
+
: `Context-exhaustion recovery deferred for ${sessionName} — waiting for a second transcript observation`,
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
// A deferral is not an attempt. Count only after the evidence gate has
|
|
442
|
+
// authorized an actual compaction/kill recovery action.
|
|
387
443
|
const attemptNumber = this.recordAttempt(key);
|
|
388
|
-
this.emit('recovery:context_exhaustion', {
|
|
444
|
+
this.emit('recovery:context_exhaustion', {
|
|
445
|
+
topicId,
|
|
446
|
+
sessionName,
|
|
447
|
+
matchedPattern,
|
|
448
|
+
attemptNumber,
|
|
449
|
+
latchAgeMs,
|
|
450
|
+
ceilingReached,
|
|
451
|
+
transcriptGrowth: growth,
|
|
452
|
+
});
|
|
389
453
|
// ── Rung 1: non-destructive /compact (preserves the conversation) ──
|
|
390
454
|
// Before killing the session and losing the conversation, try the escalation
|
|
391
455
|
// the wall itself asks for: press `/compact`. This is gated to a GENUINELY
|
|
@@ -394,8 +458,7 @@ export class SessionRecovery extends EventEmitter {
|
|
|
394
458
|
// its work). If /compact clears the wall the conversation survives; if it
|
|
395
459
|
// fails (too long to even compact) or times out, we fall through to the
|
|
396
460
|
// destructive fresh respawn — never worse than the prior behavior.
|
|
397
|
-
|
|
398
|
-
if (!hasChildren && this.deps.attemptCompaction) {
|
|
461
|
+
if (this.deps.attemptCompaction) {
|
|
399
462
|
try {
|
|
400
463
|
const compaction = await this.deps.attemptCompaction(sessionName);
|
|
401
464
|
if (compaction.cleared) {
|
|
@@ -421,7 +484,11 @@ export class SessionRecovery extends EventEmitter {
|
|
|
421
484
|
// Reached only when /compact was unavailable, declined (active children), or
|
|
422
485
|
// could not clear the wall. The session is stuck at the "conversation too
|
|
423
486
|
// long" prompt and a fresh start is the only remaining recovery.
|
|
424
|
-
if ((await this.killForRecovery(sessionName
|
|
487
|
+
if ((await this.killForRecovery(sessionName, {
|
|
488
|
+
// Transcript evidence already made the context-wall decision. A helper
|
|
489
|
+
// process must not re-veto it here.
|
|
490
|
+
bypassChildProcessVeto: this.deps.probeTranscript !== undefined || ceilingReached,
|
|
491
|
+
})) === 'deferred-still-working') {
|
|
425
492
|
return {
|
|
426
493
|
recovered: false, failureType: 'context_exhaustion', attemptNumber, deferred: true,
|
|
427
494
|
message: `Context-exhaustion recovery deferred for ${sessionName} — work-check found active children`,
|
|
@@ -655,7 +722,7 @@ export class SessionRecovery extends EventEmitter {
|
|
|
655
722
|
const prior = this.recoveryAttempts.get(key);
|
|
656
723
|
if (!prior)
|
|
657
724
|
return true;
|
|
658
|
-
if (
|
|
725
|
+
if (this.now() - prior.lastAttempt < this.config.cooldownMs)
|
|
659
726
|
return false;
|
|
660
727
|
if (prior.count >= this.config.maxAttempts)
|
|
661
728
|
return false;
|
|
@@ -664,7 +731,7 @@ export class SessionRecovery extends EventEmitter {
|
|
|
664
731
|
recordAttempt(key) {
|
|
665
732
|
const prior = this.recoveryAttempts.get(key);
|
|
666
733
|
const count = (prior?.count || 0) + 1;
|
|
667
|
-
this.recoveryAttempts.set(key, { lastAttempt:
|
|
734
|
+
this.recoveryAttempts.set(key, { lastAttempt: this.now(), count });
|
|
668
735
|
this.saveState();
|
|
669
736
|
return count;
|
|
670
737
|
}
|
|
@@ -687,8 +754,24 @@ export class SessionRecovery extends EventEmitter {
|
|
|
687
754
|
if (data.wedgedSeen && typeof data.wedgedSeen === 'object') {
|
|
688
755
|
for (const [topic, seen] of Object.entries(data.wedgedSeen)) {
|
|
689
756
|
const topicId = Number(topic);
|
|
690
|
-
if (
|
|
691
|
-
|
|
757
|
+
if (!Number.isInteger(topicId))
|
|
758
|
+
continue;
|
|
759
|
+
if (seen === true) {
|
|
760
|
+
// Legacy true-only state: keep the latch, start the ceiling clock
|
|
761
|
+
// now because its historical first-seen time was never recorded.
|
|
762
|
+
this.contextWedgedSeen.set(topicId, { firstSeenAt: this.now() });
|
|
763
|
+
continue;
|
|
764
|
+
}
|
|
765
|
+
if (seen && typeof seen === 'object') {
|
|
766
|
+
const row = seen;
|
|
767
|
+
const firstSeenAt = Number(row.firstSeenAt);
|
|
768
|
+
if (!Number.isFinite(firstSeenAt) || firstSeenAt <= 0)
|
|
769
|
+
continue;
|
|
770
|
+
const transcript = isTranscriptProbe(row.transcript)
|
|
771
|
+
? row.transcript
|
|
772
|
+
: undefined;
|
|
773
|
+
this.contextWedgedSeen.set(topicId, { firstSeenAt, transcript });
|
|
774
|
+
}
|
|
692
775
|
}
|
|
693
776
|
}
|
|
694
777
|
}
|
|
@@ -710,19 +793,23 @@ export class SessionRecovery extends EventEmitter {
|
|
|
710
793
|
// Only persist entries less than 1 hour old
|
|
711
794
|
const ONE_HOUR = 60 * 60 * 1000;
|
|
712
795
|
for (const [key, entry] of Array.from(this.recoveryAttempts.entries())) {
|
|
713
|
-
if (
|
|
796
|
+
if (this.now() - entry.lastAttempt < ONE_HOUR) {
|
|
714
797
|
data[key] = entry;
|
|
715
798
|
}
|
|
716
799
|
}
|
|
717
800
|
const wedgedSeen = {};
|
|
718
|
-
for (const topicId of this.contextWedgedSeen)
|
|
719
|
-
wedgedSeen[String(topicId)] =
|
|
801
|
+
for (const [topicId, state] of this.contextWedgedSeen) {
|
|
802
|
+
wedgedSeen[String(topicId)] = state;
|
|
803
|
+
}
|
|
720
804
|
fs.writeFileSync(this.stateFilePath, JSON.stringify({ attempts: data, wedgedSeen }, null, 2));
|
|
721
805
|
}
|
|
722
806
|
catch { // @silent-fallback-ok — state persistence is best-effort; in-memory state still works
|
|
723
807
|
// Can't save — in-memory state still works for this process lifetime
|
|
724
808
|
}
|
|
725
809
|
}
|
|
810
|
+
now() {
|
|
811
|
+
return this.deps.now?.() ?? Date.now();
|
|
812
|
+
}
|
|
726
813
|
/**
|
|
727
814
|
* Find the JSONL file for a session using lsof (Strategy 1) with NO fallback.
|
|
728
815
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionRecovery.js","sourceRoot":"","sources":["../../src/monitoring/SessionRecovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SessionRecovery.js","sourceRoot":"","sources":["../../src/monitoring/SessionRecovery.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-07-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-07-23T18:38:31.976Z",
|
|
5
|
+
"instarVersion": "1.3.913",
|
|
6
6
|
"entryCount": 202,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- assembled-by: assemble-next-md -->
|
|
4
|
+
<!-- bump: patch -->
|
|
5
|
+
|
|
6
|
+
## What Changed
|
|
7
|
+
|
|
8
|
+
Context-wall recovery now distinguishes real session work from leftover helper
|
|
9
|
+
processes by observing transcript growth. Waiting no longer consumes recovery
|
|
10
|
+
attempts, and a persistent wall cannot defer recovery beyond 30 minutes.
|
|
11
|
+
|
|
12
|
+
Any respawn while a context-exhaustion latch is active starts fresh instead of
|
|
13
|
+
resuming the same overfull conversation. Standby status also reports the
|
|
14
|
+
latched wall honestly after its banner scrolls away.
|
|
15
|
+
|
|
16
|
+
## What to Tell Your User
|
|
17
|
+
|
|
18
|
+
Long autonomous sessions are less likely to go silently dark at the context
|
|
19
|
+
limit. Instar waits when the session is genuinely producing transcript output,
|
|
20
|
+
but leftover browser or MCP processes no longer prevent recovery forever. If a
|
|
21
|
+
context wall persists, Instar first tries to compact in place and then starts a
|
|
22
|
+
fresh session with recent history if needed.
|
|
23
|
+
|
|
24
|
+
## Summary of New Capabilities
|
|
25
|
+
|
|
26
|
+
- Transcript-growth evidence for context-wall recovery.
|
|
27
|
+
- Deferrals that do not spend the recovery-attempt budget.
|
|
28
|
+
- A 30-minute ceiling on persistent context-wall deferral.
|
|
29
|
+
- Fresh-only Telegram and Slack respawns while the context latch is active.
|
|
30
|
+
- Honest standby reporting for a latched context-exhaustion state.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Side-Effects Review — Context-wall recovery robustness
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `context-wall-recovery-robustness`
|
|
4
|
+
**Date:** `2026-07-23`
|
|
5
|
+
**Author:** Instar Agent (instar-codey)
|
|
6
|
+
|
|
7
|
+
## Summary
|
|
8
|
+
|
|
9
|
+
This closes a context-wall recovery loop that treated helper-process existence
|
|
10
|
+
as work, consumed attempts on deferral, and later resumed the poisoned
|
|
11
|
+
transcript. The fix reuses transcript-growth evidence, adds a bounded latch
|
|
12
|
+
ceiling, and forces all respawns fresh while the latch exists.
|
|
13
|
+
|
|
14
|
+
## Decision-point inventory
|
|
15
|
+
|
|
16
|
+
- Transcript growth is the positive work signal for context exhaustion.
|
|
17
|
+
- Unknown first observation defers without consuming an attempt.
|
|
18
|
+
- A 30-minute persistent latch forces the existing compact-then-fresh ladder.
|
|
19
|
+
- The latch suppresses resume UUID consumption at the Telegram and Slack spawn
|
|
20
|
+
chokepoints.
|
|
21
|
+
- Ownership recovery gates remain ahead of local recovery.
|
|
22
|
+
|
|
23
|
+
## Seven-dimension review
|
|
24
|
+
|
|
25
|
+
1. **Over-block:** a growing transcript still defers recovery; ordinary stall,
|
|
26
|
+
crash, error-loop, and non-latched respawns retain their prior behavior.
|
|
27
|
+
2. **Under-block:** static or persistently ambiguous context-wall episodes reach
|
|
28
|
+
the existing fresh recovery path and cannot reload the poisoned transcript.
|
|
29
|
+
3. **Abstraction:** transcript probing supplies evidence; SessionRecovery owns
|
|
30
|
+
recovery judgment; spawn chokepoints enforce fresh launch.
|
|
31
|
+
4. **Signal vs authority:** transcript growth is a signal. The deterministic
|
|
32
|
+
latch age, attempt budget, ownership gate, and recovery ladder retain
|
|
33
|
+
authority.
|
|
34
|
+
5. **Interactions:** compaction remains the first rung; TopicResumeMap and the
|
|
35
|
+
Slack resume map remain authoritative outside a context latch.
|
|
36
|
+
6. **External surfaces:** no new operator action or network API is added.
|
|
37
|
+
Standby copy changes only to report the already-durable latch honestly.
|
|
38
|
+
7. **Rollback:** revert the additive guards. Timestamped latch state remains
|
|
39
|
+
readable and no external state needs repair.
|
|
40
|
+
|
|
41
|
+
## Multi-machine posture
|
|
42
|
+
|
|
43
|
+
Machine-local by design under `process-observer`: the evidence describes a
|
|
44
|
+
local pane and transcript. The existing ownership gate prevents local recovery
|
|
45
|
+
from acting on a peer-owned topic.
|
|
46
|
+
|
|
47
|
+
## Operator surface quality
|
|
48
|
+
|
|
49
|
+
Not applicable: no operator action or dashboard surface is added or changed.
|
|
50
|
+
|
|
51
|
+
## Class-Closure Declaration
|
|
52
|
+
|
|
53
|
+
`unbounded-self-action` closes as a **guard**: deferrals consume zero attempts,
|
|
54
|
+
the latch has a 30-minute ceiling, successful recovery clears it, and the
|
|
55
|
+
existing three-attempt/cooldown breaker bounds actual destructive attempts.
|
|
56
|
+
Boundary tests pin the no-burn and force-after-ceiling behavior.
|
|
57
|
+
|
|
58
|
+
## Evidence
|
|
59
|
+
|
|
60
|
+
Unit tests cover attempt accounting, transcript growth/static/unknown evidence,
|
|
61
|
+
legacy state migration, latch ceiling, and honest standby state. Source-wiring
|
|
62
|
+
guards pin Telegram and Slack resume suppression at both spawn chokepoints.
|