@ccpocket/bridge 1.86.2 → 1.88.0
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/codex-process.d.ts +11 -0
- package/dist/codex-process.js +99 -1
- package/dist/codex-process.js.map +1 -1
- package/dist/codex-recovery.d.ts +35 -0
- package/dist/codex-recovery.js +121 -0
- package/dist/codex-recovery.js.map +1 -0
- package/dist/parser.d.ts +25 -0
- package/dist/parser.js +20 -0
- package/dist/parser.js.map +1 -1
- package/dist/performance-mode.d.ts +4 -0
- package/dist/performance-mode.js +58 -0
- package/dist/performance-mode.js.map +1 -0
- package/dist/session.js +3 -1
- package/dist/session.js.map +1 -1
- package/dist/sessions-index.js +138 -30
- package/dist/sessions-index.js.map +1 -1
- package/dist/websocket.d.ts +3 -0
- package/dist/websocket.js +103 -18
- package/dist/websocket.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** Session-local recovery; never persists or grants permission to resume a goal. */
|
|
2
|
+
export interface CodexRecoveryState {
|
|
3
|
+
enabled: boolean;
|
|
4
|
+
phase: "off" | "armed" | "waiting" | "exhausted" | "blocked";
|
|
5
|
+
attempts: number;
|
|
6
|
+
maxAttempts: number;
|
|
7
|
+
retryAt: number | null;
|
|
8
|
+
reason: string | null;
|
|
9
|
+
}
|
|
10
|
+
export declare function rateLimitFailure(error: unknown): {
|
|
11
|
+
reason: string;
|
|
12
|
+
retryAt?: number;
|
|
13
|
+
} | null;
|
|
14
|
+
export declare class CodexRecovery<T> {
|
|
15
|
+
private readonly hooks;
|
|
16
|
+
private value;
|
|
17
|
+
private timer?;
|
|
18
|
+
private generation;
|
|
19
|
+
constructor(hooks: {
|
|
20
|
+
changed: (state: CodexRecoveryState) => void;
|
|
21
|
+
canResume: () => Promise<boolean>;
|
|
22
|
+
dispatch: (input: T) => boolean;
|
|
23
|
+
resetAt?: () => Promise<number | undefined>;
|
|
24
|
+
});
|
|
25
|
+
get state(): CodexRecoveryState;
|
|
26
|
+
get version(): number;
|
|
27
|
+
private publish;
|
|
28
|
+
cancel(): void;
|
|
29
|
+
setEnabled(enabled: boolean): void;
|
|
30
|
+
manualInput(): void;
|
|
31
|
+
schedule(error: unknown, input: T): boolean;
|
|
32
|
+
private prepare;
|
|
33
|
+
private arm;
|
|
34
|
+
private fire;
|
|
35
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
export function rateLimitFailure(error) {
|
|
2
|
+
let matched = false;
|
|
3
|
+
let upstreamRetry = false;
|
|
4
|
+
let retryAt;
|
|
5
|
+
const messages = [];
|
|
6
|
+
const visit = (value, depth) => {
|
|
7
|
+
if (!value || typeof value !== "object" || depth > 4)
|
|
8
|
+
return;
|
|
9
|
+
const record = value;
|
|
10
|
+
if (record.willRetry === true)
|
|
11
|
+
upstreamRetry = true;
|
|
12
|
+
if (typeof record.message === "string") {
|
|
13
|
+
messages.push(record.message);
|
|
14
|
+
if (/\b(?:usage[ _-]?limit|rate[ _-]?limit|too many requests)\b/i.test(record.message) || /\b(?:HTTP|status(?: code)?)\s*[:=]?\s*429\b/i.test(record.message))
|
|
15
|
+
matched = true;
|
|
16
|
+
}
|
|
17
|
+
for (const key of ["code", "statusCode", "httpStatusCode", "type", "codexErrorInfo"]) {
|
|
18
|
+
const v = record[key];
|
|
19
|
+
if (v === 429 || v === "429" || v === "usageLimitExceeded" || v === "rateLimitExceeded" || v === "usage_limit" || v === "rate_limit")
|
|
20
|
+
matched = true;
|
|
21
|
+
}
|
|
22
|
+
for (const key of ["retryAt", "resetsAt", "reset_at", "retry_at"]) {
|
|
23
|
+
const raw = record[key];
|
|
24
|
+
const timestamp = typeof raw === "number" ? (raw < 1e12 ? raw * 1000 : raw) : typeof raw === "string" ? Date.parse(raw) : NaN;
|
|
25
|
+
if (Number.isFinite(timestamp) && timestamp > Date.now())
|
|
26
|
+
retryAt = Math.max(retryAt ?? 0, timestamp);
|
|
27
|
+
}
|
|
28
|
+
if (typeof record.retryAfterSeconds === "number" && Number.isFinite(record.retryAfterSeconds) && record.retryAfterSeconds > 0) {
|
|
29
|
+
retryAt = Math.max(retryAt ?? 0, Date.now() + record.retryAfterSeconds * 1000);
|
|
30
|
+
}
|
|
31
|
+
for (const key of ["error", "data", "codexErrorInfo", "httpConnectionFailed", "responseStreamDisconnected"])
|
|
32
|
+
visit(record[key], depth + 1);
|
|
33
|
+
};
|
|
34
|
+
visit(error, 0);
|
|
35
|
+
return matched && !upstreamRetry ? { reason: (messages[0] ?? "Codex usage limit").slice(0, 600), retryAt } : null;
|
|
36
|
+
}
|
|
37
|
+
export class CodexRecovery {
|
|
38
|
+
hooks;
|
|
39
|
+
value = { enabled: false, phase: "off", attempts: 0, maxAttempts: 5, retryAt: null, reason: null };
|
|
40
|
+
timer;
|
|
41
|
+
generation = 0;
|
|
42
|
+
constructor(hooks) {
|
|
43
|
+
this.hooks = hooks;
|
|
44
|
+
}
|
|
45
|
+
get state() { return { ...this.value }; }
|
|
46
|
+
get version() { return this.generation; }
|
|
47
|
+
publish(patch) {
|
|
48
|
+
if (Object.entries(patch).every(([key, value]) => this.value[key] === value))
|
|
49
|
+
return;
|
|
50
|
+
this.value = { ...this.value, ...patch };
|
|
51
|
+
this.hooks.changed(this.state);
|
|
52
|
+
}
|
|
53
|
+
cancel() {
|
|
54
|
+
this.generation++;
|
|
55
|
+
clearTimeout(this.timer);
|
|
56
|
+
this.timer = undefined;
|
|
57
|
+
this.publish({ phase: this.value.enabled ? "armed" : "off", retryAt: null, reason: null });
|
|
58
|
+
}
|
|
59
|
+
setEnabled(enabled) {
|
|
60
|
+
this.cancel();
|
|
61
|
+
this.publish({ enabled, phase: enabled ? "armed" : "off", attempts: 0 });
|
|
62
|
+
}
|
|
63
|
+
manualInput() {
|
|
64
|
+
this.cancel();
|
|
65
|
+
this.publish({ attempts: 0 });
|
|
66
|
+
}
|
|
67
|
+
schedule(error, input) {
|
|
68
|
+
const failure = rateLimitFailure(error);
|
|
69
|
+
if (!this.value.enabled || !failure || this.value.phase === "waiting")
|
|
70
|
+
return false;
|
|
71
|
+
if (this.value.attempts >= this.value.maxAttempts) {
|
|
72
|
+
this.publish({ phase: "exhausted", retryAt: null, reason: failure.reason });
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
const generation = ++this.generation;
|
|
76
|
+
const fallback = Date.now() + Math.min(300_000, 10_000 * 2 ** this.value.attempts);
|
|
77
|
+
const retryAt = Math.max(fallback, failure.retryAt ?? 0);
|
|
78
|
+
this.publish({ phase: "waiting", reason: failure.reason, retryAt });
|
|
79
|
+
void this.prepare(generation, retryAt, input);
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
async prepare(generation, retryAt, input) {
|
|
83
|
+
try {
|
|
84
|
+
retryAt = Math.max(retryAt, (await this.hooks.resetAt?.()) ?? 0);
|
|
85
|
+
}
|
|
86
|
+
catch { /* Fall back to the error/reset policy. */ }
|
|
87
|
+
if (generation !== this.generation)
|
|
88
|
+
return;
|
|
89
|
+
this.publish({ retryAt });
|
|
90
|
+
this.arm(generation, retryAt, input);
|
|
91
|
+
}
|
|
92
|
+
arm(generation, retryAt, input) {
|
|
93
|
+
// Node timers overflow above ~24.8 days. Long reset windows must not fire early.
|
|
94
|
+
this.timer = setTimeout(() => {
|
|
95
|
+
this.timer = undefined;
|
|
96
|
+
if (generation !== this.generation)
|
|
97
|
+
return;
|
|
98
|
+
if (Date.now() < retryAt) {
|
|
99
|
+
this.arm(generation, retryAt, input);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
void this.fire(generation, input);
|
|
103
|
+
}, Math.min(2_147_483_647, Math.max(0, retryAt - Date.now())));
|
|
104
|
+
this.timer.unref?.();
|
|
105
|
+
}
|
|
106
|
+
async fire(generation, input) {
|
|
107
|
+
let allowed = false;
|
|
108
|
+
try {
|
|
109
|
+
allowed = await this.hooks.canResume();
|
|
110
|
+
}
|
|
111
|
+
catch { /* Unknown goal/transport state must not execute work. */ }
|
|
112
|
+
if (generation !== this.generation || !this.value.enabled)
|
|
113
|
+
return;
|
|
114
|
+
if (!allowed || !this.hooks.dispatch(input)) {
|
|
115
|
+
this.publish({ phase: "blocked", retryAt: null, reason: "Automatic recovery stopped: session, goal, or approval state requires attention." });
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
this.publish({ phase: "armed", attempts: this.value.attempts + 1, retryAt: null });
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=codex-recovery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-recovery.js","sourceRoot":"","sources":["../src/codex-recovery.ts"],"names":[],"mappings":"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"}
|
package/dist/parser.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CodexRecoveryState } from "./codex-recovery.js";
|
|
1
2
|
import type { GoalNotification } from "./goal-notifications.js";
|
|
2
3
|
import type { GalleryImageInfo } from "./gallery-store.js";
|
|
3
4
|
import type { ImageRef } from "./image-store.js";
|
|
@@ -65,6 +66,9 @@ export type ClientMessage = {
|
|
|
65
66
|
protocolVersion?: number;
|
|
66
67
|
minimumProtocolVersion?: number;
|
|
67
68
|
supportedServerMessages?: string[];
|
|
69
|
+
deliveryRevision?: number;
|
|
70
|
+
performanceMode?: boolean;
|
|
71
|
+
sessionPerformanceModes?: Record<string, boolean>;
|
|
68
72
|
} | {
|
|
69
73
|
type: "start";
|
|
70
74
|
projectPath: string;
|
|
@@ -173,6 +177,13 @@ export type ClientMessage = {
|
|
|
173
177
|
type: "set_codex_speed";
|
|
174
178
|
serviceTier: string;
|
|
175
179
|
sessionId?: string;
|
|
180
|
+
} | {
|
|
181
|
+
type: "set_codex_recovery";
|
|
182
|
+
sessionId: string;
|
|
183
|
+
enabled: boolean;
|
|
184
|
+
} | {
|
|
185
|
+
type: "cancel_codex_recovery";
|
|
186
|
+
sessionId: string;
|
|
176
187
|
} | {
|
|
177
188
|
type: "get_goal";
|
|
178
189
|
sessionId: string;
|
|
@@ -728,6 +739,14 @@ export type ServerMessage = {
|
|
|
728
739
|
type: "session_context";
|
|
729
740
|
sessionId: string;
|
|
730
741
|
context: Record<string, unknown>;
|
|
742
|
+
} | {
|
|
743
|
+
type: "session_activity";
|
|
744
|
+
sessionId?: string;
|
|
745
|
+
at: string;
|
|
746
|
+
historySeq?: number;
|
|
747
|
+
} | {
|
|
748
|
+
type: "performance_mode_state";
|
|
749
|
+
deliveryRevision: number;
|
|
731
750
|
} | {
|
|
732
751
|
type: "status";
|
|
733
752
|
status: ProcessStatus;
|
|
@@ -736,6 +755,7 @@ export type ServerMessage = {
|
|
|
736
755
|
messages: ServerMessage[];
|
|
737
756
|
} | {
|
|
738
757
|
type: "history_delta";
|
|
758
|
+
filtered?: boolean;
|
|
739
759
|
sessionId?: string;
|
|
740
760
|
fromSeq: number;
|
|
741
761
|
toSeq: number;
|
|
@@ -746,6 +766,7 @@ export type ServerMessage = {
|
|
|
746
766
|
status?: ProcessStatus;
|
|
747
767
|
} | {
|
|
748
768
|
type: "history_snapshot";
|
|
769
|
+
filtered?: boolean;
|
|
749
770
|
sessionId?: string;
|
|
750
771
|
fromSeq: number;
|
|
751
772
|
toSeq: number;
|
|
@@ -760,6 +781,10 @@ export type ServerMessage = {
|
|
|
760
781
|
sessionId?: string;
|
|
761
782
|
limit: number;
|
|
762
783
|
items: QueuedInputItem[];
|
|
784
|
+
} | {
|
|
785
|
+
type: "codex_recovery_state";
|
|
786
|
+
sessionId?: string;
|
|
787
|
+
recovery: CodexRecoveryState;
|
|
763
788
|
} | {
|
|
764
789
|
type: "goal_state";
|
|
765
790
|
notification?: GoalNotification;
|
package/dist/parser.js
CHANGED
|
@@ -151,6 +151,16 @@ export function parseClientMessage(data) {
|
|
|
151
151
|
};
|
|
152
152
|
switch (msg.type) {
|
|
153
153
|
case "client_capabilities":
|
|
154
|
+
if (msg.deliveryRevision !== undefined &&
|
|
155
|
+
(!Number.isSafeInteger(msg.deliveryRevision) || Number(msg.deliveryRevision) < 0))
|
|
156
|
+
return null;
|
|
157
|
+
if (msg.performanceMode !== undefined && typeof msg.performanceMode !== "boolean")
|
|
158
|
+
return null;
|
|
159
|
+
if (msg.sessionPerformanceModes !== undefined && (msg.sessionPerformanceModes === null ||
|
|
160
|
+
typeof msg.sessionPerformanceModes !== "object" ||
|
|
161
|
+
Array.isArray(msg.sessionPerformanceModes) ||
|
|
162
|
+
Object.values(msg.sessionPerformanceModes).some((value) => typeof value !== "boolean")))
|
|
163
|
+
return null;
|
|
154
164
|
if (msg.appVersion !== undefined && typeof msg.appVersion !== "string")
|
|
155
165
|
return null;
|
|
156
166
|
if (msg.protocolVersion !== undefined &&
|
|
@@ -294,6 +304,16 @@ export function parseClientMessage(data) {
|
|
|
294
304
|
if (msg.sessionId !== undefined && typeof msg.sessionId !== "string")
|
|
295
305
|
return null;
|
|
296
306
|
break;
|
|
307
|
+
case "set_codex_recovery":
|
|
308
|
+
if (typeof msg.enabled !== "boolean")
|
|
309
|
+
return null;
|
|
310
|
+
if (typeof msg.sessionId !== "string" || !msg.sessionId)
|
|
311
|
+
return null;
|
|
312
|
+
break;
|
|
313
|
+
case "cancel_codex_recovery":
|
|
314
|
+
if (typeof msg.sessionId !== "string" || !msg.sessionId)
|
|
315
|
+
return null;
|
|
316
|
+
break;
|
|
297
317
|
case "get_goal":
|
|
298
318
|
if (msg.background !== undefined && typeof msg.background !== "boolean")
|
|
299
319
|
return null;
|
package/dist/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
const record = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
|
|
2
|
+
/** Delivery projection only: never mutate the agent's canonical history. */
|
|
3
|
+
export function performanceMessage(msg) {
|
|
4
|
+
if (msg.type === "thinking_delta" || msg.type === "tool_use_summary")
|
|
5
|
+
return null;
|
|
6
|
+
if (msg.type === "tool_result" || msg.role === "tool_result") {
|
|
7
|
+
if (msg.toolName === "ImageGeneration") {
|
|
8
|
+
const { rawContentBlocks: _raw, ...result } = msg;
|
|
9
|
+
return result;
|
|
10
|
+
}
|
|
11
|
+
// Completion IDs resolve questions/approvals, including answers from other clients.
|
|
12
|
+
return {
|
|
13
|
+
...(msg.role === "tool_result" ? { role: msg.role } : { type: msg.type }),
|
|
14
|
+
toolUseId: msg.toolUseId, content: "",
|
|
15
|
+
...(msg.userMessageUuid != null ? { userMessageUuid: msg.userMessageUuid } : {}),
|
|
16
|
+
...(msg.permissionOutcome != null ? { permissionOutcome: msg.permissionOutcome } : {}),
|
|
17
|
+
...(msg.sessionId != null ? { sessionId: msg.sessionId } : {}),
|
|
18
|
+
...(msg.historySeq != null ? { historySeq: msg.historySeq } : {}),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
if (msg.type === "assistant" && record(msg.message)) {
|
|
22
|
+
const message = performanceMessage({ ...msg.message, role: "assistant" });
|
|
23
|
+
return message ? { ...msg, message } : null;
|
|
24
|
+
}
|
|
25
|
+
if (msg.role === "assistant" && Array.isArray(msg.content)) {
|
|
26
|
+
const content = msg.content.filter((part) => {
|
|
27
|
+
if (!record(part))
|
|
28
|
+
return false;
|
|
29
|
+
if (part.type === "text")
|
|
30
|
+
return typeof part.text === "string" && part.text.trim() !== "";
|
|
31
|
+
if (part.type !== "tool_use")
|
|
32
|
+
return false;
|
|
33
|
+
if (part.name === "ExitPlanMode" || part.name === "AskUserQuestion")
|
|
34
|
+
return true;
|
|
35
|
+
// The mobile approval sheet derives plan text from these writes.
|
|
36
|
+
return part.name === "Write" && record(part.input) &&
|
|
37
|
+
typeof part.input.file_path === "string" &&
|
|
38
|
+
part.input.file_path.replaceAll("\\", "/").includes("/.claude/plans/");
|
|
39
|
+
});
|
|
40
|
+
return content.length ? { ...msg, content } : null;
|
|
41
|
+
}
|
|
42
|
+
if ((msg.type === "history" || msg.type === "past_history") && Array.isArray(msg.messages)) {
|
|
43
|
+
return { ...msg, messages: msg.messages.flatMap((item) => {
|
|
44
|
+
const projected = record(item) ? performanceMessage(item) : null;
|
|
45
|
+
return projected ? [projected] : [];
|
|
46
|
+
}) };
|
|
47
|
+
}
|
|
48
|
+
if ((msg.type === "history_delta" || msg.type === "history_snapshot") && Array.isArray(msg.messages)) {
|
|
49
|
+
return { ...msg, filtered: true, messages: msg.messages.flatMap((entry) => {
|
|
50
|
+
if (!record(entry) || !record(entry.message))
|
|
51
|
+
return [];
|
|
52
|
+
const message = performanceMessage(entry.message);
|
|
53
|
+
return message ? [{ ...entry, message }] : [];
|
|
54
|
+
}) };
|
|
55
|
+
}
|
|
56
|
+
return msg;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=performance-mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performance-mode.js","sourceRoot":"","sources":["../src/performance-mode.ts"],"names":[],"mappings":"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"}
|
package/dist/session.js
CHANGED
|
@@ -987,6 +987,7 @@ export class SessionManager {
|
|
|
987
987
|
return false;
|
|
988
988
|
if (session.codexQueuedInput)
|
|
989
989
|
return false;
|
|
990
|
+
session.process.noteManualInput();
|
|
990
991
|
session.codexQueuedInput = input;
|
|
991
992
|
session.lastActivityAt = new Date();
|
|
992
993
|
this.broadcastCodexQueue(session);
|
|
@@ -1345,7 +1346,8 @@ export class SessionManager {
|
|
|
1345
1346
|
}
|
|
1346
1347
|
evictStaleIdleSessions() {
|
|
1347
1348
|
const staleIdleSessions = Array.from(this.sessions.values())
|
|
1348
|
-
.filter((session) => session.status === "idle"
|
|
1349
|
+
.filter((session) => session.status === "idle" &&
|
|
1350
|
+
!(session.provider === "codex" && session.process.getRecoveryState().phase === "waiting"))
|
|
1349
1351
|
.sort((left, right) => left.lastActivityAt.getTime() - right.lastActivityAt.getTime())
|
|
1350
1352
|
.slice(0, Math.max(0, this.idleSessionCount() - MAX_IDLE_SESSIONS));
|
|
1351
1353
|
for (const session of staleIdleSessions) {
|