@0xmaxma/claude-gateway 1.8.3 → 1.8.4

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 (41) hide show
  1. package/README.md +56 -0
  2. package/dist/cli/commands/debug-bundle.d.ts.map +1 -1
  3. package/dist/cli/commands/debug-bundle.js +9 -52
  4. package/dist/cli/commands/debug-bundle.js.map +1 -1
  5. package/dist/cli/commands/gateway.d.ts +6 -1
  6. package/dist/cli/commands/gateway.d.ts.map +1 -1
  7. package/dist/cli/commands/gateway.js +14 -3
  8. package/dist/cli/commands/gateway.js.map +1 -1
  9. package/dist/cli/commands/logs.d.ts +37 -0
  10. package/dist/cli/commands/logs.d.ts.map +1 -0
  11. package/dist/cli/commands/logs.js +356 -0
  12. package/dist/cli/commands/logs.js.map +1 -0
  13. package/dist/cli/index.d.ts.map +1 -1
  14. package/dist/cli/index.js +16 -5
  15. package/dist/cli/index.js.map +1 -1
  16. package/dist/cli/logs-dir.d.ts +69 -0
  17. package/dist/cli/logs-dir.d.ts.map +1 -0
  18. package/dist/cli/logs-dir.js +166 -0
  19. package/dist/cli/logs-dir.js.map +1 -0
  20. package/dist/config/watcher.d.ts.map +1 -1
  21. package/dist/config/watcher.js +5 -0
  22. package/dist/config/watcher.js.map +1 -1
  23. package/dist/index.js +26 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/logger.d.ts +52 -1
  26. package/dist/logger.d.ts.map +1 -1
  27. package/dist/logger.js +264 -2
  28. package/dist/logger.js.map +1 -1
  29. package/dist/shell/bypass-dialog.d.ts +104 -12
  30. package/dist/shell/bypass-dialog.d.ts.map +1 -1
  31. package/dist/shell/bypass-dialog.js +146 -14
  32. package/dist/shell/bypass-dialog.js.map +1 -1
  33. package/dist/shell/claude-pty-shell.js +29 -4
  34. package/dist/shell/claude-pty-shell.js.map +1 -1
  35. package/dist/shell/screen.d.ts +15 -11
  36. package/dist/shell/screen.d.ts.map +1 -1
  37. package/dist/shell/screen.js +42 -33
  38. package/dist/shell/screen.js.map +1 -1
  39. package/dist/types.d.ts +20 -0
  40. package/dist/types.d.ts.map +1 -1
  41. package/package.json +1 -1
@@ -27,16 +27,18 @@
27
27
  * reordering must not send us to "No, exit"), and anything unparseable or
28
28
  * ambiguous produces no keystroke at all.
29
29
  *
30
- * This module is the pure decision — kept free of node-pty / screen imports so
31
- * it is cheap to unit-test in isolation, same pattern as menu-probe.ts's
32
- * decideProbeAttempt and menu-cancel.ts's decideMenuCancel. See
30
+ * This module is the pure detection + decision — kept free of node-pty / screen
31
+ * imports so it is cheap to unit-test in isolation, same pattern as
32
+ * menu-probe.ts's decideProbeAttempt and menu-cancel.ts's decideMenuCancel.
33
+ * ScreenModel.detectDialog() calls isBypassDialogOnScreen() below; see
33
34
  * Driver.maybeHandleDialog() in claude-pty-shell.ts for where it is wired in.
34
35
  */
35
36
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.BYPASS_RESET_AFTER_MISSES = exports.BYPASS_MAX_KEYS = exports.BYPASS_KEY_ENTER = exports.BYPASS_KEY_UP = exports.BYPASS_KEY_DOWN = exports.BYPASS_DECLINE_LABEL = exports.BYPASS_ACCEPT_LABEL = void 0;
37
+ exports.BYPASS_RESET_AFTER_MISSES = exports.BYPASS_MAX_KEYS = exports.BYPASS_KEY_ENTER = exports.BYPASS_KEY_UP = exports.BYPASS_KEY_DOWN = exports.BYPASS_MAX_FOOTER_GAP = exports.BYPASS_MAX_ROW_GAP = exports.BYPASS_HEADING = exports.BYPASS_CONFIRM_FOOTER = exports.BYPASS_DECLINE_LABEL = exports.BYPASS_ACCEPT_LABEL = void 0;
37
38
  exports.noteDialogAbsent = noteDialogAbsent;
38
39
  exports.noteDialogPresent = noteDialogPresent;
39
40
  exports.rowPattern = rowPattern;
41
+ exports.isBypassDialogOnScreen = isBypassDialogOnScreen;
40
42
  exports.decideBypassDialogAction = decideBypassDialogAction;
41
43
  /**
42
44
  * The dialog's two option labels. BYPASS_ACCEPT_LABEL is the same string
@@ -47,6 +49,40 @@ exports.decideBypassDialogAction = decideBypassDialogAction;
47
49
  */
48
50
  exports.BYPASS_ACCEPT_LABEL = 'Yes, I accept';
49
51
  exports.BYPASS_DECLINE_LABEL = 'No, exit';
52
+ /**
53
+ * The dialog's own confirm affordance, rendered a line or two below the option
54
+ * rows ("Enter to confirm · Esc to cancel"). Only the stable prefix is matched.
55
+ *
56
+ * Required by {@link isBypassDialogOnScreen} for the same reason
57
+ * TUI_REQUEST_TOO_LARGE_DISMISS is required by detectRequestTooLarge(): the
58
+ * labels alone appear in ordinary prose (this very dialog's warning text, a
59
+ * chat reply explaining it, re-injected history quoting it), whereas the
60
+ * footer is the affordance the live overlay renders — and it is exactly the
61
+ * affordance the accepting keystroke relies on, so gating on it keeps
62
+ * detection and the action consistent.
63
+ */
64
+ exports.BYPASS_CONFIRM_FOOTER = 'Enter to confirm';
65
+ /**
66
+ * The dialog's heading — the same string screen.ts lists first in
67
+ * TUI_BYPASS_PERMS, repeated here for the dependency-free reason above, with a
68
+ * unit test asserting the two never drift apart.
69
+ *
70
+ * Required by {@link isBypassDialogOnScreen} so that predicate is the COMPLETE
71
+ * rule rather than half of one split across two files. See the note there.
72
+ */
73
+ exports.BYPASS_HEADING = 'Bypass Permissions mode';
74
+ /**
75
+ * How far apart the dialog's own rows may sit before they stop being one block.
76
+ *
77
+ * The real capture has the two options on adjacent rows and the footer two rows
78
+ * below them (one blank row between). These bounds allow a little repaint slack
79
+ * while still requiring the elements to be visually together: without them the
80
+ * "structure" was only an ordering, so an option row, a second option row 15
81
+ * lines further down and any sentence containing "Enter to confirm" below that
82
+ * satisfied it — on a screen of ordinary conversation (review round 2, M3).
83
+ */
84
+ exports.BYPASS_MAX_ROW_GAP = 2;
85
+ exports.BYPASS_MAX_FOOTER_GAP = 3;
50
86
  /** Arrow keystrokes used to walk the caret onto the accept row. */
51
87
  exports.BYPASS_KEY_DOWN = '\x1b[B';
52
88
  exports.BYPASS_KEY_UP = '\x1b[A';
@@ -80,20 +116,20 @@ exports.BYPASS_MAX_KEYS = 60;
80
116
  * Consecutive rounds with no dialog on screen before the keystroke ceiling is
81
117
  * considered spent on a dialog that is gone.
82
118
  *
83
- * Not 1: detection needs both TUI_BYPASS_PERMS markers inside the same bottom
84
- * region (screen.ts DIALOG_REGION_ROWS), so a repaint that shifts the box by a
85
- * row drops the header out of that window for a single read. Resetting on one
86
- * miss would zero the counter mid-dialog — precisely the case the ceiling
87
- * exists for. Requiring sustained absence costs the next dialog one extra
88
- * cooldown round at most.
119
+ * Not 1: detection is structural (see isBypassDialogOnScreen), so a mid-repaint
120
+ * frame the option rows drawn but the footer not yet, or the caret momentarily
121
+ * on neither row reads as "no dialog" for a single round while the dialog is
122
+ * still very much up. Resetting on one miss would zero the counter mid-dialog —
123
+ * precisely the case the ceiling exists for. Requiring sustained absence costs
124
+ * the next dialog one extra cooldown round at most.
89
125
  */
90
126
  exports.BYPASS_RESET_AFTER_MISSES = 2;
91
127
  /**
92
128
  * Record a round in which no dialog was detected, clearing the keystroke count
93
129
  * once the dialog has been absent for BYPASS_RESET_AFTER_MISSES consecutive
94
130
  * rounds so the next dialog starts with a full allowance. Tolerating a single
95
- * miss keeps a one-round detection flicker (a repaint shifting the header out
96
- * of the detection window) from silently refilling the allowance mid-dialog.
131
+ * miss keeps a one-round detection flicker (a repaint catching the dialog
132
+ * half-drawn) from silently refilling the allowance mid-dialog.
97
133
  */
98
134
  function noteDialogAbsent(state) {
99
135
  state.misses++;
@@ -133,7 +169,7 @@ function rowPattern(label) {
133
169
  const ACCEPT_ROW_RE = rowPattern(exports.BYPASS_ACCEPT_LABEL);
134
170
  const DECLINE_ROW_RE = rowPattern(exports.BYPASS_DECLINE_LABEL);
135
171
  /**
136
- * Find the option row nearest the bottom of the region. A live modal is the
172
+ * Find the option row nearest the bottom of the screen. A live modal is the
137
173
  * bottom-most thing on screen, so scanning upward from the end means quoted
138
174
  * scrollback above it can never be the row we act on.
139
175
  */
@@ -145,9 +181,93 @@ function findRow(lines, re) {
145
181
  }
146
182
  return null;
147
183
  }
184
+ /**
185
+ * Is a live, drivable bypass-permissions dialog on this screen?
186
+ *
187
+ * This replaced a positional test — "both marker substrings inside the bottom
188
+ * 20 rows" — which assumed a modal is always anchored to the bottom. This
189
+ * dialog is not: it renders at boot, before there is any conversation to push
190
+ * it down, so on a clean start it sits at the TOP of the screen with the rest
191
+ * blank. Both markers then fall outside the window, detection returns null,
192
+ * nothing is pressed, and the session dies at the 120 s startup timeout and
193
+ * respawns into the same dialog (issue #436). Whether a given boot emitted
194
+ * enough output to push the dialog into the window is what made the wedge look
195
+ * random.
196
+ *
197
+ * The window was never really about position, though — it was a cheap proxy for
198
+ * "this is the live modal, not text that quotes it". Quoted text is a genuine
199
+ * hazard: an agent explaining this dialog, or re-injected conversation history,
200
+ * puts the same characters on the same screen, and a mis-aimed Enter can land on
201
+ * "No, exit" and kill Claude Code unrecoverably. So the proxy is replaced with
202
+ * the thing it was proxying for — structural properties, all position-
203
+ * independent, all read off a verbatim capture of the real dialog:
204
+ *
205
+ * 1. The dialog's heading is somewhere on screen. Cheap substring reject.
206
+ * 2. Both option labels occupy a WHOLE row (findRow's anchored patterns), so
207
+ * prose that mentions them mid-sentence never qualifies.
208
+ * 3. Exactly ONE of those two rows carries the ❯ caret. Zero means the frame
209
+ * is still rendering (or is not a live select); two is a shape we do not
210
+ * understand.
211
+ * 4. The rows and the footer form one BLOCK — the options within
212
+ * BYPASS_MAX_ROW_GAP rows of each other, the footer within
213
+ * BYPASS_MAX_FOOTER_GAP below them. Without this the three elements only
214
+ * had to appear in order, so an option row, an unrelated option row 15
215
+ * lines later and a sentence containing "Enter to confirm" further down
216
+ * still qualified (review round 2, finding M3).
217
+ * 5. The dialog's own confirm footer renders BELOW the option rows.
218
+ * 6. Nothing but blank rows renders below that footer.
219
+ *
220
+ * (6) is the load-bearing one, and it is what the old bottom-region test was
221
+ * actually encoding: a live modal owns the screen. Quoted text never can — the
222
+ * input box, its border and the status bar always render underneath it — so
223
+ * scrollback, a pasted dialog, and re-injected history all fail (6) no matter
224
+ * where on the screen they land.
225
+ *
226
+ * (6) is deliberately ZERO-tolerance: not even a box border may follow the
227
+ * footer. A future Claude Code that draws this dialog inside a box, or paints a
228
+ * status line beneath it, would therefore stop being detected. That is the
229
+ * intended direction of the trade — a miss is fail-safe (the operator sees the
230
+ * dialog, and maybeHandleDialog() now logs a warning naming this exact case),
231
+ * whereas relaxing (6) to tolerate border rows would admit a quoted dialog
232
+ * sitting above an EMPTY input box, whose rows are themselves nothing but
233
+ * border characters. Given "No, exit" is unrecoverable and a visible dialog is
234
+ * not, a miss beats a false accept (review round 2, finding M2 — accepted as
235
+ * accurate, resolved this way rather than by relaxing the rule).
236
+ *
237
+ * Fail-safe in the same direction as before: anything unrecognised reads as "no
238
+ * dialog", which means no keystroke and an operator who simply sees the dialog.
239
+ */
240
+ function isBypassDialogOnScreen(screenText) {
241
+ // The heading gate lives HERE rather than in ScreenModel.detectDialog() so
242
+ // that this predicate is the whole rule. When detectDialog() held it, the
243
+ // action layer re-applied only the structural half, and a screen carrying a
244
+ // perfect dialog shape without the heading produced a live Enter if
245
+ // decideBypassDialogAction() was ever called from anywhere else — the exact
246
+ // drift the two-layer design claimed to prevent (review round 2, finding H1).
247
+ if (!screenText.includes(exports.BYPASS_HEADING))
248
+ return false;
249
+ const lines = screenText.split('\n');
250
+ const accept = findRow(lines, ACCEPT_ROW_RE);
251
+ const decline = findRow(lines, DECLINE_ROW_RE);
252
+ if (!accept || !decline)
253
+ return false;
254
+ // Exactly one caret: equal flags mean either none (still rendering) or both
255
+ // (unrecognised shape). Same rule decideBypassDialogAction() acts on.
256
+ if (accept.caret === decline.caret)
257
+ return false;
258
+ if (Math.abs(accept.line - decline.line) > exports.BYPASS_MAX_ROW_GAP)
259
+ return false;
260
+ const lastOptionRow = Math.max(accept.line, decline.line);
261
+ const footer = lines.findIndex((l, i) => i > lastOptionRow && l.includes(exports.BYPASS_CONFIRM_FOOTER));
262
+ if (footer === -1)
263
+ return false;
264
+ if (footer - lastOptionRow > exports.BYPASS_MAX_FOOTER_GAP)
265
+ return false;
266
+ return lines.slice(footer + 1).every((l) => l.trim() === '');
267
+ }
148
268
  /**
149
269
  * Decide the single keystroke to send at a bypass-permissions dialog, given
150
- * the screen region the dialog was detected in.
270
+ * the screen text the dialog was detected on.
151
271
  *
152
272
  * Callers send at most one key per call and re-read the screen before the
153
273
  * next one (the DIALOG_ACTION_COOLDOWN_MS re-entry in maybeHandleDialog()),
@@ -166,6 +286,18 @@ function decideBypassDialogAction(dialogText, state) {
166
286
  if (state.keys >= exports.BYPASS_MAX_KEYS) {
167
287
  return { kind: 'wait', reason: `keystroke budget exhausted after ${state.keys} keys` };
168
288
  }
289
+ // The caller only gets here after detectDialog() fired, and both now read the
290
+ // whole screen — so "act only on what was detected" can no longer be enforced
291
+ // by handing this function a narrow region. It is enforced by applying the
292
+ // same structural rule here instead, which also keeps the two layers from
293
+ // drifting apart if either is edited alone.
294
+ if (!isBypassDialogOnScreen(dialogText)) {
295
+ return { kind: 'wait', reason: 'no live bypass dialog on screen' };
296
+ }
297
+ // The checks below are reached only for a screen that already satisfies that
298
+ // rule, so several are belt-and-braces. They are kept deliberately: each one
299
+ // states an invariant this decision depends on, and a keystroke sent on a
300
+ // wrong assumption here can pick "No, exit" and end the session for good.
169
301
  const lines = dialogText.split('\n');
170
302
  const accept = findRow(lines, ACCEPT_ROW_RE);
171
303
  if (!accept)
@@ -1 +1 @@
1
- {"version":3,"file":"bypass-dialog.js","sourceRoot":"","sources":["../../src/shell/bypass-dialog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bypass-dialog.js","sourceRoot":"","sources":["../../src/shell/bypass-dialog.ts"],"names":[],"mappings":"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"}
@@ -159,6 +159,9 @@ class Driver {
159
159
  // whose dialog has no row numbers, and the key that accepts (see
160
160
  // bypass-dialog.ts). Reset once the dialog leaves the screen.
161
161
  this.bypassDialog = { keys: 0, misses: 0 };
162
+ // Latch for the "markers on screen but the dialog did not validate" warning
163
+ // below, so it is reported once per run of such rounds rather than every 2 s.
164
+ this.bypassMarkerWarned = false;
162
165
  // In-flight behavioral probe round, advanced synchronously by tick() at a
163
166
  // single chokepoint — the same tick-driven pattern as menuCancel and
164
167
  // interrupting (review round 2, finding 6; replaced a detached async
@@ -981,14 +984,36 @@ class Driver {
981
984
  const dialog = this.screen.detectDialog();
982
985
  if (!dialog) {
983
986
  // No dialog this round. The keystroke allowance is only refilled once it
984
- // has been absent for several consecutive rounds: detectDialog() needs
985
- // both markers inside the same bottom region, so a repaint that shifts
986
- // the box by a row can hide it for a single read while it is still very
987
- // much up, and refilling there would defeat the allowance entirely.
987
+ // has been absent for several consecutive rounds: detection is structural
988
+ // (see isBypassDialogOnScreen), so a mid-repaint frame can read as absent
989
+ // for a single round while the dialog is still very much up, and refilling
990
+ // there would defeat the allowance entirely.
988
991
  (0, bypass_dialog_1.noteDialogAbsent)(this.bypassDialog);
992
+ // A detector that returns null without a word is how #436 stayed hidden:
993
+ // the symptom (a 120 s startup timeout) is three layers away from the
994
+ // cause (detection that never fired), with no breadcrumb in between.
995
+ //
996
+ // Gated on the SAME substring test detectDialog() uses, not on one marker:
997
+ // "Bypass Permissions mode" alone appears in this repo's own README and in
998
+ // any reply discussing the dialog, so warning on it would be noise. Both
999
+ // markers present means we cleared the cheap gate and it was the structural
1000
+ // test that refused — the case actually worth a line. Warned once per run
1001
+ // of such rounds; the common cause is a reply quoting the dialog, which is
1002
+ // precisely what must not attract a keystroke.
1003
+ if (screen_1.TUI_BYPASS_PERMS.every((s) => this.screen.dialogText().includes(s))) {
1004
+ if (!this.bypassMarkerWarned) {
1005
+ this.bypassMarkerWarned = true;
1006
+ logWarn('Bypass Permissions markers on screen but no live dialog validated — not acting ' +
1007
+ '(quoted text, or a dialog shape this build does not recognise)');
1008
+ }
1009
+ }
1010
+ else {
1011
+ this.bypassMarkerWarned = false;
1012
+ }
989
1013
  return;
990
1014
  }
991
1015
  (0, bypass_dialog_1.noteDialogPresent)(this.bypassDialog);
1016
+ this.bypassMarkerWarned = false;
992
1017
  this.lastDialogActionAt = now;
993
1018
  if (dialog === 'bypass-permissions') {
994
1019
  // --dangerously-skip-permissions is built into the wrapper, so the
@@ -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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"}
@@ -77,6 +77,15 @@ export declare const TUI_SYNTHETIC_MODEL = "<synthetic>";
77
77
  * and never collapses runs of spaces, so the broken fragment stays broken after a
78
78
  * round-trip through the screen buffer. Only the re-injected copy is altered;
79
79
  * live detection of a genuine overlay is untouched.
80
+ *
81
+ * The bypass dialog's confirm footer is defanged the same way and for the same
82
+ * reason. isBypassDialogOnScreen() rejects re-injected history today because the
83
+ * input box and status bar paint below it, failing the "nothing below the footer"
84
+ * rule — but that is a fact about how Claude Code happens to render, not an
85
+ * invariant we control, and the 32MB loop above is precisely the bug that proved
86
+ * a footer-requirement guard is not enough against a verbatim captured copy.
87
+ * Breaking the footer costs nothing and makes the bypass detector unreachable
88
+ * from re-injected text by construction (review round 2, finding M4).
80
89
  */
81
90
  export declare function neutralizeTuiTriggers(text: string): string;
82
91
  /** A numbered option row, with an optional leading ❯/> highlight marker. */
@@ -162,17 +171,6 @@ export declare class ScreenModel {
162
171
  /** Milliseconds since the PTY last produced output. */
163
172
  quietMs(): number;
164
173
  text(): string;
165
- /**
166
- * The bottom `rows` lines of the visible screen. Active modal UI — permission
167
- * dialogs, error overlays, the input box — renders anchored to the bottom,
168
- * whereas conversation/scrollback flows in the upper area. Matching a marker
169
- * against this region instead of the full buffer keeps a reply (or re-injected
170
- * history) that merely quotes a marker from tripping a detector, since that
171
- * text sits above the active zone. Reduces false positives sharply but is not
172
- * absolute (text can briefly be the bottom-most line), so prefer an
173
- * authoritative transcript signal where one exists.
174
- */
175
- bottomText(rows: number): string;
176
174
  private rowsText;
177
175
  /**
178
176
  * Best-effort "Claude is processing" read from screen text. ⚠️ Often false for
@@ -205,6 +203,12 @@ export declare class ScreenModel {
205
203
  * dialog's follow-up action (see decideBypassDialogAction in bypass-dialog.ts)
206
204
  * reads the same rows the detection was made from — acting on a wider view
207
205
  * could send keystrokes because of text that never triggered the detector.
206
+ *
207
+ * That region is now the whole screen: the bypass dialog is not bottom-anchored
208
+ * (issue #436), so it is told apart from text that merely quotes it by its
209
+ * structure rather than by where it sits. Since the region no longer excludes
210
+ * anything, the "act only on what was detected" guarantee is enforced inside
211
+ * decideBypassDialogAction(), which applies the same structural test.
208
212
  */
209
213
  dialogText(): string;
210
214
  detectDialog(): DialogKind | null;
@@ -1 +1 @@
1
- {"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../src/shell/screen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../src/shell/screen.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAE9C,uFAAuF;AACvF,MAAM,WAAW,UAAU;IACzB,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;CACf;AAOD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAClD,eAAO,MAAM,aAAa,QAAS,CAAC;AACpC,eAAO,MAAM,gBAAgB,uDAAwD,CAAC;AAwBtF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAC9D,eAAO,MAAM,6BAA6B,mBAAmB,CAAC;AAE9D;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,QAAoC,CAAC;AAsBpE;;gFAEgF;AAChF,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,YAAY,EAAE,OAAO,CAAC;IACtB;;;sCAGkC;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB;AAgGD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAsDnF;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK1E;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1D;AAED;;yEAEyE;AACzE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,OAAO,SAAK,GAAG,MAAM,CAI5E;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAIrF;AAED;;;;GAIG;AACH,qBAAa,WAAW;aAMM,IAAI;aAAwB,IAAI;IAL5D,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,UAAU,CAAc;IAChC,kGAAkG;IAClG,OAAO,CAAC,aAAa,CAAS;gBAEF,IAAI,SAAM,EAAkB,IAAI,SAAK;IAIjE,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMzB,uDAAuD;IACvD,OAAO,IAAI,MAAM;IAIjB,IAAI,IAAI,MAAM;IAId,OAAO,CAAC,QAAQ;IAUhB;;;;;;OAMG;IACH,MAAM,IAAI,OAAO;IAIjB,qFAAqF;IACrF,eAAe,IAAI,OAAO;IAM1B,sCAAsC;IACtC,SAAS,IAAI,OAAO;IAIpB;;;;;;;;;;;;OAYG;IACH,UAAU,IAAI,MAAM;IAoBpB;;;;;;;;;;;OAWG;IACH,UAAU,IAAI,MAAM;IAIpB,YAAY,IAAI,UAAU,GAAG,IAAI;IAUjC;;;;;;OAMG;IACH,qBAAqB,IAAI,iBAAiB,GAAG,IAAI;IAIjD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,yBAAyB,IAAI,OAAO;CAGrC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EACzC,eAAe,EAAE,MAAM,GACtB,OAAO,CAET"}
@@ -9,6 +9,7 @@ exports.formatMenuPrompt = formatMenuPrompt;
9
9
  exports.formatPermissionPrompt = formatPermissionPrompt;
10
10
  exports.isPtyActivelyWorking = isPtyActivelyWorking;
11
11
  const headless_1 = require("@xterm/headless");
12
+ const bypass_dialog_1 = require("./bypass-dialog");
12
13
  /** The TUI renders spaces as U+00A0 (non-breaking) — normalize before matching. */
13
14
  function normalize(text) {
14
15
  return text.replace(/ /g, ' ');
@@ -39,15 +40,24 @@ function normalize(text) {
39
40
  exports.TUI_BUSY_MARKER = 'esc to interrupt';
40
41
  exports.TUI_PROMPT_RE = /^❯ /m;
41
42
  exports.TUI_BYPASS_PERMS = ['Bypass Permissions mode', 'Yes, I accept'];
43
+ /*
44
+ * NOTE: the bypass dialog's remaining matchers — the option-row patterns and the
45
+ * "Enter to confirm" footer — live in bypass-dialog.ts, next to the decision
46
+ * that consumes them, so that module stays dependency-free and unit-testable
47
+ * on its own. They are deliberately NOT re-exported here: an alias nobody
48
+ * imports is dead code, and this pointer keeps the "one file to touch when the
49
+ * UI changes" intent without it.
50
+ */
42
51
  /**
43
- * Rows from the bottom of the screen that detectDialog() scans. A modal dialog is
44
- * anchored to the bottom; this window comfortably covers a tall dialog box while
45
- * excluding the upper ~60% of the buffer where conversation/scrollback lives.
52
+ * Rows from the bottom of the screen scanned for a bottom-anchored overlay.
46
53
  *
47
- * Conservative on purpose: if a future dialog renders taller than this and the
48
- * markers fall outside the window, the only effect is the auto-accept doesn't
49
- * fire the operator simply sees the dialog (fail-safe), it never mis-accepts.
50
- * Bump this if Claude Code's dialog grows.
54
+ * Used by parseInteractivePrompt() for the tool-permission prompt, which really
55
+ * does render at the bottom, below the conversation. It is NOT used for the
56
+ * bypass-permissions dialog: that one appears at boot, before there is any
57
+ * conversation to push it down, so it renders at the TOP of an otherwise blank
58
+ * screen and fell outside this window entirely (issue #436). See
59
+ * isBypassDialogOnScreen() in bypass-dialog.ts for the structural test that
60
+ * replaced the positional one there.
51
61
  */
52
62
  const DIALOG_REGION_ROWS = 20;
53
63
  /**
@@ -95,13 +105,23 @@ exports.TUI_SYNTHETIC_MODEL = '<synthetic>';
95
105
  * and never collapses runs of spaces, so the broken fragment stays broken after a
96
106
  * round-trip through the screen buffer. Only the re-injected copy is altered;
97
107
  * live detection of a genuine overlay is untouched.
108
+ *
109
+ * The bypass dialog's confirm footer is defanged the same way and for the same
110
+ * reason. isBypassDialogOnScreen() rejects re-injected history today because the
111
+ * input box and status bar paint below it, failing the "nothing below the footer"
112
+ * rule — but that is a fact about how Claude Code happens to render, not an
113
+ * invariant we control, and the 32MB loop above is precisely the bug that proved
114
+ * a footer-requirement guard is not enough against a verbatim captured copy.
115
+ * Breaking the footer costs nothing and makes the bypass detector unreachable
116
+ * from re-injected text by construction (review round 2, finding M4).
98
117
  */
99
118
  function neutralizeTuiTriggers(text) {
100
119
  if (!text)
101
120
  return text;
102
121
  return text
103
122
  .split(exports.TUI_REQUEST_TOO_LARGE).join('Request too large ( max')
104
- .split(exports.TUI_REQUEST_TOO_LARGE_DISMISS).join('esc to go back');
123
+ .split(exports.TUI_REQUEST_TOO_LARGE_DISMISS).join('esc to go back')
124
+ .split(bypass_dialog_1.BYPASS_CONFIRM_FOOTER).join('Enter to confirm');
105
125
  }
106
126
  /** A numbered option row, with an optional leading ❯/> highlight marker. */
107
127
  exports.TUI_MENU_OPTION_RE = /^\s*[❯>]?\s*(\d+)\.\s+(.+?)\s*$/;
@@ -371,20 +391,6 @@ class ScreenModel {
371
391
  text() {
372
392
  return this.rowsText(0, this.term.rows);
373
393
  }
374
- /**
375
- * The bottom `rows` lines of the visible screen. Active modal UI — permission
376
- * dialogs, error overlays, the input box — renders anchored to the bottom,
377
- * whereas conversation/scrollback flows in the upper area. Matching a marker
378
- * against this region instead of the full buffer keeps a reply (or re-injected
379
- * history) that merely quotes a marker from tripping a detector, since that
380
- * text sits above the active zone. Reduces false positives sharply but is not
381
- * absolute (text can briefly be the bottom-most line), so prefer an
382
- * authoritative transcript signal where one exists.
383
- */
384
- bottomText(rows) {
385
- const start = Math.max(0, this.term.rows - rows);
386
- return this.rowsText(start, this.term.rows);
387
- }
388
394
  rowsText(startRow, endRow) {
389
395
  const buf = this.term.buffer.active;
390
396
  const lines = [];
@@ -457,21 +463,24 @@ class ScreenModel {
457
463
  * dialog's follow-up action (see decideBypassDialogAction in bypass-dialog.ts)
458
464
  * reads the same rows the detection was made from — acting on a wider view
459
465
  * could send keystrokes because of text that never triggered the detector.
466
+ *
467
+ * That region is now the whole screen: the bypass dialog is not bottom-anchored
468
+ * (issue #436), so it is told apart from text that merely quotes it by its
469
+ * structure rather than by where it sits. Since the region no longer excludes
470
+ * anything, the "act only on what was detected" guarantee is enforced inside
471
+ * decideBypassDialogAction(), which applies the same structural test.
460
472
  */
461
473
  dialogText() {
462
- return this.bottomText(DIALOG_REGION_ROWS);
474
+ return this.text();
463
475
  }
464
476
  detectDialog() {
465
- // Scan only the bottom region: a real modal dialog renders there, while a
466
- // reply/history quoting "Bypass Permissions mode Yes, I accept" sits in the
467
- // scrollback above and must not trigger the auto-accept keystroke. The dialog
468
- // has no transcript signal, so this region guard (plus requiring BOTH markers)
469
- // is the available defense.
470
- const text = this.dialogText();
471
- if (exports.TUI_BYPASS_PERMS.every((s) => text.includes(s))) {
472
- return 'bypass-permissions';
473
- }
474
- return null;
477
+ // The whole rule lives in isBypassDialogOnScreen(), including the heading
478
+ // substring check that used to sit here. Keeping half the rule at this layer
479
+ // was a real drift hazard: decideBypassDialogAction() re-applies the
480
+ // predicate to refuse acting on a screen that is not a live dialog, and a
481
+ // half-rule meant the ACTION layer — the one that emits keystrokes — was the
482
+ // weaker of the two (review round 2, finding H1).
483
+ return (0, bypass_dialog_1.isBypassDialogOnScreen)(this.dialogText()) ? 'bypass-permissions' : null;
475
484
  }
476
485
  /**
477
486
  * Extract the option labels (and, for a permission prompt, the warning/command