@adhdev/daemon-core 0.9.76-rc.42 → 0.9.76-rc.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +19 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +19 -4
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
- package/src/cli-adapters/provider-cli-adapter.ts +15 -1
- package/src/commands/chat-commands.ts +18 -3
package/dist/index.mjs
CHANGED
|
@@ -3333,7 +3333,14 @@ ${lastSnapshot}`;
|
|
|
3333
3333
|
})() : null;
|
|
3334
3334
|
const parsedSessionStatus = typeof parsedStatusBeforeSend?.status === "string" ? String(parsedStatusBeforeSend.status) : "";
|
|
3335
3335
|
if (!allowInputDuringGeneration && (parsedSessionStatus === "generating" || parsedSessionStatus === "long_generating")) {
|
|
3336
|
-
|
|
3336
|
+
const parsedModal = parsedStatusBeforeSend?.activeModal ?? parsedStatusBeforeSend?.modal ?? null;
|
|
3337
|
+
const parsedHasActionableModal = Boolean(
|
|
3338
|
+
parsedModal && Array.isArray(parsedModal.buttons) && parsedModal.buttons.some((candidate) => typeof candidate === "string" && candidate.trim())
|
|
3339
|
+
);
|
|
3340
|
+
const terminalLooksIdle = this.currentStatus === "idle" && this.runDetectStatus(this.recentOutputBuffer) === "idle" && !this.isWaitingForResponse && !this.currentTurnScope && !this.hasActionableApproval() && !parsedHasActionableModal;
|
|
3341
|
+
if (!terminalLooksIdle) {
|
|
3342
|
+
throw new Error(`${this.cliName} is still processing the previous prompt`);
|
|
3343
|
+
}
|
|
3337
3344
|
}
|
|
3338
3345
|
if (this.isWaitingForResponse && !allowInputDuringGeneration) {
|
|
3339
3346
|
if (!this.clearStaleIdleResponseGuard("send_message_guard")) {
|
|
@@ -13121,9 +13128,17 @@ async function handleResolveAction(h, args) {
|
|
|
13121
13128
|
const targetState = targetInstance?.getState?.();
|
|
13122
13129
|
const surfacedModal = targetState?.activeChat?.activeModal && Array.isArray(targetState.activeChat.activeModal.buttons) && targetState.activeChat.activeModal.buttons.some((candidate) => typeof candidate === "string" && candidate.trim()) ? targetState.activeChat.activeModal : null;
|
|
13123
13130
|
const statusModal = status?.activeModal && Array.isArray(status.activeModal.buttons) && status.activeModal.buttons.some((candidate) => typeof candidate === "string" && candidate.trim()) ? status.activeModal : null;
|
|
13124
|
-
const
|
|
13125
|
-
|
|
13126
|
-
|
|
13131
|
+
const parsedStatus = !statusModal && !surfacedModal && typeof adapter.getScriptParsedStatus === "function" ? (() => {
|
|
13132
|
+
try {
|
|
13133
|
+
return parseMaybeJson(adapter.getScriptParsedStatus());
|
|
13134
|
+
} catch {
|
|
13135
|
+
return null;
|
|
13136
|
+
}
|
|
13137
|
+
})() : null;
|
|
13138
|
+
const parsedModal = parsedStatus?.status === "waiting_approval" && parsedStatus?.activeModal && Array.isArray(parsedStatus.activeModal.buttons) && parsedStatus.activeModal.buttons.some((candidate) => typeof candidate === "string" && candidate.trim()) ? parsedStatus.activeModal : null;
|
|
13139
|
+
const effectiveModal = statusModal || surfacedModal || parsedModal;
|
|
13140
|
+
const effectiveStatus = status?.status === "waiting_approval" || targetState?.activeChat?.status === "waiting_approval" || parsedStatus?.status === "waiting_approval" ? "waiting_approval" : status?.status;
|
|
13141
|
+
LOG.info("Command", `[resolveAction] CLI PTY gate target=${String(args?.targetSessionId || "")} rawStatus=${String(status?.status || "")} effectiveStatus=${String(effectiveStatus || "")} statusModal=${statusModal ? "yes" : "no"} surfacedModal=${surfacedModal ? "yes" : "no"} parsedModal=${parsedModal ? "yes" : "no"} instance=${targetInstance ? "yes" : "no"}`);
|
|
13127
13142
|
if (!effectiveModal) {
|
|
13128
13143
|
return { success: false, error: "Not in approval state" };
|
|
13129
13144
|
}
|