agent-embassy 1.5.0 → 1.6.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/CHANGELOG.md +18 -1
- package/CONTRIBUTING.md +11 -3
- package/README.md +4 -2
- package/README.zh-CN.md +4 -2
- package/SECURITY.md +30 -9
- package/dist/src/gateway/cli.d.ts +1 -1
- package/dist/src/gateway/cli.js +4 -1
- package/dist/src/gateway/cli.js.map +1 -1
- package/dist/src/gateway/codex-app-server.d.ts +42 -1
- package/dist/src/gateway/codex-app-server.js +536 -2
- package/dist/src/gateway/codex-app-server.js.map +1 -1
- package/dist/src/gateway/compatibility.d.ts +31 -3
- package/dist/src/gateway/compatibility.js +100 -29
- package/dist/src/gateway/compatibility.js.map +1 -1
- package/dist/src/gateway/dashboard-copy.d.ts +1 -1
- package/dist/src/gateway/dashboard-copy.en.d.ts +6 -0
- package/dist/src/gateway/dashboard-copy.en.js +6 -0
- package/dist/src/gateway/dashboard-copy.en.js.map +1 -1
- package/dist/src/gateway/dashboard-copy.js +6 -0
- package/dist/src/gateway/dashboard-copy.js.map +1 -1
- package/dist/src/gateway/dashboard-copy.zh-CN.d.ts +6 -0
- package/dist/src/gateway/dashboard-copy.zh-CN.js +6 -0
- package/dist/src/gateway/dashboard-copy.zh-CN.js.map +1 -1
- package/dist/src/gateway/dashboard-model.d.ts +27 -7
- package/dist/src/gateway/dashboard-model.js +78 -25
- package/dist/src/gateway/dashboard-model.js.map +1 -1
- package/dist/src/gateway/dashboard.d.ts +3 -0
- package/dist/src/gateway/dashboard.js +15 -3
- package/dist/src/gateway/dashboard.js.map +1 -1
- package/dist/src/gateway/deepseek-detect.d.ts +13 -0
- package/dist/src/gateway/deepseek-detect.js +125 -0
- package/dist/src/gateway/deepseek-detect.js.map +1 -0
- package/dist/src/gateway/live-dashboard-app/app.js +12 -11
- package/dist/src/gateway/providers.d.ts +12 -2
- package/dist/src/gateway/providers.js +326 -6
- package/dist/src/gateway/providers.js.map +1 -1
- package/dist/src/gateway/server.d.ts +2 -0
- package/dist/src/gateway/server.js +6 -0
- package/dist/src/gateway/server.js.map +1 -1
- package/dist/src/gateway/service.d.ts +21 -2
- package/dist/src/gateway/service.js +116 -37
- package/dist/src/gateway/service.js.map +1 -1
- package/dist/src/gateway/types.d.ts +4 -3
- package/dist/src/gateway/types.js +17 -14
- package/dist/src/gateway/types.js.map +1 -1
- package/docs/CONFIGURATION.md +2 -2
- package/docs/CONFIGURATION.zh-CN.md +2 -2
- package/docs/DASHBOARD.md +10 -4
- package/docs/DASHBOARD.zh-CN.md +1 -1
- package/docs/GATEWAY-ARCHITECTURE.md +40 -14
- package/package.json +1 -1
- package/skills/embassy-peer/SKILL.md +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/gateway/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/gateway/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { GatewayConfig } from "./config.js";
|
|
2
|
-
import { type CompatibilityAttestation, type CompatibilityProbeResult, type CompatibilitySurfaceObservation } from "./compatibility.js";
|
|
2
|
+
import { type CompatibilityAttestation, type CompatibilityProbeResult, type CompatibilitySurfaceDefinition, type CompatibilitySurfaceObserver, type CompatibilitySurfaceObservation } from "./compatibility.js";
|
|
3
3
|
import { type GatewayControlHandlers, type GatewaySnapshotObservation } from "./control.js";
|
|
4
4
|
import { publishGatewayDashboard } from "./dashboard.js";
|
|
5
|
+
import type { CodexWriteCompatibilityProbeResult } from "./codex-app-server.js";
|
|
5
6
|
import { GatewayStore } from "./store.js";
|
|
6
7
|
import { type CompatibilityState, type GatewayPublicSnapshot, type PrivateEndpointIdentity, type PrivateRouteBinding, type RouteState } from "./types.js";
|
|
7
8
|
export type GatewayAdapterRouteState = Extract<RouteState, "idle" | "busy" | "awaiting_approval">;
|
|
@@ -133,6 +134,11 @@ export type GatewayAdapterDispatchInput = {
|
|
|
133
134
|
/** Older accepted rows observed when this exact STEER left the queue. */
|
|
134
135
|
queuedAhead?: number;
|
|
135
136
|
};
|
|
137
|
+
export type GatewayCompatibilityProbeContext = Readonly<{
|
|
138
|
+
stateRoot: string;
|
|
139
|
+
forbiddenCodexThreadIds: readonly string[];
|
|
140
|
+
}>;
|
|
141
|
+
export type GatewayWriteCompatibilityProbeObservation = Readonly<CodexWriteCompatibilityProbeResult>;
|
|
136
142
|
/**
|
|
137
143
|
* Narrow provider boundary. Production adapters wrap ClaudePeerAdapter or one
|
|
138
144
|
* exact CodexAppServerConnector; tests use in-memory fakes. Implementations
|
|
@@ -144,10 +150,16 @@ export interface GatewayProviderAdapter {
|
|
|
144
150
|
readonly protocolVersion: string;
|
|
145
151
|
/** Version identity is cheap; bounded probes run fresh on every startup. */
|
|
146
152
|
compatibilitySurface?(): CompatibilitySurfaceObservation;
|
|
147
|
-
runCompatibilityProbes?(): Promise<readonly CompatibilityProbeResult[]>;
|
|
153
|
+
runCompatibilityProbes?(context?: GatewayCompatibilityProbeContext): Promise<readonly CompatibilityProbeResult[]>;
|
|
154
|
+
/** Process-local write-probe cost/failure evidence; never persisted or projected. */
|
|
155
|
+
latestWriteCompatibilityProbeObservation?(endpointGeneration: string): GatewayWriteCompatibilityProbeObservation | undefined;
|
|
148
156
|
/** Latest already-read Claude registry evidence; this accessor performs no I/O. */
|
|
149
157
|
latestRegistryObservation?(): GatewayAdapterRegistryObservation | undefined;
|
|
150
158
|
acceptCompatibilityAttestation(attestation: CompatibilityAttestation): void;
|
|
159
|
+
/** Releases one selector claim after controller-side activation fails. */
|
|
160
|
+
releaseEndpointRefreshSelectorClaim?(endpointGeneration: string): void;
|
|
161
|
+
/** Re-publishes pending transition evidence on one observed recovery edge. */
|
|
162
|
+
rearmEndpointRefreshActivation?(endpointGeneration: string): void;
|
|
151
163
|
initialize(callbacks: GatewayAdapterCallbacks): Promise<GatewayAdapterStart>;
|
|
152
164
|
discoverClaudePeers?(): Promise<GatewayAdapterDiscoverySnapshot>;
|
|
153
165
|
selectRoute(input: {
|
|
@@ -258,11 +270,17 @@ export type GatewayServiceOptions = {
|
|
|
258
270
|
timers?: GatewayServiceTimers;
|
|
259
271
|
/** Test seam for opaque listener generations; production remains random. */
|
|
260
272
|
successionGeneration?: () => string;
|
|
273
|
+
/** Test-only surface inventory; production uses the declared registry. */
|
|
274
|
+
compatibilitySurfaceDefinitions?: readonly CompatibilitySurfaceDefinition[];
|
|
275
|
+
/** Read-only surfaces that are deliberately not routing providers. */
|
|
276
|
+
compatibilityObservers?: readonly CompatibilitySurfaceObserver[];
|
|
261
277
|
};
|
|
262
278
|
export declare class GatewayService {
|
|
263
279
|
readonly config: GatewayConfig;
|
|
264
280
|
readonly store: GatewayStore;
|
|
265
281
|
private readonly adapters;
|
|
282
|
+
private readonly compatibilityObservers;
|
|
283
|
+
private readonly compatibilitySurfaceDefinitions;
|
|
266
284
|
private readonly publishDashboard;
|
|
267
285
|
private readonly now;
|
|
268
286
|
private readonly timers;
|
|
@@ -468,6 +486,7 @@ export declare class GatewayService {
|
|
|
468
486
|
private selectedClaudeRoute;
|
|
469
487
|
private registerOrRebind;
|
|
470
488
|
private rememberBinding;
|
|
489
|
+
private reanchorQueuedMessageContexts;
|
|
471
490
|
private forgetBinding;
|
|
472
491
|
private verifyCodex;
|
|
473
492
|
private verifyClaude;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createHash, randomBytes } from "node:crypto";
|
|
2
2
|
import { BridgeError } from "../errors.js";
|
|
3
3
|
import { KeyedMutex } from "../mutex.js";
|
|
4
|
-
import { certifiedCompatibilityVersions,
|
|
4
|
+
import { certifiedCompatibilityVersions, compatibilitySurfaceDefinitions, evaluateCompatibilityAttestation, isCompatibilityAttestation, } from "./compatibility.js";
|
|
5
5
|
import { createGatewayConversationId, isGatewaySnapshot, startGatewayControlServer, } from "./control.js";
|
|
6
6
|
import { publishGatewayDashboard } from "./dashboard.js";
|
|
7
7
|
import { createDeliveryMachine, isTerminalDeliveryMachine, projectDelivery, projectDeliveryWakeups, transitionDelivery, } from "./delivery-machine.js";
|
|
@@ -149,6 +149,8 @@ export class GatewayService {
|
|
|
149
149
|
config;
|
|
150
150
|
store;
|
|
151
151
|
adapters;
|
|
152
|
+
compatibilityObservers;
|
|
153
|
+
compatibilitySurfaceDefinitions;
|
|
152
154
|
publishDashboard;
|
|
153
155
|
now;
|
|
154
156
|
timers;
|
|
@@ -245,6 +247,9 @@ export class GatewayService {
|
|
|
245
247
|
constructor(options) {
|
|
246
248
|
this.config = options.config;
|
|
247
249
|
this.adapters = [...(options.adapters ?? [])];
|
|
250
|
+
this.compatibilityObservers = [...(options.compatibilityObservers ?? [])];
|
|
251
|
+
this.compatibilitySurfaceDefinitions =
|
|
252
|
+
options.compatibilitySurfaceDefinitions ?? compatibilitySurfaceDefinitions;
|
|
248
253
|
this.publishDashboard = options.publishDashboard ?? publishGatewayDashboard;
|
|
249
254
|
this.now = options.now ?? (() => new Date());
|
|
250
255
|
this.store =
|
|
@@ -568,26 +573,58 @@ export class GatewayService {
|
|
|
568
573
|
return (await this.observeSnapshot()).snapshot;
|
|
569
574
|
}
|
|
570
575
|
async runAutomaticCompatibilityProbesLocked() {
|
|
571
|
-
const
|
|
572
|
-
|
|
573
|
-
adapter.
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
576
|
+
const entries = [
|
|
577
|
+
...this.adapters.map((adapter) => {
|
|
578
|
+
if (adapter.compatibilitySurface === undefined ||
|
|
579
|
+
adapter.runCompatibilityProbes === undefined) {
|
|
580
|
+
throw new BridgeError("COMPAT_PROVIDER_UNAVAILABLE", "Every local provider must expose the bounded compatibility probe contract.");
|
|
581
|
+
}
|
|
582
|
+
return {
|
|
583
|
+
observer: adapter,
|
|
584
|
+
adapter,
|
|
585
|
+
};
|
|
586
|
+
}),
|
|
587
|
+
...this.compatibilityObservers.map((observer) => ({ observer })),
|
|
588
|
+
];
|
|
589
|
+
const observedEntries = entries.map((entry) => ({
|
|
590
|
+
...entry,
|
|
591
|
+
observation: entry.observer.compatibilitySurface(),
|
|
578
592
|
}));
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
throw new BridgeError("COMPAT_PROVIDER_UNAVAILABLE", "
|
|
582
|
-
}
|
|
593
|
+
const bySurface = new Map(observedEntries.map((entry) => [entry.observation.surface, entry]));
|
|
594
|
+
if (bySurface.size !== entries.length) {
|
|
595
|
+
throw new BridgeError("COMPAT_PROVIDER_UNAVAILABLE", "Each compatibility observer must expose one distinct surface.");
|
|
596
|
+
}
|
|
597
|
+
const declared = new Set(this.compatibilitySurfaceDefinitions.map(({ surface }) => surface));
|
|
598
|
+
if ([...bySurface.keys()].some((surface) => !declared.has(surface))) {
|
|
599
|
+
throw new BridgeError("COMPAT_SURFACE_UNDECLARED", "Every compatibility observer must use a declared surface.");
|
|
600
|
+
}
|
|
601
|
+
const forbiddenCodexThreadIds = (await this.store.inspectPrivateCodexRoutes()).map((route) => route.binding.routeHandle);
|
|
602
|
+
const probeContext = {
|
|
603
|
+
stateRoot: this.store.rootDir,
|
|
604
|
+
forbiddenCodexThreadIds,
|
|
605
|
+
};
|
|
583
606
|
const attestations = [];
|
|
584
|
-
for (const
|
|
607
|
+
for (const definition of this.compatibilitySurfaceDefinitions) {
|
|
608
|
+
const { surface } = definition;
|
|
585
609
|
const entry = bySurface.get(surface);
|
|
586
610
|
if (entry === undefined) {
|
|
611
|
+
if (!definition.required)
|
|
612
|
+
continue;
|
|
587
613
|
throw new BridgeError("COMPAT_PROVIDER_UNAVAILABLE", "A required compatibility surface is unavailable.");
|
|
588
614
|
}
|
|
589
|
-
const probes =
|
|
590
|
-
|
|
615
|
+
const probes = entry.adapter === undefined
|
|
616
|
+
? await entry.observer.runCompatibilityProbes()
|
|
617
|
+
: await entry.adapter.runCompatibilityProbes(probeContext);
|
|
618
|
+
if (entry.adapter !== undefined) {
|
|
619
|
+
const writeProbe = entry.adapter.latestWriteCompatibilityProbeObservation?.(entry.adapter.identity.endpointGeneration);
|
|
620
|
+
if (writeProbe?.outcome === "fail") {
|
|
621
|
+
this.addRuntimeAlert(writeProbe.safeErrorCode, writeProbe.safeErrorCode === "CODEX_WRITE_PROBE_TOOL_ACTIVITY_OBSERVED" ||
|
|
622
|
+
writeProbe.safeErrorCode === "CODEX_WRITE_PROBE_CLEANUP_UNCONFIRMED"
|
|
623
|
+
? "error"
|
|
624
|
+
: "warning", { provider: "codex", host: entry.adapter.identity.hostId });
|
|
625
|
+
}
|
|
626
|
+
this.captureRegistryObservation(entry.adapter, entry.adapter.latestRegistryObservation?.());
|
|
627
|
+
}
|
|
591
628
|
const attestation = evaluateCompatibilityAttestation({
|
|
592
629
|
surface,
|
|
593
630
|
version: entry.observation.version,
|
|
@@ -596,15 +633,17 @@ export class GatewayService {
|
|
|
596
633
|
probes,
|
|
597
634
|
});
|
|
598
635
|
await this.store.recordCompatibilityAttestation(attestation);
|
|
599
|
-
entry.
|
|
600
|
-
if (attestation.tier === "incompatible") {
|
|
636
|
+
entry.observer.acceptCompatibilityAttestation?.(attestation);
|
|
637
|
+
if (attestation.tier === "incompatible" && entry.adapter !== undefined) {
|
|
601
638
|
const code = attestation.safeErrorCode ?? "COMPATIBILITY_CHECK_FAILED";
|
|
602
|
-
this.incompatibleProviderSurfaces.set(this.providerSurfaceKey(
|
|
639
|
+
this.incompatibleProviderSurfaces.set(this.providerSurfaceKey(entry.adapter.identity.provider, entry.adapter.identity.hostId), code);
|
|
603
640
|
if (surface === "codex") {
|
|
604
641
|
this.activeCodexIncompatibility = structuredClone(attestation);
|
|
605
642
|
}
|
|
606
643
|
}
|
|
607
|
-
else if (surface === "codex" &&
|
|
644
|
+
else if (surface === "codex" &&
|
|
645
|
+
attestation.tier === "schema_attested" &&
|
|
646
|
+
entry.adapter !== undefined) {
|
|
608
647
|
// A live but untested App Server schema is useful for observation only.
|
|
609
648
|
// Fence retained boot reactivation before it can trigger endpoint
|
|
610
649
|
// refresh churn; an explicit registration may still re-probe a later,
|
|
@@ -1019,17 +1058,31 @@ export class GatewayService {
|
|
|
1019
1058
|
await this.publish();
|
|
1020
1059
|
}
|
|
1021
1060
|
this.pruneTransient();
|
|
1061
|
+
const deferredRouteObservations = [];
|
|
1022
1062
|
while (this.hasPendingCallbackWork()) {
|
|
1023
1063
|
// Preserve the complete ordinary queue order. In particular, every
|
|
1024
1064
|
// delivery observation already retained before endpoint replacement is
|
|
1025
1065
|
// reduced before the lifecycle transition can settle its generation.
|
|
1026
1066
|
const ordinaryBatch = this.callbackQueue.splice(0, this.callbackQueue.length);
|
|
1067
|
+
const pendingRefresh = this.endpointRefreshCallback?.value;
|
|
1027
1068
|
for (const event of ordinaryBatch) {
|
|
1028
1069
|
try {
|
|
1029
1070
|
if (event.type === "delivery") {
|
|
1030
1071
|
await this.onDelivery(event.source, event.value, event.receivedAt);
|
|
1031
1072
|
}
|
|
1032
1073
|
else if (event.type === "route") {
|
|
1074
|
+
if (pendingRefresh?.outcome === "compatible" &&
|
|
1075
|
+
event.source.provider === "codex" &&
|
|
1076
|
+
event.source.hostId === pendingRefresh.current.hostId &&
|
|
1077
|
+
event.source.endpointGeneration ===
|
|
1078
|
+
pendingRefresh.current.endpointGeneration &&
|
|
1079
|
+
pendingRefresh.routes.some((route) => route.routeHandle === event.value.routeHandle)) {
|
|
1080
|
+
// The provider can observe G2 after staging it but before this
|
|
1081
|
+
// worker installs G2's durable binding. Preserve that fresher
|
|
1082
|
+
// state until the exact transition evidence has been reduced.
|
|
1083
|
+
deferredRouteObservations.push(event);
|
|
1084
|
+
continue;
|
|
1085
|
+
}
|
|
1033
1086
|
await this.onRouteState(event.source, event.value);
|
|
1034
1087
|
}
|
|
1035
1088
|
else if (event.type === "claude_reply") {
|
|
@@ -1092,6 +1145,14 @@ export class GatewayService {
|
|
|
1092
1145
|
this.endpointRefreshCallback = requestedRetry;
|
|
1093
1146
|
}
|
|
1094
1147
|
}
|
|
1148
|
+
for (const event of deferredRouteObservations) {
|
|
1149
|
+
try {
|
|
1150
|
+
await this.onRouteState(event.source, event.value);
|
|
1151
|
+
}
|
|
1152
|
+
catch {
|
|
1153
|
+
this.dashboardHealthy = false;
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1095
1156
|
}
|
|
1096
1157
|
/**
|
|
1097
1158
|
* A selector can synchronously admit callbacks while its promise is still
|
|
@@ -3359,6 +3420,16 @@ export class GatewayService {
|
|
|
3359
3420
|
this.routeStates.set(alias, state);
|
|
3360
3421
|
this.bindingAliases.set(bindingKey(binding), alias);
|
|
3361
3422
|
}
|
|
3423
|
+
reanchorQueuedMessageContexts(alias, previous, current) {
|
|
3424
|
+
const previousKey = bindingKey(previous);
|
|
3425
|
+
const currentKey = bindingKey(current);
|
|
3426
|
+
for (const context of this.messageContexts.values()) {
|
|
3427
|
+
if (context.targetAlias === alias &&
|
|
3428
|
+
context.targetBindingKey === previousKey) {
|
|
3429
|
+
context.targetBindingKey = currentKey;
|
|
3430
|
+
}
|
|
3431
|
+
}
|
|
3432
|
+
}
|
|
3362
3433
|
forgetBinding(alias) {
|
|
3363
3434
|
const heldTimer = this.heldRedispatchTimers.get(alias);
|
|
3364
3435
|
if (heldTimer !== undefined) {
|
|
@@ -4698,7 +4769,6 @@ export class GatewayService {
|
|
|
4698
4769
|
authorization: "selected_route",
|
|
4699
4770
|
targetAlias: item.targetAlias,
|
|
4700
4771
|
deadlineAt: item.deadlineAt,
|
|
4701
|
-
recovered: true,
|
|
4702
4772
|
};
|
|
4703
4773
|
this.conversations.set(conversationId, conversation);
|
|
4704
4774
|
this.messageContexts.set(item.messageId, context);
|
|
@@ -4793,22 +4863,11 @@ export class GatewayService {
|
|
|
4793
4863
|
inspection?.state === "stale" ||
|
|
4794
4864
|
inspection?.safeErrorCode === "CODEX_ROUTE_STALE");
|
|
4795
4865
|
if (codexRouteStale) {
|
|
4796
|
-
|
|
4797
|
-
|
|
4798
|
-
|
|
4799
|
-
await this.applyTerminalSettlementLocked(result.settlement);
|
|
4800
|
-
}
|
|
4801
|
-
await this.changed();
|
|
4802
|
-
return;
|
|
4866
|
+
const result = await this.store.requeueInFlightMessage(item.messageId, item.body);
|
|
4867
|
+
if (result.status === "settled") {
|
|
4868
|
+
await this.applyTerminalSettlementLocked(result.settlement);
|
|
4803
4869
|
}
|
|
4804
|
-
await this.advanceDeliveryLocked(item.messageId, {
|
|
4805
|
-
type: "route_terminated",
|
|
4806
|
-
at: this.now().getTime(),
|
|
4807
|
-
unwrittenOutcome: "failed",
|
|
4808
|
-
safeErrorCode: "CODEX_ROUTE_STALE",
|
|
4809
|
-
});
|
|
4810
4870
|
await this.changed();
|
|
4811
|
-
this.scheduleDispatch(targetAlias);
|
|
4812
4871
|
return;
|
|
4813
4872
|
}
|
|
4814
4873
|
const storedDispatchable = binding.provider === "claude" ||
|
|
@@ -5459,6 +5518,9 @@ export class GatewayService {
|
|
|
5459
5518
|
return activationDeferred;
|
|
5460
5519
|
}
|
|
5461
5520
|
finally {
|
|
5521
|
+
if (!succeeded && event.outcome === "compatible") {
|
|
5522
|
+
adapter.releaseEndpointRefreshSelectorClaim?.(event.current.endpointGeneration);
|
|
5523
|
+
}
|
|
5462
5524
|
if (ownsActiveTransition &&
|
|
5463
5525
|
this.activeEndpointRefreshCallbackKey === transitionKey) {
|
|
5464
5526
|
this.activeEndpointRefreshCallback = undefined;
|
|
@@ -5611,6 +5673,18 @@ export class GatewayService {
|
|
|
5611
5673
|
},
|
|
5612
5674
|
];
|
|
5613
5675
|
});
|
|
5676
|
+
const reanchorPendingMessageContexts = () => {
|
|
5677
|
+
for (const route of pendingReanchors) {
|
|
5678
|
+
const previous = previousRoutes.find((candidate) => candidate.alias === route.alias)?.binding;
|
|
5679
|
+
if (previous === undefined)
|
|
5680
|
+
continue;
|
|
5681
|
+
this.reanchorQueuedMessageContexts(route.alias, previous, {
|
|
5682
|
+
...event.current,
|
|
5683
|
+
routeHandle: route.threadId,
|
|
5684
|
+
ownerLease: route.ownerLease,
|
|
5685
|
+
});
|
|
5686
|
+
}
|
|
5687
|
+
};
|
|
5614
5688
|
if (pendingReanchors.length > 0) {
|
|
5615
5689
|
try {
|
|
5616
5690
|
await this.store.reanchorCodexRoutes({
|
|
@@ -5618,6 +5692,7 @@ export class GatewayService {
|
|
|
5618
5692
|
newEndpoint: event.current,
|
|
5619
5693
|
routes: pendingReanchors,
|
|
5620
5694
|
});
|
|
5695
|
+
reanchorPendingMessageContexts();
|
|
5621
5696
|
this.durablyAppliedEndpointRefreshes.set(event.current.hostId, transitionKey);
|
|
5622
5697
|
}
|
|
5623
5698
|
catch (error) {
|
|
@@ -5639,6 +5714,7 @@ export class GatewayService {
|
|
|
5639
5714
|
return matches.length === 1;
|
|
5640
5715
|
});
|
|
5641
5716
|
if (committedExactly) {
|
|
5717
|
+
reanchorPendingMessageContexts();
|
|
5642
5718
|
this.durablyAppliedEndpointRefreshes.set(event.current.hostId, transitionKey);
|
|
5643
5719
|
try {
|
|
5644
5720
|
await this.store.markConnectorOffline(event.current, "CODEX_ENDPOINT_ACTIVATION_FAILED", [], { preserveQueued: true });
|
|
@@ -5904,6 +5980,9 @@ export class GatewayService {
|
|
|
5904
5980
|
: event.state === "awaiting_approval"
|
|
5905
5981
|
? "waiting"
|
|
5906
5982
|
: "busy");
|
|
5983
|
+
if (previousState === "stale" && event.state !== "stale") {
|
|
5984
|
+
adapter.rearmEndpointRefreshActivation?.(binding.endpointGeneration);
|
|
5985
|
+
}
|
|
5907
5986
|
}
|
|
5908
5987
|
if (event.state === "idle" || event.state === "stale") {
|
|
5909
5988
|
const heldTimer = this.heldRedispatchTimers.get(alias);
|
|
@@ -6019,14 +6098,14 @@ export class GatewayService {
|
|
|
6019
6098
|
async publicSnapshotLocked() {
|
|
6020
6099
|
const base = await this.store.publicSnapshot();
|
|
6021
6100
|
const compatibilityChecks = [];
|
|
6022
|
-
for (const surface of
|
|
6101
|
+
for (const { surface } of this.compatibilitySurfaceDefinitions) {
|
|
6023
6102
|
if (surface === "codex" && this.activeCodexIncompatibility !== undefined) {
|
|
6024
6103
|
compatibilityChecks.push(structuredClone(this.activeCodexIncompatibility));
|
|
6025
6104
|
continue;
|
|
6026
6105
|
}
|
|
6027
6106
|
const currentVersions = [
|
|
6028
|
-
...new Set(this.adapters.flatMap((
|
|
6029
|
-
const observation =
|
|
6107
|
+
...new Set([...this.adapters, ...this.compatibilityObservers].flatMap((observer) => {
|
|
6108
|
+
const observation = observer.compatibilitySurface?.();
|
|
6030
6109
|
return observation?.surface === surface ? [observation.version] : [];
|
|
6031
6110
|
})),
|
|
6032
6111
|
].sort((left, right) => left.localeCompare(right));
|