instar 1.3.620 → 1.3.621

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.
@@ -174,16 +174,21 @@ export declare class CompactionSentinel extends EventEmitter {
174
174
  getState(sessionName: string): RecoveryState | undefined;
175
175
  private attemptInjection;
176
176
  /**
177
- * If the session is actively working (mid-turn) and we haven't exhausted the
178
- * defer budget, record a defer, schedule another verify window WITHOUT
179
- * injecting, and return true (the caller must return). Otherwise return false
180
- * and let the caller proceed with its normal inject/retry/fail path.
177
+ * If the session is actively working (mid-turn): if we haven't exhausted the
178
+ * defer budget, record a defer, schedule another verify window WITHOUT injecting,
179
+ * and return true (the caller must return). If we HAVE exhausted the budget but
180
+ * the session is STILL working, STAND DOWN (finalize self-recovered, no inject)
181
+ * and return true — never force a resume nudge into a live, working session.
182
+ * Only when the session is NOT actively working do we return false and let the
183
+ * caller proceed with its normal inject/retry/fail path.
181
184
  *
182
185
  * This is the heart of the busy-session guard: a long extended-think on a
183
186
  * large context emits nothing to the JSONL until the turn lands, so the
184
187
  * no-growth check would otherwise read it as "stuck" and re-inject — burying
185
- * the user's real message. Deferring waits it out instead, and the cap means
186
- * a genuinely-hung "working" footer still gets a forced inject eventually.
188
+ * the user's real message. Deferring waits it out; and crucially, exhausting the
189
+ * defer budget on a session that is STILL working is NOT a license to interrupt
190
+ * it — we stand down. (A footer that FALSELY shows "working" while truly hung is
191
+ * the frozen-frame silence/wedge sentinels' job, not this recovery path's.)
187
192
  */
188
193
  private deferForActiveWork;
189
194
  /** Schedule one verify pass after the verify window. */
@@ -1 +1 @@
1
- {"version":3,"file":"CompactionSentinel.d.ts","sourceRoot":"","sources":["../../src/monitoring/CompactionSentinel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CompactionSentinel.d.ts","sourceRoot":"","sources":["../../src/monitoring/CompactionSentinel.ts"],"names":[],"mappings":"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"}
@@ -182,22 +182,47 @@ export class CompactionSentinel extends EventEmitter {
182
182
  this.scheduleVerify(state);
183
183
  }
184
184
  /**
185
- * If the session is actively working (mid-turn) and we haven't exhausted the
186
- * defer budget, record a defer, schedule another verify window WITHOUT
187
- * injecting, and return true (the caller must return). Otherwise return false
188
- * and let the caller proceed with its normal inject/retry/fail path.
185
+ * If the session is actively working (mid-turn): if we haven't exhausted the
186
+ * defer budget, record a defer, schedule another verify window WITHOUT injecting,
187
+ * and return true (the caller must return). If we HAVE exhausted the budget but
188
+ * the session is STILL working, STAND DOWN (finalize self-recovered, no inject)
189
+ * and return true — never force a resume nudge into a live, working session.
190
+ * Only when the session is NOT actively working do we return false and let the
191
+ * caller proceed with its normal inject/retry/fail path.
189
192
  *
190
193
  * This is the heart of the busy-session guard: a long extended-think on a
191
194
  * large context emits nothing to the JSONL until the turn lands, so the
192
195
  * no-growth check would otherwise read it as "stuck" and re-inject — burying
193
- * the user's real message. Deferring waits it out instead, and the cap means
194
- * a genuinely-hung "working" footer still gets a forced inject eventually.
196
+ * the user's real message. Deferring waits it out; and crucially, exhausting the
197
+ * defer budget on a session that is STILL working is NOT a license to interrupt
198
+ * it — we stand down. (A footer that FALSELY shows "working" while truly hung is
199
+ * the frozen-frame silence/wedge sentinels' job, not this recovery path's.)
195
200
  */
196
201
  deferForActiveWork(state) {
197
202
  if (!this.deps.isActivelyWorking?.(state.sessionName))
198
203
  return false;
199
- if (state.workingDefers >= this.cfg.maxWorkingDefers)
204
+ // maxWorkingDefers === 0 is the explicit opt-out: "disable the working-guard,
205
+ // inject immediately even while working." Preserve it — proceed to inject.
206
+ if (this.cfg.maxWorkingDefers === 0)
200
207
  return false;
208
+ if (state.workingDefers >= this.cfg.maxWorkingDefers) {
209
+ // Defer budget exhausted, but the live frame STILL shows active work. Do NOT
210
+ // force-inject: that would trample a genuinely-working session, which is the
211
+ // recurring mid-turn "[Request interrupted by user]" on long autonomous
212
+ // sessions that compact periodically (2026-06-18, topic 13481). A session that
213
+ // is demonstrably alive AND working has already recovered from the compaction
214
+ // on its own — a resume nudge here only interrupts its live turn. So STAND
215
+ // DOWN. (The opposite case — a session whose footer FALSELY shows "working"
216
+ // while actually hung — is the job of the frozen-frame silence/wedge sentinels,
217
+ // not this compaction-recovery path; this path's only safe action on a working
218
+ // session is to wait, never to interrupt.)
219
+ console.log(`[Sentinel] "${state.sessionName}" still actively working after ` +
220
+ `${state.workingDefers} defers — standing down, NOT forcing an inject ` +
221
+ `(session is alive + working; no resume nudge needed)`);
222
+ this.emit('compaction:recovered', { ...state });
223
+ this.finalize(state, 'recovered');
224
+ return true;
225
+ }
201
226
  state.workingDefers += 1;
202
227
  state.status = 'deferring';
203
228
  console.log(`[Sentinel] "${state.sessionName}" actively working — deferring inject ` +
@@ -1 +1 @@
1
- {"version":3,"file":"CompactionSentinel.js","sourceRoot":"","sources":["../../src/monitoring/CompactionSentinel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CompactionSentinel.js","sourceRoot":"","sources":["../../src/monitoring/CompactionSentinel.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.620",
3
+ "version": "1.3.621",
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",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-06-18T04:21:02.177Z",
5
- "instarVersion": "1.3.620",
4
+ "generatedAt": "2026-06-18T05:59:22.886Z",
5
+ "instarVersion": "1.3.621",
6
6
  "entryCount": 201,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -0,0 +1,22 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ Fixes the recurring mid-turn interrupt of long sessions (the "Claude was interrupted" / "[Request interrupted by user]" you'd see on a long autonomous run). Root cause: the CompactionSentinel's recovery guard deferred a resume-nudge while a session was actively working, but only for ~4 minutes (`maxWorkingDefers`); after that it force-injected the nudge **even if the session was still actively working**, interrupting the live turn. On a long session that compacts periodically, it fired repeatedly. Now, when the defer budget is exhausted but the session is still actively working, the sentinel **stands down** (the session is alive and self-recovered — no nudge needed) instead of force-injecting. The genuinely-frozen-footer case is already owned by the silence/context-wedge sentinels. The `maxWorkingDefers: 0` opt-out (inject-immediately) is preserved.
9
+
10
+ ## What to Tell Your User
11
+
12
+ If you ever saw your long-running session get "interrupted" out of nowhere, that's fixed. An internal recovery watchdog was occasionally nudging sessions that were actually still working, which interrupted them. It now leaves a working session alone.
13
+
14
+ ## Summary of New Capabilities
15
+
16
+ - No new capability — a reliability fix. The compaction-recovery watchdog no longer interrupts a session that is still actively working; it stands down instead of forcing a resume nudge.
17
+
18
+ ## Evidence
19
+
20
+ - `tests/unit/CompactionSentinel.test.ts` — 24/24 pass. Updated the old "caps defers then forces an inject" test to assert STAND-DOWN, and added a dedicated regression test that fails if a still-working session is ever force-injected again.
21
+ - `npx tsc --noEmit` clean.
22
+ - Root cause evidenced in `logs/sentinel-events.jsonl`: `"resume nudge injected via internal recovery channel"` + `"no jsonl growth after 6 attempts"`.
@@ -0,0 +1,52 @@
1
+ # Side-Effects Review — CompactionSentinel: stand down instead of trampling a working session
2
+
3
+ **Version / slug:** `compaction-sentinel-no-trample`
4
+ **Date:** `2026-06-18`
5
+ **Author:** `Echo (instar-dev agent)`
6
+ **Second-pass reviewer:** `required (sentinel/recovery change) — appended below`
7
+
8
+ ## Summary of the change
9
+
10
+ Fixes the recurring mid-turn interrupt of long autonomous sessions ("[Request interrupted by user]"). Root cause: `CompactionSentinel.deferForActiveWork` deferred a recovery resume-nudge while the session was actively working, but only up to `maxWorkingDefers` (~4min); once exhausted it returned `false`, and the caller **force-injected the resume nudge even though the session was still actively working** — interrupting the live turn. On a 23h session that compacts periodically, this fired repeatedly. The fix: when the defer budget is exhausted but `isActivelyWorking` is STILL true, the sentinel **stands down** (emits `compaction:recovered`, finalizes — a session demonstrably alive + working has already self-recovered and needs no nudge) instead of force-injecting. The explicit `maxWorkingDefers === 0` opt-out (inject-immediately-even-while-working) is preserved. File: `src/monitoring/CompactionSentinel.ts` (one guard method). Test: `tests/unit/CompactionSentinel.test.ts` (updated the old "force inject after cap" test to assert stand-down; added a dedicated stand-down regression test; 24 tests pass).
11
+
12
+ ## Decision-point inventory
13
+ - `CompactionSentinel.deferForActiveWork` — **modify** — when budget exhausted AND still actively working: stand down (no inject) instead of returning false (which force-injected). The `not actively working` path and the `maxWorkingDefers === 0` opt-out are unchanged.
14
+
15
+ ## 1. Over-block
16
+ Not a block/allow surface. The change makes the sentinel inject LESS (a de-escalation). The only "rejection" added: it now declines to inject a recovery nudge into a still-working session — which is the entire point (that inject was the defect).
17
+
18
+ ## 2. Under-block
19
+ The one scenario the old force-inject targeted — a session whose tmux footer FALSELY shows "working" while truly hung — is no longer force-recovered by THIS sentinel. That case is covered by the frozen-frame detectors (ActiveWorkSilenceSentinel, ContextWedgeSentinel, SessionWatchdog), which use frame-change/socket signals rather than the footer boolean. So the genuinely-hung case still has recovery owners; this sentinel simply stops trampling genuinely-working sessions.
20
+
21
+ ## 3. Level-of-abstraction fit
22
+ Correct layer — the fix is in the guard that already exists for exactly this purpose (`deferForActiveWork`). It uses the same `isActivelyWorking` (live-tmux-frame) signal already wired; no new detection added.
23
+
24
+ ## 4. Signal vs authority compliance
25
+ **Required reference:** docs/signal-vs-authority.md
26
+ - [x] Yes, with appropriate de-escalation: the sentinel holds runtime authority (it injects into sessions). This change REDUCES that authority (it stops acting on working sessions). Strictly safer direction — never adds a brittle block; it removes a brittle action.
27
+
28
+ ## 5. Interactions
29
+ - **Shadowing:** none changed. The other recovery sentinels are unaffected and now solely own the falsely-working-footer case (no double-recovery with this one).
30
+ - **Double-fire:** reduced (this sentinel no longer fires into working sessions that the autonomous stop-hook is already re-driving).
31
+ - **Races:** the stand-down calls `finalize(state,'recovered')` which keeps state briefly for the recovery-guard window (existing behavior), so the zombie-killer veto timing is unchanged.
32
+
33
+ ## 6. External surfaces
34
+ No operator surface, no API, no message shape change. The only external-visible effect: long sessions stop being interrupted mid-turn. A `compaction:recovered` event now fires for the stand-down case (audited in `sentinel-events.jsonl`) — additive, no consumer breaks.
35
+
36
+ ## 7. Multi-machine posture (Cross-Machine Coherence)
37
+ Machine-local BY DESIGN — the CompactionSentinel runs per-machine over that machine's own sessions (recovery is a local-process concern). No cross-machine state; the fix changes only local decision logic. Both machines get the fix via the normal deploy/update path.
38
+
39
+ ## 8. Rollback cost
40
+ One-method revert, ship a patch. No persistent state, no migration, no operator action. Because the change is a pure de-escalation, even an un-noticed regression fails safe (worst case: a falsely-working-footer hung session waits for the other sentinels instead of this one).
41
+
42
+ ## Conclusion
43
+ Small, well-scoped fix to the exact guard responsible for the recurring interrupt. De-escalation only; 24 unit tests pass incl. a new regression test that fails if a still-working session is ever force-injected again. Clear to ship pending the appended second-pass.
44
+
45
+ ## Second-pass review (if required)
46
+ **Reviewer:** independent general-purpose reviewer subagent (read-only), 2026-06-18 — **CONCUR**
47
+
48
+ Verified against the actual code (cited file:line): (1) stand-down replaces force-inject — when `isActivelyWorking` && `workingDefers >= maxWorkingDefers`, emits `compaction:recovered` + `finalize('recovered')` + returns true; both callers (`attemptInjection:297`, `verifyRecovery:420`) bail before `recoverFn` — no inject. (2) `maxWorkingDefers === 0` opt-out preserved (early `return false` at :348 → inject). (3) not-working path unchanged (:345 → normal inject/retry/fail; genuinely-stuck still recovered). (4) no timer/state leak — stand-down routes through the same `finalize` terminal path; at every call site the per-session timer was already deleted; `isRecoveryActive` returns false in `recovered` so the zombie-veto releases. (5) strict de-escalation — `recoverFn` called strictly less; no new block/interrupt path. (6) coverage gap closed — the falsely-working-footer hung case is owned by ActiveWorkSilenceSentinel (frame-HASH change + frozen-indicator backstop) and ContextWedgeSentinel (transcript fast-fail signatures), which use orthogonal signals, so standing down here strands nothing. **No concerns.**
49
+
50
+ ## Evidence pointers
51
+ - `tests/unit/CompactionSentinel.test.ts` — 24/24 pass; new "STANDS DOWN" test + updated cap test.
52
+ - `npx tsc --noEmit` clean.