@0xmaxma/claude-gateway 1.7.9 → 1.7.10

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.
Files changed (104) hide show
  1. package/README.md +11 -3
  2. package/dist/agent/dreaming/accept.d.ts.map +1 -1
  3. package/dist/agent/dreaming/accept.js +4 -1
  4. package/dist/agent/dreaming/accept.js.map +1 -1
  5. package/dist/agent/dreaming/config.d.ts.map +1 -1
  6. package/dist/agent/dreaming/config.js +2 -0
  7. package/dist/agent/dreaming/config.js.map +1 -1
  8. package/dist/agent/dreaming/reviewer.d.ts.map +1 -1
  9. package/dist/agent/dreaming/reviewer.js +9 -2
  10. package/dist/agent/dreaming/reviewer.js.map +1 -1
  11. package/dist/agent/dreaming/staleness.d.ts +7 -1
  12. package/dist/agent/dreaming/staleness.d.ts.map +1 -1
  13. package/dist/agent/dreaming/staleness.js +17 -2
  14. package/dist/agent/dreaming/staleness.js.map +1 -1
  15. package/dist/agent/dreaming/types.d.ts +17 -1
  16. package/dist/agent/dreaming/types.d.ts.map +1 -1
  17. package/dist/agent/knowledge/archive-db.d.ts +43 -0
  18. package/dist/agent/knowledge/archive-db.d.ts.map +1 -1
  19. package/dist/agent/knowledge/archive-db.js +130 -0
  20. package/dist/agent/knowledge/archive-db.js.map +1 -1
  21. package/dist/agent/knowledge/config.d.ts +3 -1
  22. package/dist/agent/knowledge/config.d.ts.map +1 -1
  23. package/dist/agent/knowledge/config.js +30 -1
  24. package/dist/agent/knowledge/config.js.map +1 -1
  25. package/dist/agent/knowledge/index.d.ts +11 -4
  26. package/dist/agent/knowledge/index.d.ts.map +1 -1
  27. package/dist/agent/knowledge/index.js +22 -1
  28. package/dist/agent/knowledge/index.js.map +1 -1
  29. package/dist/agent/knowledge/indexer.d.ts +0 -7
  30. package/dist/agent/knowledge/indexer.d.ts.map +1 -1
  31. package/dist/agent/knowledge/indexer.js +34 -7
  32. package/dist/agent/knowledge/indexer.js.map +1 -1
  33. package/dist/agent/knowledge/lifecycle.d.ts +20 -4
  34. package/dist/agent/knowledge/lifecycle.d.ts.map +1 -1
  35. package/dist/agent/knowledge/lifecycle.js +33 -4
  36. package/dist/agent/knowledge/lifecycle.js.map +1 -1
  37. package/dist/agent/knowledge/reflection.d.ts +114 -0
  38. package/dist/agent/knowledge/reflection.d.ts.map +1 -0
  39. package/dist/agent/knowledge/reflection.js +447 -0
  40. package/dist/agent/knowledge/reflection.js.map +1 -0
  41. package/dist/agent/knowledge/shared-dedup.d.ts +85 -0
  42. package/dist/agent/knowledge/shared-dedup.d.ts.map +1 -0
  43. package/dist/agent/knowledge/shared-dedup.js +187 -0
  44. package/dist/agent/knowledge/shared-dedup.js.map +1 -0
  45. package/dist/agent/knowledge/shared-promote.d.ts +82 -7
  46. package/dist/agent/knowledge/shared-promote.d.ts.map +1 -1
  47. package/dist/agent/knowledge/shared-promote.js +244 -11
  48. package/dist/agent/knowledge/shared-promote.js.map +1 -1
  49. package/dist/agent/knowledge/shared-staleness.d.ts +51 -0
  50. package/dist/agent/knowledge/shared-staleness.d.ts.map +1 -0
  51. package/dist/agent/knowledge/shared-staleness.js +149 -0
  52. package/dist/agent/knowledge/shared-staleness.js.map +1 -0
  53. package/dist/agent/knowledge/shared-writer.d.ts +19 -0
  54. package/dist/agent/knowledge/shared-writer.d.ts.map +1 -1
  55. package/dist/agent/knowledge/shared-writer.js +42 -0
  56. package/dist/agent/knowledge/shared-writer.js.map +1 -1
  57. package/dist/agent/knowledge/types.d.ts +24 -0
  58. package/dist/agent/knowledge/types.d.ts.map +1 -1
  59. package/dist/agent/runner.d.ts +7 -0
  60. package/dist/agent/runner.d.ts.map +1 -1
  61. package/dist/agent/runner.js +92 -15
  62. package/dist/agent/runner.js.map +1 -1
  63. package/dist/agent/workspace-loader.d.ts +17 -2
  64. package/dist/agent/workspace-loader.d.ts.map +1 -1
  65. package/dist/agent/workspace-loader.js +17 -1
  66. package/dist/agent/workspace-loader.js.map +1 -1
  67. package/dist/api/gateway-router.d.ts.map +1 -1
  68. package/dist/api/gateway-router.js +2 -1
  69. package/dist/api/gateway-router.js.map +1 -1
  70. package/dist/apps/compose-generator.js +7 -4
  71. package/dist/apps/compose-generator.js.map +1 -1
  72. package/dist/apps/installer.d.ts +86 -0
  73. package/dist/apps/installer.d.ts.map +1 -1
  74. package/dist/apps/installer.js +440 -52
  75. package/dist/apps/installer.js.map +1 -1
  76. package/dist/index.js +37 -1
  77. package/dist/index.js.map +1 -1
  78. package/dist/session/process.d.ts +20 -3
  79. package/dist/session/process.d.ts.map +1 -1
  80. package/dist/session/process.js +120 -5
  81. package/dist/session/process.js.map +1 -1
  82. package/dist/shell/claude-pty-shell.js +146 -27
  83. package/dist/shell/claude-pty-shell.js.map +1 -1
  84. package/dist/shell/draft-phantom.d.ts +49 -0
  85. package/dist/shell/draft-phantom.d.ts.map +1 -0
  86. package/dist/shell/draft-phantom.js +59 -0
  87. package/dist/shell/draft-phantom.js.map +1 -0
  88. package/dist/shell/submit-diag.d.ts +67 -0
  89. package/dist/shell/submit-diag.d.ts.map +1 -0
  90. package/dist/shell/submit-diag.js +69 -0
  91. package/dist/shell/submit-diag.js.map +1 -0
  92. package/dist/types.d.ts +25 -0
  93. package/dist/types.d.ts.map +1 -1
  94. package/mcp/tools/discord/module.ts +23 -15
  95. package/mcp/tools/memory/archive-reader.test.ts +25 -1
  96. package/mcp/tools/memory/archive-reader.ts +70 -12
  97. package/mcp/tools/memory/archive-writer.test.ts +168 -0
  98. package/mcp/tools/memory/archive-writer.ts +137 -0
  99. package/mcp/tools/memory/module.test.ts +187 -0
  100. package/mcp/tools/memory/module.ts +192 -6
  101. package/mcp/tools/telegram/module.ts +10 -2
  102. package/mcp/tools/telegram/receiver-server.ts +9 -2
  103. package/mcp/tools/telegram/typing.ts +178 -34
  104. package/package.json +1 -1
@@ -55,9 +55,11 @@ const tailer_1 = require("./tailer");
55
55
  const emitter_1 = require("./emitter");
56
56
  const trust_1 = require("./trust");
57
57
  const menu_cancel_1 = require("./menu-cancel");
58
+ const draft_phantom_1 = require("./draft-phantom");
58
59
  const orphan_wake_1 = require("./orphan-wake");
59
60
  const control_channel_1 = require("./control-channel");
60
61
  const menu_probe_1 = require("./menu-probe");
62
+ const submit_diag_1 = require("./submit-diag");
61
63
  const POLL_MS = 200;
62
64
  const STARTUP_QUIET_MS = 600;
63
65
  // How often to touch the heartbeat file during an active turn (PTY mode keepalive).
@@ -414,6 +416,11 @@ class Driver {
414
416
  }
415
417
  if (this.turn) {
416
418
  this.turn.sawAssistant = true;
419
+ // First transcript output of this turn — the record-timing signal that
420
+ // distinguishes a busy-marker-drift false-positive from a genuine
421
+ // swallowed Enter in the submit-retry diagnostics (#370).
422
+ if (this.turn.firstRecordAt === 0)
423
+ this.turn.firstRecordAt = Date.now();
417
424
  // Transcript output is the authoritative "Claude is working" signal, and it
418
425
  // is echo-immune (only Claude writes assistant records). Set sawBusy from it
419
426
  // so the fallback end-of-turn (tick(): sawBusy && sawAssistant) and the
@@ -431,15 +438,15 @@ class Driver {
431
438
  logDebug('assistant record outside an active turn (emitted anyway)');
432
439
  }
433
440
  }
434
- /** A tool_use block appeared in this turn's transcript. Only **Task** calls
435
- * are tracked (see ActiveTurn.pendingToolUseIds) — they run an invisible
436
- * sub-agent that can leave the screen idle-quiet while still in flight. */
437
- onToolUse(toolUseId, toolName) {
438
- if (this.turn && toolName === 'Task') {
441
+ /** A tool_use block appeared in this turn's transcript. Every tool is
442
+ * tracked (see ActiveTurn.pendingToolUseIds) — any of them can leave the
443
+ * screen idle-quiet for a stretch while still genuinely in flight. */
444
+ onToolUse(toolUseId, _toolName) {
445
+ if (this.turn) {
439
446
  this.turn.pendingToolUseIds.add(toolUseId);
440
447
  }
441
448
  }
442
- /** A non-sidechain tool_result landed — clears the pending Task gate on the
449
+ /** A non-sidechain tool_result landed — clears the pending-tool gate on the
443
450
  * fallback end-of-turn heuristic (see ActiveTurn.pendingToolUseIds) and
444
451
  * counts as progress so the watchdog's clock resets. */
445
452
  onToolResult(toolUseId) {
@@ -486,6 +493,12 @@ class Driver {
486
493
  if (!turn)
487
494
  return;
488
495
  this.turn = null;
496
+ // #370 instrumentation: a turn that hit ≥1 Enter-retry yet still completed
497
+ // successfully is the signature of a busy-marker-drift false-positive
498
+ // (cause 2) — the Enter was NOT actually swallowed. Log it to pair with the
499
+ // give-up snapshot. Gated on a retry having fired, so it never runs per-turn.
500
+ if (!isError && turn.enterRetries > 0)
501
+ this.logSubmitDiag('recovered', turn, Date.now());
489
502
  // Clear any armed interrupt-settle — the turn is ending now regardless of how
490
503
  // (interrupt path, normal turn_duration, or error), so a stale flag must not
491
504
  // linger and block the next trySubmit().
@@ -510,6 +523,34 @@ class Driver {
510
523
  this.emitter.emitSessionIdle(this.args.sessionId);
511
524
  }
512
525
  }
526
+ /** Emit one structured, prod-safe diagnostic line for the swallowed-Enter
527
+ * submit-retry path (#370). Captures the give-up decision inputs so a genuine
528
+ * swallowed Enter (cause 1: draft still on screen, marker never seen) can be
529
+ * told apart in prod logs from a busy-marker-drift false-positive (cause 2:
530
+ * draft empty, records appear right after). Never logs raw draft text — only
531
+ * its length + a stable hash. Behavior-neutral: reads screen/turn state only.
532
+ * Confined to the retry / give-up / recovery sites (never per-tick) to keep
533
+ * log noise low. */
534
+ logSubmitDiag(event, turn, now) {
535
+ const snapshot = (0, submit_diag_1.buildSubmitDiag)({
536
+ event,
537
+ enterRetries: turn.enterRetries,
538
+ sawBusy: turn.sawBusy,
539
+ sawBusyMarker: turn.sawBusyMarker,
540
+ sawAssistant: turn.sawAssistant,
541
+ recordsDelta: this.tailer.seenRecords - turn.recordsAtStart,
542
+ draft: this.screen.inputDraft(),
543
+ quietMs: this.screen.quietMs(),
544
+ msSinceSubmit: turn.submittedAt > 0 ? now - turn.submittedAt : null,
545
+ msSinceStart: now - turn.startedAt,
546
+ msSinceFirstRecord: turn.firstRecordAt > 0 ? now - turn.firstRecordAt : null,
547
+ hasPrompt: this.screen.hasPrompt(),
548
+ dialog: this.screen.detectDialog(),
549
+ fromMenuSelection: turn.fromMenuSelection,
550
+ probeRounds: turn.probe ? turn.probe.rounds : null,
551
+ });
552
+ logWarn(`submit-diag ${JSON.stringify(snapshot)}`);
553
+ }
513
554
  // ---- turn submission -----------------------------------------------------
514
555
  trySubmit() {
515
556
  // While menuCancel is armed, submission is deferred to tick() until the TUI
@@ -532,10 +573,13 @@ class Driver {
532
573
  enterRetries: 0,
533
574
  sawBusy: false,
534
575
  sawAssistant: false,
576
+ sawBusyMarker: false,
577
+ firstRecordAt: 0,
535
578
  lastProgressAt: now,
536
579
  texts: [],
537
580
  usage: null,
538
581
  dialogEscapes: 0,
582
+ phantomDraft: null,
539
583
  recordsAtStart: this.tailer.seenRecords,
540
584
  fromMenuSelection,
541
585
  probe: null,
@@ -556,7 +600,9 @@ class Driver {
556
600
  // clears one line, so a MULTI-line stale draft would survive partially and
557
601
  // concatenate with the paste below — clearInput() loops until the input is
558
602
  // empty. A no-op at an already-empty idle prompt.
559
- await this.clearInput();
603
+ const phantomDraft = await this.clearInput();
604
+ if (this.turn)
605
+ this.turn.phantomDraft = phantomDraft;
560
606
  if (this.abortIfInterrupted())
561
607
  return;
562
608
  if (NO_BRACKETED_PASTE) {
@@ -593,23 +639,45 @@ class Driver {
593
639
  * costs one more Ctrl+U (a harmless no-op at an empty prompt), never an early
594
640
  * stop that leaves a remnant behind. At an already-empty prompt this sends a
595
641
  * single no-op Ctrl+U and returns.
642
+ *
643
+ * Returns the *phantom* draft when the budget is exhausted and the reported text
644
+ * never changed across it, else null. Ctrl+U edits the input line, so a real
645
+ * draft always changes under it; text that survives the whole burst byte-for-byte
646
+ * is not in the input box at all. `inputDraft()` scans the visible screen for a
647
+ * `❯ ` caret, and an interactive overlay's highlighted row uses that same caret,
648
+ * so an on-screen menu/permission prompt reads back as a "draft" no keystroke here
649
+ * can clear. Reporting it lets the submit-retry path discount it instead of
650
+ * treating it as proof that this turn's Enter was swallowed (#370).
651
+ *
652
+ * Deliberately still proceeds to paste in that case: across prod logs 509 of these
653
+ * unclearable reads occurred and only 1.4% were followed by a submit give-up, so
654
+ * refusing to submit would break far more turns than it saves.
596
655
  */
597
656
  async clearInput() {
657
+ // Read once and reuse: two reads of a live screen can disagree, and `before`
658
+ // must be the very value the burst below is judged against.
659
+ const before = this.screen.inputDraft();
598
660
  // Fast path (the common case): the input is already empty, so send a single
599
661
  // Ctrl+U as a harmless no-op — exactly the pre-#296 behavior — and skip the
600
662
  // settle loop entirely so a clean submit gains no latency.
601
- if (this.screen.inputDraft() === '') {
663
+ if (before === '') {
602
664
  this.host.writeRaw('\x15');
603
- return;
665
+ return null;
604
666
  }
605
667
  // A draft is present: clear it a line at a time until the input reads empty.
606
668
  for (let i = 0; i < INPUT_CLEAR_MAX_KEYS; i++) {
607
669
  this.host.writeRaw('\x15'); // Ctrl+U: clear one input line
608
670
  await new Promise((r) => setTimeout(r, INPUT_CLEAR_SETTLE_MS));
609
671
  if (this.screen.inputDraft() === '')
610
- return; // input empty → done
672
+ return null; // input empty → done
611
673
  }
612
- logWarn(`clearInput: input still non-empty after ${INPUT_CLEAR_MAX_KEYS} Ctrl+U — proceeding`);
674
+ const after = this.screen.inputDraft();
675
+ const phantom = (0, draft_phantom_1.classifyPhantomDraft)(before, after);
676
+ logWarn(`clearInput: input still non-empty after ${INPUT_CLEAR_MAX_KEYS} Ctrl+U — proceeding` +
677
+ (phantom !== null
678
+ ? ' (unchanged by every Ctrl+U — not the input box; discounting it for submit-retry)'
679
+ : ''));
680
+ return phantom;
613
681
  }
614
682
  // Sends Ctrl+U to clear the PTY input line, drains the queue, and returns true.
615
683
  // Call after writing to the PTY when an interrupt may have arrived mid-write.
@@ -620,6 +688,40 @@ class Driver {
620
688
  this.queue.length = 0;
621
689
  return true;
622
690
  }
691
+ /**
692
+ * The input draft as evidence that THIS turn's paste is still unsubmitted.
693
+ *
694
+ * `screen.inputDraft()` finds the last `❯ ` caret on the visible screen and reads
695
+ * the text after it. An interactive overlay's highlighted row carries the same
696
+ * caret, so whenever one is up the reader returns the overlay's rows as a
697
+ * "draft" — text that no keystroke of ours put there and none can remove. Taking
698
+ * that at face value makes the swallowed-Enter branch fire on a turn whose Enter
699
+ * went through fine, writes a bare `\r` into whatever overlay is on screen, and
700
+ * then labels the give-up `cause1-swallowed` in the diagnostics (#370).
701
+ *
702
+ * `phantomDraft` is the pre-paste text the full Ctrl+U budget provably could not
703
+ * change, so a current read byte-identical to it is that same furniture, not this
704
+ * turn's unsubmitted text. Anything else — including a real draft that merely
705
+ * *looks* like a menu, which Ctrl+U does clear — counts as before, so the #296
706
+ * fix this arm exists for is untouched.
707
+ *
708
+ * SCOPE: this closes the draft arm only. The branch's other arm (no new records
709
+ * since turn start) is untouched, and fires on its own — 3 of the 7 give-ups in
710
+ * the prod sample had `recordsDelta === 0` and are unaffected by this. What it
711
+ * does cover is the 4 give-ups (and all 4 recoveries) where the draft arm was the
712
+ * sole trigger, i.e. where a `\r` was written into an on-screen overlay for
713
+ * nothing.
714
+ *
715
+ * TRADE-OFF: a draft that is genuinely in the input box but that Ctrl+U cannot
716
+ * move (a TUI momentarily not accepting input) is misread as a phantom, and with
717
+ * the records arm also quiet the turn then waits out the 30-min watchdog instead
718
+ * of erroring in ~12s. The branch's own preconditions make that narrow — it
719
+ * requires `!sawBusy` and `quietMs > 1500`, which a TUI busy enough to drop
720
+ * keystrokes does not satisfy — but it is the price of discounting anything here.
721
+ */
722
+ unsubmittedDraft(turn) {
723
+ return (0, draft_phantom_1.unsubmittedDraft)(this.screen.inputDraft(), turn.phantomDraft);
724
+ }
623
725
  tick() {
624
726
  if (this.exiting)
625
727
  return;
@@ -652,8 +754,9 @@ class Driver {
652
754
  // on screen OR the PTY emitted output recently — keeping the receiver's 5-min
653
755
  // stalled detector from false-firing mid-work.
654
756
  const ptyAlive = (0, screen_1.isPtyActivelyWorking)({ isBusy: this.screen.isBusy(), quietMs: this.screen.quietMs() }, HEARTBEAT_LIVENESS_QUIET_MS)
655
- // A pending Task sub-agent runs invisibly (sidechain records, quiet
656
- // screen) — keep writing the heartbeat so the receiver's stalled
757
+ // A pending tool call (Task's invisible sub-agent, or a quiet
758
+ // foreground tool like Bash) can leave the screen quiet with no PTY
759
+ // output — keep writing the heartbeat so the receiver's stalled
657
760
  // detector doesn't tear the session down in exactly the window the
658
761
  // pendingToolUseIds gate is holding the turn open for.
659
762
  || (this.turn ? this.turn.pendingToolUseIds.size > 0 : false);
@@ -747,6 +850,10 @@ class Driver {
747
850
  // turn as well as settle/desync states where `this.turn` is null.)
748
851
  if (this.screen.consumeBusySeen() || this.screen.isBusy()) {
749
852
  turn.sawBusy = true;
853
+ // Both checks above match only the literal "esc to interrupt" marker, so
854
+ // this is the one place the marker (not an assistant record) proves Claude
855
+ // is working — record it for the submit-retry diagnostics (#370).
856
+ turn.sawBusyMarker = true;
750
857
  turn.lastProgressAt = now;
751
858
  // Real activity resumed — a probe that ran out of rounds during this
752
859
  // stall gets a fresh budget if the turn genuinely stalls again later.
@@ -774,7 +881,7 @@ class Driver {
774
881
  && !(turn.fromMenuSelection && this.screen.interactivePromptBlocking())
775
882
  && this.screen.quietMs() > 1500
776
883
  && (this.tailer.seenRecords === turn.recordsAtStart
777
- || this.screen.inputDraft() !== '')) {
884
+ || this.unsubmittedDraft(turn) !== '')) {
778
885
  // Retry the swallowed Enter when either (a) no new records have appeared
779
886
  // since this turn started — a delta > 0 normally means Claude began writing
780
887
  // output — OR (b) the input draft is still visibly on screen. (b) is the
@@ -785,6 +892,14 @@ class Driver {
785
892
  // leaving a genuinely-unsubmitted draft stuck until the watchdog or the next
786
893
  // paste collided with it (#296).
787
894
  //
895
+ // (b) reads through unsubmittedDraft(), which discounts a draft the
896
+ // pre-paste Ctrl+U burst proved it cannot touch — an overlay's
897
+ // caret row the draft reader cannot tell from the input box. Without
898
+ // that, (b) is permanently true whenever an overlay is up, so the
899
+ // branch fires on turns whose Enter went through (#370). Arm (a) is
900
+ // unchanged and still fires on its own, so this narrows the branch
901
+ // rather than gating it.
902
+ //
788
903
  // The interactivePromptBlocking() suppression applies ONLY to a
789
904
  // menu-selection turn: there a live menu genuinely can still be on
790
905
  // screen with no busy/record signal (the digit was swallowed, or a
@@ -798,22 +913,25 @@ class Driver {
798
913
  // the exact retry this state needs and wedging the turn into the
799
914
  // 30-min watchdog (review round 2, finding 1).
800
915
  if (turn.enterRetries < MAX_ENTER_RETRIES) {
916
+ this.logSubmitDiag('retry', turn, now);
801
917
  turn.enterRetries++;
802
918
  turn.submittedAt = now;
803
919
  logWarn(`Enter appears swallowed — retry ${turn.enterRetries}/${MAX_ENTER_RETRIES}`);
804
920
  this.host.writeRaw('\r');
805
921
  }
806
922
  else {
923
+ this.logSubmitDiag('giveup', turn, now);
807
924
  this.finishTurn(true, 'failed to submit turn to the TUI input');
808
925
  }
809
926
  return;
810
927
  }
811
928
  // Fallback end-of-turn (e.g. interrupted turn never writes turn_duration):
812
929
  // ran → idle prompt → quiet, and we already streamed assistant output.
813
- // pendingToolUseIds must be empty too — a Task tool call's sub-agent runs
814
- // invisibly (its own transcript records are sidechain and filtered out),
815
- // so the screen can look idle-quiet for stretches while the turn is
816
- // genuinely still in flight (see onToolResult()/pendingToolUseIds above).
930
+ // pendingToolUseIds must be empty too — any tool call (Task's invisible
931
+ // sub-agent, or an ordinary foreground tool like Bash sitting quiet
932
+ // through a long hook/build) can leave the screen looking idle-quiet for
933
+ // stretches while the turn is genuinely still in flight (see
934
+ // onToolResult()/pendingToolUseIds above; issue #388).
817
935
  if (turn.sawBusy && turn.sawAssistant
818
936
  && turn.pendingToolUseIds.size === 0
819
937
  && this.screen.hasPrompt()
@@ -824,15 +942,16 @@ class Driver {
824
942
  }
825
943
  if (now - turn.lastProgressAt > WATCHDOG_MS) {
826
944
  if (turn.pendingToolUseIds.size > 0) {
827
- // A pending Task held the turn past the watchdog: either a genuinely
828
- // long sub-agent that stayed screen-quiet the whole time, or an
829
- // orphaned tool_use whose result never landed. End the turn with an
830
- // error but keep the PTY session alive — killing it would drop queued
831
- // messages and is unrecoverable, whereas a stuck/slow sub-agent is
832
- // turn-local. (Distinct from the no-progress kill below, which means
833
- // the whole TUI has wedged.)
834
- logWarn(`pending Task exceeded ${WATCHDOG_MS}ms without a result — ending turn, session preserved`);
835
- this.finishTurn(true, `sub-agent did not complete within ${WATCHDOG_MS}ms`);
945
+ // A pending tool call held the turn past the watchdog: either a
946
+ // genuinely long-running call (sub-agent or foreground tool) that
947
+ // stayed screen-quiet the whole time, or an orphaned tool_use whose
948
+ // result never landed. End the turn with an error but keep the PTY
949
+ // session alive — killing it would drop queued messages and is
950
+ // unrecoverable, whereas a stuck/slow tool call is turn-local.
951
+ // (Distinct from the no-progress kill below, which means the whole
952
+ // TUI has wedged.)
953
+ logWarn(`pending tool call exceeded ${WATCHDOG_MS}ms without a result — ending turn, session preserved`);
954
+ this.finishTurn(true, `tool call did not complete within ${WATCHDOG_MS}ms`);
836
955
  return;
837
956
  }
838
957
  this.finishTurn(true, `no progress for ${WATCHDOG_MS}ms — giving up`);
@@ -1 +1 @@
1
- {"version":3,"file":"claude-pty-shell.js","sourceRoot":"","sources":["../../src/shell/claude-pty-shell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-pty-shell.js","sourceRoot":"","sources":["../../src/shell/claude-pty-shell.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Telling a real, unsubmitted input draft apart from screen furniture the draft
3
+ * reader mistakes for one (#370).
4
+ *
5
+ * `ScreenModel.inputDraft()` locates the last `❯ ` caret on the visible screen and
6
+ * returns the text after it. An interactive overlay — an AskUserQuestion menu, a
7
+ * tool-permission prompt — renders its highlighted row with that exact caret and
8
+ * hides the input box, so while one is up the reader hands back the overlay's rows
9
+ * as if the user had typed them. Static text cannot settle the ambiguity (a genuine
10
+ * draft that begins "1. …" is menu-shaped too, which is why gating on a screen-text
11
+ * menu check regressed #296), so this module settles it *behaviorally* instead,
12
+ * using a keystroke the driver already sends.
13
+ *
14
+ * Ctrl+U edits the input line. A real draft therefore always changes under a burst
15
+ * of them; text that survives the entire pre-paste budget byte-for-byte is not in
16
+ * the input box at all. That surviving text is the "phantom", and the submit-retry
17
+ * path must not read it as proof that this turn's Enter was swallowed.
18
+ *
19
+ * Pure helpers, kept out of claude-pty-shell.ts so they are unit-testable without
20
+ * importing that module (which starts the driver on load) — same reason
21
+ * `submit-diag.ts` exists.
22
+ *
23
+ * Scope note: only the swallowed-Enter retry's draft arm consults these. The
24
+ * diagnostics in `submit-diag.ts` still report the raw `inputDraft()`, so a
25
+ * phantom still shows up there as `draftLen > 0` and is still labelled
26
+ * `cause1-swallowed` — feeding the phantom into that snapshot is a follow-up,
27
+ * kept separate because the two changes ship on independent branches.
28
+ */
29
+ /**
30
+ * The phantom draft, or null if the reported text is (or may be) a real draft.
31
+ *
32
+ * @param before draft reported immediately before the Ctrl+U burst
33
+ * @param after draft reported after the burst exhausted its budget
34
+ *
35
+ * Null when the input cleared (`after === ''`) or when any Ctrl+U moved the text —
36
+ * a partially-cleared real draft still counts as real, so nothing is discounted on
37
+ * the strength of a maybe.
38
+ */
39
+ export declare function classifyPhantomDraft(before: string, after: string): string | null;
40
+ /**
41
+ * The draft to treat as evidence that a turn's paste is still unsubmitted.
42
+ *
43
+ * Returns '' when the current read is byte-identical to a known phantom — the same
44
+ * furniture, not this turn's text. Any other draft passes through unchanged, so a
45
+ * real draft that merely looks menu-shaped still triggers the swallowed-Enter retry
46
+ * exactly as #296 requires.
47
+ */
48
+ export declare function unsubmittedDraft(draft: string, phantom: string | null): string;
49
+ //# sourceMappingURL=draft-phantom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draft-phantom.d.ts","sourceRoot":"","sources":["../../src/shell/draft-phantom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGjF;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE9E"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ /**
3
+ * Telling a real, unsubmitted input draft apart from screen furniture the draft
4
+ * reader mistakes for one (#370).
5
+ *
6
+ * `ScreenModel.inputDraft()` locates the last `❯ ` caret on the visible screen and
7
+ * returns the text after it. An interactive overlay — an AskUserQuestion menu, a
8
+ * tool-permission prompt — renders its highlighted row with that exact caret and
9
+ * hides the input box, so while one is up the reader hands back the overlay's rows
10
+ * as if the user had typed them. Static text cannot settle the ambiguity (a genuine
11
+ * draft that begins "1. …" is menu-shaped too, which is why gating on a screen-text
12
+ * menu check regressed #296), so this module settles it *behaviorally* instead,
13
+ * using a keystroke the driver already sends.
14
+ *
15
+ * Ctrl+U edits the input line. A real draft therefore always changes under a burst
16
+ * of them; text that survives the entire pre-paste budget byte-for-byte is not in
17
+ * the input box at all. That surviving text is the "phantom", and the submit-retry
18
+ * path must not read it as proof that this turn's Enter was swallowed.
19
+ *
20
+ * Pure helpers, kept out of claude-pty-shell.ts so they are unit-testable without
21
+ * importing that module (which starts the driver on load) — same reason
22
+ * `submit-diag.ts` exists.
23
+ *
24
+ * Scope note: only the swallowed-Enter retry's draft arm consults these. The
25
+ * diagnostics in `submit-diag.ts` still report the raw `inputDraft()`, so a
26
+ * phantom still shows up there as `draftLen > 0` and is still labelled
27
+ * `cause1-swallowed` — feeding the phantom into that snapshot is a follow-up,
28
+ * kept separate because the two changes ship on independent branches.
29
+ */
30
+ Object.defineProperty(exports, "__esModule", { value: true });
31
+ exports.classifyPhantomDraft = classifyPhantomDraft;
32
+ exports.unsubmittedDraft = unsubmittedDraft;
33
+ /**
34
+ * The phantom draft, or null if the reported text is (or may be) a real draft.
35
+ *
36
+ * @param before draft reported immediately before the Ctrl+U burst
37
+ * @param after draft reported after the burst exhausted its budget
38
+ *
39
+ * Null when the input cleared (`after === ''`) or when any Ctrl+U moved the text —
40
+ * a partially-cleared real draft still counts as real, so nothing is discounted on
41
+ * the strength of a maybe.
42
+ */
43
+ function classifyPhantomDraft(before, after) {
44
+ if (after === '')
45
+ return null;
46
+ return after === before ? after : null;
47
+ }
48
+ /**
49
+ * The draft to treat as evidence that a turn's paste is still unsubmitted.
50
+ *
51
+ * Returns '' when the current read is byte-identical to a known phantom — the same
52
+ * furniture, not this turn's text. Any other draft passes through unchanged, so a
53
+ * real draft that merely looks menu-shaped still triggers the swallowed-Enter retry
54
+ * exactly as #296 requires.
55
+ */
56
+ function unsubmittedDraft(draft, phantom) {
57
+ return phantom !== null && draft === phantom ? '' : draft;
58
+ }
59
+ //# sourceMappingURL=draft-phantom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draft-phantom.js","sourceRoot":"","sources":["../../src/shell/draft-phantom.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;AAYH,oDAGC;AAUD,4CAEC;AAzBD;;;;;;;;;GASG;AACH,SAAgB,oBAAoB,CAAC,MAAc,EAAE,KAAa;IAChE,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC9B,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,gBAAgB,CAAC,KAAa,EAAE,OAAsB;IACpE,OAAO,OAAO,KAAK,IAAI,IAAI,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5D,CAAC"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Diagnostics for the swallowed-Enter submit-retry path (#370).
3
+ *
4
+ * A turn intermittently fails with "failed to submit turn to the TUI input" for
5
+ * two indistinguishable reasons in today's logs:
6
+ * (1) the Enter was genuinely swallowed — the draft is still sitting in the
7
+ * input box at give-up (`draftLen > 0`), or
8
+ * (2) a busy-marker-drift false-positive — newer Claude Code renders a random
9
+ * gerund spinner instead of the "esc to interrupt" marker, so the
10
+ * give-up branch trips even though Claude is working (draft empty, records
11
+ * appear right after — surfaced by the paired `recovered` event).
12
+ *
13
+ * These pure helpers build one prod-safe structured snapshot per retry/give-up/
14
+ * recovery. Extracted from claude-pty-shell.ts so they are unit-testable without
15
+ * importing that module (which starts the driver on load).
16
+ */
17
+ /** Stable 32-bit FNV-1a hash of a string, hex. Used only to correlate the input
18
+ * draft across submit-retry snapshots (an unchanged hash ⇒ a genuinely stuck,
19
+ * unsubmitted draft) WITHOUT ever logging the raw user text. */
20
+ export declare function shortHash(s: string): string;
21
+ /** Decision inputs for one submit-retry diagnostic snapshot. */
22
+ export interface SubmitDiagInputs {
23
+ event: 'retry' | 'giveup' | 'recovered';
24
+ enterRetries: number;
25
+ sawBusy: boolean;
26
+ /** True if the literal "esc to interrupt" marker was ever seen this turn —
27
+ * distinct from `sawBusy` (which also flips from echo-immune assistant
28
+ * records). Its absence, with records still arriving, is the cause-2 tell. */
29
+ sawBusyMarker: boolean;
30
+ sawAssistant: boolean;
31
+ recordsDelta: number;
32
+ /** Raw input draft — redacted to length + hash by buildSubmitDiag; never emitted. */
33
+ draft: string;
34
+ quietMs: number;
35
+ msSinceSubmit: number | null;
36
+ msSinceStart: number;
37
+ msSinceFirstRecord: number | null;
38
+ hasPrompt: boolean;
39
+ dialog: string | null;
40
+ fromMenuSelection: boolean;
41
+ probeRounds: number | null;
42
+ }
43
+ /** Classification of a submit-retry snapshot into the two known failure modes,
44
+ * or `unknown` when the evidence fits neither. This is a *label to aid reading*
45
+ * — the raw fields (`draftLen`, `recordsDelta`, `sawBusyMarker`, …) remain the
46
+ * source of truth and are always emitted, so a novel case is never lost to a
47
+ * wrong bucket.
48
+ *
49
+ * - `cause1-swallowed`: a non-empty draft is still sitting in the input box
50
+ * (`draftLen > 0`) ⇒ the Enter was genuinely swallowed.
51
+ * - `cause2-marker-drift`: the draft is empty and records arrived
52
+ * (`draftLen === 0 && recordsDelta > 0`) ⇒ the Enter went through; the
53
+ * give-up was a busy-marker-drift false positive.
54
+ * - `unknown`: empty draft and no records (`draftLen === 0 && recordsDelta === 0`)
55
+ * ⇒ Enter cleared but nothing followed — fits neither known cause. */
56
+ export type LikelyCause = 'cause1-swallowed' | 'cause2-marker-drift' | 'unknown';
57
+ export declare function classifyLikelyCause(draftLen: number, recordsDelta: number): LikelyCause;
58
+ /** Build the prod-safe, structured diagnostic snapshot for the swallowed-Enter
59
+ * submit-retry path. Pure: the raw draft is reduced to `draftLen` + `draftHash`
60
+ * here and NEVER passed through verbatim, so no user text, token, or secret can
61
+ * reach the logs. `event` distinguishes an Enter-retry, the final give-up
62
+ * (cause 1 proof: non-empty draft still on screen), and a later successful
63
+ * completion (`recovered` — cause 2 proof: the Enter was not actually
64
+ * swallowed). `likelyCause` is a reading aid derived from the raw fields; those
65
+ * fields remain the source of truth. */
66
+ export declare function buildSubmitDiag(i: SubmitDiagInputs): Record<string, unknown>;
67
+ //# sourceMappingURL=submit-diag.d.ts.map