botmux 3.2.1-canary.0 → 3.2.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ask-card.d.ts","sourceRoot":"","sources":["../../../src/im/lark/ask-card.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAEjB,SAAS,EACT,UAAU,EACX,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvE,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAE9C,2CAA2C;AAC3C,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAE9C,kEAAkE;AAClE,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAI9C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,OAAO,WAAW,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,YAAY,CAAC;IACnC,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;CACtC;AAED,wBAAgB,2BAA2B,CACzC,IAAI,GAAE,qBAA0B,GAC/B,iBAAiB,CAgCnB;AAED,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC;IAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CA8C7F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAyGxE;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,aAAa,EAAE,MAAM,GACpB,MAAM,EAAE,EAAE,CAsBZ"}
1
+ {"version":3,"file":"ask-card.d.ts","sourceRoot":"","sources":["../../../src/im/lark/ask-card.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAEjB,SAAS,EACT,UAAU,EACX,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvE,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAE9C,2CAA2C;AAC3C,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAE9C,kEAAkE;AAClE,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAI9C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,OAAO,WAAW,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,YAAY,CAAC;IACnC,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;CACtC;AAED,wBAAgB,2BAA2B,CACzC,IAAI,GAAE,qBAA0B,GAC/B,iBAAiB,CAgCnB;AAED,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC;IAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CA2E7F;AAkBD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAyGxE;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,aAAa,EAAE,MAAM,GACpB,MAAM,EAAE,EAAE,CAsBZ"}
@@ -55,12 +55,23 @@ export async function handleAskCardAction(data) {
55
55
  if (!askId || !nonce || !by) {
56
56
  return staleToast(locale);
57
57
  }
58
- // 旧单选即答路径:按钮直接携带 key,调用 tryResolveAsk(单问单选便捷封装)
58
+ // 旧单选即答路径:按钮直接携带 key,调用 tryResolveAsk(单问单选便捷封装)。
59
+ // accepted 时直接返回终态卡片,让飞书在回调响应里同步替换——不依赖 onSettle 异步 PATCH
60
+ // (异步 PATCH 在飞书侧常因回调已返回而被忽略,导致卡片停在未作答态)。
59
61
  if (action === ASK_SELECT_ACTION) {
60
62
  const selected = asString(value?.key);
61
63
  if (!selected)
62
64
  return staleToast(locale);
63
- return toastForOutcome(tryResolveAsk({ askId, nonce, selected, by }), locale);
65
+ const outcome = tryResolveAsk({ askId, nonce, selected, by });
66
+ if (outcome !== 'accepted')
67
+ return toastForOutcome(outcome, locale);
68
+ return settledCardResponse(askId, {
69
+ kind: 'answered',
70
+ answers: [[selected]],
71
+ by,
72
+ comment: null,
73
+ timedOut: false,
74
+ });
64
75
  }
65
76
  if (action === ASK_TOGGLE_ACTION) {
66
77
  const questionIndex = asNumber(value?.question_index);
@@ -76,18 +87,55 @@ export async function handleAskCardAction(data) {
76
87
  return JSON.parse(buildAskCard(updated));
77
88
  }
78
89
  // 新 Submit 路径:优先从按钮累积态提交;兼容旧 form_value 回调。
90
+ // 同 ASK_SELECT_ACTION:accepted 时同步返回终态卡片。
79
91
  if (action === ASK_SUBMIT_ACTION) {
80
92
  const formValue = data.action?.form_value ?? {};
81
93
  if (Object.keys(formValue).length > 0) {
82
94
  // 推断问题数量:找最大 qN 的 N+1
83
95
  const questionCount = guessQuestionCount(formValue);
84
96
  const selections = parseFormSelections(formValue, questionCount);
85
- return toastForOutcome(submitAsk({ askId, nonce, by, selections }), locale);
97
+ const outcome = submitAsk({ askId, nonce, by, selections });
98
+ if (outcome !== 'accepted')
99
+ return toastForOutcome(outcome, locale);
100
+ return settledCardResponse(askId, {
101
+ kind: 'answered',
102
+ answers: selections,
103
+ by,
104
+ comment: null,
105
+ timedOut: false,
106
+ });
86
107
  }
87
- return toastForOutcome(submitAsk({ askId, nonce, by }), locale);
108
+ const outcome = submitAsk({ askId, nonce, by });
109
+ if (outcome !== 'accepted')
110
+ return toastForOutcome(outcome, locale);
111
+ const updated = getAskSnapshot(askId);
112
+ const answers = updated?.selections ?? updated?.questions.map(() => []) ?? [];
113
+ return settledCardResponse(askId, {
114
+ kind: 'answered',
115
+ answers,
116
+ by,
117
+ comment: null,
118
+ timedOut: false,
119
+ });
88
120
  }
89
121
  return staleToast(locale);
90
122
  }
123
+ /**
124
+ * 构建 settled 终态卡片响应,让飞书在卡片回调响应里**同步**替换原卡片。
125
+ *
126
+ * 为什么需要这个:ASK_SELECT / ASK_SUBMIT 成功 settle 后,若只返回 `undefined`
127
+ * (toastForOutcome('accepted')),飞书不会原地更新卡片,只能依赖 settle() 里
128
+ * dispatcher.onSettle 异步调 updateMessage 去 PATCH——但异步 PATCH 在飞书侧常因
129
+ * 回调响应已返回而被忽略/时序竞争,导致卡片停在未作答态。
130
+ * 这里直接返回终态卡片 JSON,飞书在同一次回调响应里替换,与 ASK_TOGGLE / grant
131
+ * card 的同步替换路径一致。onSettle 仍保留作兜底(双重更新同内容,幂等无害)。
132
+ */
133
+ function settledCardResponse(askId, result) {
134
+ const updated = getAskSnapshot(askId);
135
+ if (!updated)
136
+ return undefined;
137
+ return JSON.parse(buildAskCard(updated, result));
138
+ }
91
139
  /**
92
140
  * 构建 ask 卡片 JSON 字符串。
93
141
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ask-card.js","sourceRoot":"","sources":["../../../src/im/lark/ask-card.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-card.js","sourceRoot":"","sources":["../../../src/im/lark/ask-card.ts"],"names":[],"mappings":"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"}
@@ -38,45 +38,4 @@ export declare function shouldReleaseFirstPromptTimeout(state: {
38
38
  /** Absolute hard cap for keeping the first prompt queued. */
39
39
  hardTimeoutMs: number;
40
40
  }): boolean;
41
- /**
42
- * After the ready-gate releases (real SessionStart signal OR the timeout
43
- * fallback), the worker settles for PTY quiescence and then decides whether to
44
- * mark the prompt ready (which flushes for ALL adapters) vs. just calling
45
- * flushPending() (which only flushes for type-ahead adapters). Marking ready is
46
- * correct when ANY of these hold:
47
- * - promptReadyAfterSettle — the real SessionStart/BOTMUX_READY_COMMAND
48
- * signal fired (authoritative: input box exists).
49
- * - promptReadyDetectedDuringSettle — the idle detector fired during the
50
- * settle (a readyPattern/idle proved readiness).
51
- * - readyPatternSeenDuringHold — a readyPattern fired WHILE the gate was
52
- * holding (markPromptReady was blocked by
53
- * readyGate.shouldHold()). The input box
54
- * exists; the gate only deferred delivery.
55
- *
56
- * Pins the Hermes regression: a non-type-ahead adapter that renders its prompt
57
- * (❯) during the hold but never fires the SessionStart signal must be marked
58
- * ready at settle — otherwise settle calls flushPending(), which bails on
59
- * !isPromptReady && !typeAheadAllowed and leaves the first message queued until
60
- * the hard timeout (and, before the hard-timeout fix, forever).
61
- */
62
- export declare function decideSettleMarkReady(state: {
63
- promptReadyAfterSettle: boolean;
64
- promptReadyDetectedDuringSettle: boolean;
65
- readyPatternSeenDuringHold: boolean;
66
- }): boolean;
67
- /**
68
- * At the first-prompt hard timeout the worker has waited the full cap. For
69
- * type-ahead adapters flushPending() drains the queue even while !isPromptReady
70
- * (the TUI parks input in its own queue). For non-type-ahead adapters
71
- * flushPending() bails on !isPromptReady && !typeAheadAllowed, so the worker
72
- * must mark the prompt ready first (markPromptReady() then flushes).
73
- * Returns the action the worker must take:
74
- * - 'flush' — call flushPending() (type-ahead adapters).
75
- * - 'mark-ready' — call markPromptReady() (non-type-ahead adapters).
76
- *
77
- * Pins the regression where non-type-ahead adapters only logged "forcing
78
- * queued message flush" at the hard timeout without actually delivering the
79
- * held first message.
80
- */
81
- export declare function decideHardTimeoutAction(supportsTypeAhead: boolean): 'flush' | 'mark-ready';
82
41
  //# sourceMappingURL=input-gate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-gate.d.ts","sourceRoot":"","sources":["../../src/utils/input-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,sCAAsC;IACtC,aAAa,EAAE,OAAO,CAAC;IACvB,0DAA0D;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,oEAAoE;IACpE,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sFAAsF;IACtF,mBAAmB,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAIV;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,sEAAsE;IACtE,iCAAiC,EAAE,OAAO,CAAC;IAC3C,8EAA8E;IAC9E,eAAe,EAAE,OAAO,CAAC;IACzB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAIV;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,sBAAsB,EAAE,OAAO,CAAC;IAChC,+BAA+B,EAAE,OAAO,CAAC;IACzC,0BAA0B,EAAE,OAAO,CAAC;CACrC,GAAG,OAAO,CAEV;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,iBAAiB,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,CAE1F"}
1
+ {"version":3,"file":"input-gate.d.ts","sourceRoot":"","sources":["../../src/utils/input-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,sCAAsC;IACtC,aAAa,EAAE,OAAO,CAAC;IACvB,0DAA0D;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,oEAAoE;IACpE,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sFAAsF;IACtF,mBAAmB,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAIV;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,sEAAsE;IACtE,iCAAiC,EAAE,OAAO,CAAC;IAC3C,8EAA8E;IAC9E,eAAe,EAAE,OAAO,CAAC;IACzB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAIV"}
@@ -31,45 +31,4 @@ export function shouldReleaseFirstPromptTimeout(state) {
31
31
  return true;
32
32
  return state.elapsedMs >= state.hardTimeoutMs;
33
33
  }
34
- /**
35
- * After the ready-gate releases (real SessionStart signal OR the timeout
36
- * fallback), the worker settles for PTY quiescence and then decides whether to
37
- * mark the prompt ready (which flushes for ALL adapters) vs. just calling
38
- * flushPending() (which only flushes for type-ahead adapters). Marking ready is
39
- * correct when ANY of these hold:
40
- * - promptReadyAfterSettle — the real SessionStart/BOTMUX_READY_COMMAND
41
- * signal fired (authoritative: input box exists).
42
- * - promptReadyDetectedDuringSettle — the idle detector fired during the
43
- * settle (a readyPattern/idle proved readiness).
44
- * - readyPatternSeenDuringHold — a readyPattern fired WHILE the gate was
45
- * holding (markPromptReady was blocked by
46
- * readyGate.shouldHold()). The input box
47
- * exists; the gate only deferred delivery.
48
- *
49
- * Pins the Hermes regression: a non-type-ahead adapter that renders its prompt
50
- * (❯) during the hold but never fires the SessionStart signal must be marked
51
- * ready at settle — otherwise settle calls flushPending(), which bails on
52
- * !isPromptReady && !typeAheadAllowed and leaves the first message queued until
53
- * the hard timeout (and, before the hard-timeout fix, forever).
54
- */
55
- export function decideSettleMarkReady(state) {
56
- return state.promptReadyAfterSettle || state.promptReadyDetectedDuringSettle || state.readyPatternSeenDuringHold;
57
- }
58
- /**
59
- * At the first-prompt hard timeout the worker has waited the full cap. For
60
- * type-ahead adapters flushPending() drains the queue even while !isPromptReady
61
- * (the TUI parks input in its own queue). For non-type-ahead adapters
62
- * flushPending() bails on !isPromptReady && !typeAheadAllowed, so the worker
63
- * must mark the prompt ready first (markPromptReady() then flushes).
64
- * Returns the action the worker must take:
65
- * - 'flush' — call flushPending() (type-ahead adapters).
66
- * - 'mark-ready' — call markPromptReady() (non-type-ahead adapters).
67
- *
68
- * Pins the regression where non-type-ahead adapters only logged "forcing
69
- * queued message flush" at the hard timeout without actually delivering the
70
- * held first message.
71
- */
72
- export function decideHardTimeoutAction(supportsTypeAhead) {
73
- return supportsTypeAhead ? 'flush' : 'mark-ready';
74
- }
75
34
  //# sourceMappingURL=input-gate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-gate.js","sourceRoot":"","sources":["../../src/utils/input-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAAC,KAS9B;IACC,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IACzD,kEAAkE;IAClE,OAAO,KAAK,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAS/C;IACC,IAAI,CAAC,KAAK,CAAC,iCAAiC;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,CAAC,KAAK,CAAC,eAAe;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAIrC;IACC,OAAO,KAAK,CAAC,sBAAsB,IAAI,KAAK,CAAC,+BAA+B,IAAI,KAAK,CAAC,0BAA0B,CAAC;AACnH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,iBAA0B;IAChE,OAAO,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"input-gate.js","sourceRoot":"","sources":["../../src/utils/input-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAAC,KAS9B;IACC,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IACzD,kEAAkE;IAClE,OAAO,KAAK,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAS/C;IACC,IAAI,CAAC,KAAK,CAAC,iCAAiC;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,CAAC,KAAK,CAAC,eAAe;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC;AAChD,CAAC"}
package/dist/worker.js CHANGED
@@ -24,7 +24,7 @@ import { readProcessStartIdentity } from './core/session-marker.js';
24
24
  import { drainTranscript, joinAssistantText, trailingAssistantText, findJsonlContainingFingerprint, findJsonlsContainingExactContent, findLatestJsonl, extractLastAssistantTurn, extractTurnStartText, splitTranscriptEventsByCutoff } from './services/claude-transcript.js';
25
25
  import { BridgeTurnQueue, makeFingerprint, normaliseForFingerprint } from './services/bridge-turn-queue.js';
26
26
  import { shouldSuppressBridgeEmit } from './services/bridge-fallback-gate.js';
27
- import { decideHardTimeoutAction, decideSettleMarkReady, shouldReleaseFirstPromptTimeout, shouldWriteNow } from './utils/input-gate.js';
27
+ import { shouldReleaseFirstPromptTimeout, shouldWriteNow } from './utils/input-gate.js';
28
28
  import { canStartInjectionFlush, shouldDeferUserFlush, shouldFlushInjectionsFirst } from './core/inject-queue-policy.js';
29
29
  import { stripAnsiForLog, tailChars } from './utils/crash-log.js';
30
30
  import { CodexUpdateDialogGuard } from './utils/codex-update-dialog.js';
@@ -814,15 +814,6 @@ let isSettlingFirstFlush = false;
814
814
  * ready yet, or flushPending will be blocked by isSettlingFirstFlush and a
815
815
  * later markPromptReady call would return early with the first prompt stranded. */
816
816
  let promptReadyDetectedDuringSettle = false;
817
- /** While the ready-gate is holding, the IdleDetector may still fire on a real
818
- * readyPattern (e.g. Hermes's ❯) — proving the input box exists — but
819
- * markPromptReady() returns early because the gate is armed. Record that the
820
- * pattern was seen so the gate's timeout-fallback settle can mark the prompt
821
- * ready immediately instead of delivering into a !isPromptReady state that
822
- * flushPending() rejects for non-type-ahead adapters. Without this, a Hermes
823
- * spawn that renders ❯ but never fires BOTMUX_READY_COMMAND waits the full
824
- * hard timeout (and previously never delivered at all). */
825
- let readyPatternSeenDuringHold = false;
826
817
  /** Wait until the PTY has been quiet for READY_FLUSH_SETTLE_MS (Ink render
827
818
  * drained), capped at READY_FLUSH_SETTLE_CAP_MS, then flush the held prompt.
828
819
  * A real SessionStart/BOTMUX_READY_COMMAND signal is itself authoritative
@@ -834,13 +825,8 @@ function settleThenFlush(startedAtMs, promptReadyAfterSettle) {
834
825
  const quietForMs = now - lastPtyOutputAtMs;
835
826
  if (quietForMs >= READY_FLUSH_SETTLE_MS || now - startedAtMs >= READY_FLUSH_SETTLE_CAP_MS) {
836
827
  isSettlingFirstFlush = false;
837
- const shouldMarkPromptReady = decideSettleMarkReady({
838
- promptReadyAfterSettle,
839
- promptReadyDetectedDuringSettle,
840
- readyPatternSeenDuringHold,
841
- });
828
+ const shouldMarkPromptReady = promptReadyAfterSettle || promptReadyDetectedDuringSettle;
842
829
  promptReadyDetectedDuringSettle = false;
843
- readyPatternSeenDuringHold = false;
844
830
  log(`Ready-gate settle done (quiet ${quietForMs}ms); ${shouldMarkPromptReady ? 'marking prompt ready' : 'delivering held first prompt'}`);
845
831
  if (shouldMarkPromptReady) {
846
832
  markPromptReady();
@@ -4475,11 +4461,6 @@ function markPromptReady() {
4475
4461
  // releaseReadyGate() drives flushPending() once the real signal lands, and a
4476
4462
  // later genuine idle then runs this fully. No-op for non-armed gates.
4477
4463
  if (readyGate.shouldHold()) {
4478
- // A real readyPattern fired while the gate was holding — the input box
4479
- // exists. Remember it so the gate's timeout-fallback settle can mark the
4480
- // prompt ready (see settleThenFlush) instead of letting flushPending()
4481
- // reject the held message for non-type-ahead adapters.
4482
- readyPatternSeenDuringHold = true;
4483
4464
  log('Idle detected but holding for SessionStart ready signal (startup selector guard)');
4484
4465
  return;
4485
4466
  }
@@ -7021,7 +7002,6 @@ async function spawnCli(cfg, opts = {}) {
7021
7002
  }
7022
7003
  isSettlingFirstFlush = false;
7023
7004
  promptReadyDetectedDuringSettle = false;
7024
- readyPatternSeenDuringHold = false;
7025
7005
  // Reset quiescence baseline so the settle measures silence from THIS spawn.
7026
7006
  lastPtyOutputAtMs = Date.now();
7027
7007
  const readyHookAvailable = effectiveReadyHookInstall
@@ -7247,23 +7227,8 @@ async function spawnCli(cfg, opts = {}) {
7247
7227
  // invoking markPromptReady() would claim the CLI is idle while it's still
7248
7228
  // mid-boot, so flushPending() alone is safer — it respects typeAheadAllowed
7249
7229
  // and drains pendingMessages now.
7250
- //
7251
- // Non-type-ahead adapters (Hermes etc.) flushPending() rejects the held
7252
- // message while isPromptReady is false — it bails on
7253
- // `!isPromptReady && !typeAheadAllowed`. The hard cap means we've waited
7254
- // long enough. By now the ready gate's 45s fallback has already released
7255
- // the gate (READY_SIGNAL_TIMEOUT_MS < this 90s hard cap) and the post-
7256
- // release settle has drained, so markPromptReady() proceeds: it sets
7257
- // isPromptReady and drains the held first prompt. Without this, a spawn
7258
- // that never fires the ready signal (and whose readyPattern the idle
7259
- // detector never matched) would hold the first queued message forever —
7260
- // the previous code only logged "forcing flush" without actually flushing
7261
- // for non-type-ahead adapters.
7262
- if (decideHardTimeoutAction(cliAdapter?.supportsTypeAhead === true) === 'flush') {
7230
+ if (cliAdapter?.supportsTypeAhead)
7263
7231
  flushPending();
7264
- return;
7265
- }
7266
- markPromptReady();
7267
7232
  };
7268
7233
  setTimeout(() => releaseFirstPromptTimeout(FIRST_PROMPT_TIMEOUT_MS, false), FIRST_PROMPT_TIMEOUT_MS);
7269
7234
  // Riff (and other remote HTTP backends) have no local boot process — the
@@ -7294,7 +7259,6 @@ function killCli(opts = {}) {
7294
7259
  }
7295
7260
  isSettlingFirstFlush = false;
7296
7261
  promptReadyDetectedDuringSettle = false;
7297
- readyPatternSeenDuringHold = false;
7298
7262
  stopScreenAnalyzer();
7299
7263
  stopScreenUpdates();
7300
7264
  backend?.kill();