Skip to content

Commit e3fec46

Browse files
committed
fix(server): keep the fork's provider divergences typechecking against upstream's new provider surfaces
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
1 parent c2ccc99 commit e3fec46

14 files changed

Lines changed: 60 additions & 20 deletions

‎apps/server/src/provider/AntigravityAuth.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ const initialized = {
3434
const started: AcpSessionRuntimeStartResult = {
3535
sessionId: "native-session",
3636
initializeResult: initialized,
37+
authenticateResult: {},
3738
sessionSetupResult: {
3839
sessionId: "native-session",
3940
models: {

‎apps/server/src/provider/Drivers/CodexDriver.test.ts‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import {
2525
ProviderVersionCache,
2626
resolveLatestProviderVersion,
2727
} from "../providerMaintenance.ts";
28+
import { ProviderSecretResolverPassthroughLayer } from "../Services/ProviderSecretResolver.ts";
2829
import { CodexDriver } from "./CodexDriver.ts";
2930

3031
const testLayer = ServerConfig.layerTest(process.cwd(), {
@@ -40,6 +41,7 @@ const testLayer = ServerConfig.layerTest(process.cwd(), {
4041
}),
4142
),
4243
Layer.provideMerge(Layer.succeed(ProviderEventLoggers, NoOpProviderEventLoggers)),
44+
Layer.provideMerge(ProviderSecretResolverPassthroughLayer),
4345
Layer.provideMerge(
4446
Layer.succeed(
4547
HttpClient.HttpClient,

‎apps/server/src/provider/Drivers/CursorDriver.test.ts‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import * as BackgroundPolicy from "../../background/BackgroundPolicy.ts";
1515
import { ServerConfig } from "../../config.ts";
1616
import { ServerSettingsService } from "../../serverSettings.ts";
1717
import { NoOpProviderEventLoggers, ProviderEventLoggers } from "../Layers/ProviderEventLoggers.ts";
18+
import { ProviderSecretResolverPassthroughLayer } from "../Services/ProviderSecretResolver.ts";
1819
import { CursorDriver } from "./CursorDriver.ts";
1920

2021
const testLayer = ServerConfig.layerTest(process.cwd(), {
@@ -28,6 +29,7 @@ const testLayer = ServerConfig.layerTest(process.cwd(), {
2829
}),
2930
),
3031
Layer.provideMerge(Layer.succeed(ProviderEventLoggers, NoOpProviderEventLoggers)),
32+
Layer.provideMerge(ProviderSecretResolverPassthroughLayer),
3133
Layer.provideMerge(
3234
Layer.succeed(
3335
HttpClient.HttpClient,

‎apps/server/src/provider/Layers/AntigravityAdapter.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ const makeHarness = Effect.fn("makeAntigravityAdapterHarness")(function* (option
159159
protocolVersion: 1,
160160
agentCapabilities: { sessionCapabilities: { resume: {} } },
161161
},
162+
authenticateResult: {},
162163
sessionSetupResult: { sessionId: nativeSessionId, configOptions: configOptions() },
163164
modelConfigId: "model",
164165
};

‎apps/server/src/provider/Layers/AntigravityProvider.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ const sessionSetupResult = {
9292
const started = {
9393
sessionId: "session-1",
9494
initializeResult,
95+
authenticateResult: {},
9596
sessionSetupResult,
9697
modelConfigId: "model",
9798
} satisfies AcpSessionRuntimeStartResult;

‎apps/server/src/provider/Layers/ClaudeAdapter.test.ts‎

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5644,13 +5644,17 @@ describe("ClaudeAdapterLive", () => {
56445644
return;
56455645
}
56465646

5647-
const result = yield* Effect.promise(() =>
5647+
const result = (yield* Effect.promise(() =>
56485648
canUseTool(
56495649
"Task",
56505650
{ subagent_type: "general", prompt: "do it", description: "task" },
5651-
{ signal: new AbortController().signal, toolUseID: "tool-use-task-1" },
5651+
{
5652+
signal: new AbortController().signal,
5653+
requestId: "request-task-1",
5654+
toolUseID: "tool-use-task-1",
5655+
},
56525656
),
5653-
);
5657+
)) as PermissionResult;
56545658
assert.equal(result.behavior, "deny");
56555659
if (result.behavior === "deny") {
56565660
assert.include(result.message, "mcp__t3-code__spawn_thread");
@@ -5702,16 +5706,20 @@ describe("ClaudeAdapterLive", () => {
57025706
return;
57035707
}
57045708

5705-
const result = yield* Effect.promise(() =>
5709+
const result = (yield* Effect.promise(() =>
57065710
canUseTool(
57075711
"Task",
57085712
{ subagent_type: "general", prompt: "do it", description: "task" },
5709-
{ signal: new AbortController().signal, toolUseID: "tool-use-task-2" },
5713+
{
5714+
signal: new AbortController().signal,
5715+
requestId: "request-task-2",
5716+
toolUseID: "tool-use-task-2",
5717+
},
57105718
),
5711-
);
5719+
)) as PermissionResult;
57125720
assert.equal(result.behavior, "allow");
57135721
const systemPrompt = createInput?.options.systemPrompt as { append?: string };
5714-
assert.isUndefined(systemPrompt.append);
5722+
assert.notInclude(systemPrompt.append ?? "", "mcp__t3-code__await_thread");
57155723
}).pipe(Effect.scoped, Effect.provide(harness.layer));
57165724
});
57175725

‎apps/server/src/provider/Layers/GrokProvider.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import * as NodeServices from "@effect/platform-node/NodeServices";
66
import { describe, expect, it } from "@effect/vitest";
77
import * as Effect from "effect/Effect";
88
import * as FileSystem from "effect/FileSystem";
9+
import * as Path from "effect/Path";
910
import * as Schema from "effect/Schema";
1011
import { GrokSettings } from "@t3tools/contracts";
1112

‎apps/server/src/provider/Layers/ProviderInstanceRegistryLive.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -644,6 +644,7 @@ describe("ProviderInstanceRegistryLive: rebuildInstanceWhen", () => {
644644
Layer.provideMerge(Layer.succeed(ProviderEventLoggers, NoOpProviderEventLoggers)),
645645
Layer.provideMerge(ProviderSecretResolverPassthroughLayer),
646646
Layer.provideMerge(ModelManifest.layerTest),
647+
Layer.provideMerge(CodexResetCredit.layerTest),
647648
);
648649

649650
const codexDriverKind = ProviderDriverKind.make("codex");

‎apps/server/src/provider/Layers/ProviderRegistry.test.ts‎

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1034,6 +1034,8 @@ it.layer(Layer.mergeAll(NodeServices.layer, ServerSettingsModule.layerTest(), Te
10341034
Effect.succeed(id === instance.instanceId ? instance : undefined),
10351035
listInstances: Effect.succeed([instance]),
10361036
listUnavailable: Effect.succeed([]),
1037+
listEnvironments: Effect.succeed(new Map()),
1038+
rebuildInstanceWhen: () => Effect.succeed(false),
10371039
streamChanges: Stream.empty,
10381040
subscribeChanges: Effect.flatMap(PubSub.unbounded<void>(), PubSub.subscribe),
10391041
},
@@ -1073,7 +1075,10 @@ it.layer(Layer.mergeAll(NodeServices.layer, ServerSettingsModule.layerTest(), Te
10731075
Effect.provide(
10741076
ServerConfig.layerTest(process.cwd(), {
10751077
prefix: "t3-codex-retired-model-cache-",
1076-
}).pipe(Layer.provideMerge(NodeServices.layer)),
1078+
}).pipe(
1079+
Layer.provideMerge(NodeServices.layer),
1080+
Layer.provideMerge(ProviderSecretResolverPassthroughLayer),
1081+
),
10771082
),
10781083
),
10791084
);
@@ -1462,13 +1467,17 @@ it.layer(Layer.mergeAll(NodeServices.layer, ServerSettingsModule.layerTest(), Te
14621467
displayName: undefined,
14631468
enabled: true,
14641469
snapshot: {
1465-
maintenanceCapabilities: makeManualOnlyProviderMaintenanceCapabilities({
1466-
provider: codexDriver,
1467-
packageName: null,
1468-
}),
1470+
resolveMaintenance: () =>
1471+
Effect.succeed(
1472+
makeManualOnlyProviderMaintenanceCapabilities({
1473+
provider: codexDriver,
1474+
packageName: null,
1475+
}),
1476+
),
14691477
getSnapshot: Effect.succeed(initialProvider),
14701478
refresh: Effect.succeed(initialProvider),
14711479
streamChanges: Stream.empty,
1480+
applyUsageLimits: () => Effect.void,
14721481
},
14731482
adapter: {} as ProviderInstance["adapter"],
14741483
textGeneration: {} as ProviderInstance["textGeneration"],
@@ -2701,6 +2710,7 @@ it.layer(Layer.mergeAll(NodeServices.layer, ServerSettingsModule.layerTest(), Te
27012710
yield* Effect.addFinalizer(() => Scope.close(scope, Exit.void));
27022711
yield* Layer.build(
27032712
ProviderInstanceRegistryHydrationLive.pipe(
2713+
Layer.provideMerge(AntigravityInstallation.layer),
27042714
Layer.provideMerge(
27052715
Layer.succeed(ServerSettingsModule.ServerSettingsService, serverSettings),
27062716
),
@@ -2717,6 +2727,7 @@ it.layer(Layer.mergeAll(NodeServices.layer, ServerSettingsModule.layerTest(), Te
27172727
),
27182728
),
27192729
Layer.provideMerge(ModelManifest.layerTest),
2730+
Layer.provideMerge(CodexResetCredit.layerTest),
27202731
Layer.provideMerge(OpenCodeRuntime.OpenCodeRuntimeLive),
27212732
Layer.provideMerge(NodeServices.layer),
27222733
Layer.provideMerge(BackgroundPolicyAlwaysRunLayer),

‎apps/server/src/provider/ProviderInstanceEnvironment.test.ts‎

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,14 @@ describe("mergeProviderInstanceEnvironment", () => {
1919
CLAUDE_CONFIG_DIR: "~/.inherited-claude",
2020
};
2121
const environment = mergeProviderInstanceEnvironment(
22-
[
23-
{ name: "CODEX_HOME", value, sensitive: false },
24-
{ name: "CLAUDE_CONFIG_DIR", value, sensitive: false },
25-
{ name: "CUSTOM_VALUE", value, sensitive: false },
26-
],
22+
{
23+
variables: [
24+
{ name: "CODEX_HOME", value, sensitive: false },
25+
{ name: "CLAUDE_CONFIG_DIR", value, sensitive: false },
26+
{ name: "CUSTOM_VALUE", value, sensitive: false },
27+
],
28+
unresolved: [],
29+
},
2730
baseEnv,
2831
);
2932

@@ -44,7 +47,10 @@ describe("mergeProviderInstanceEnvironment", () => {
4447

4548
expect(
4649
mergeProviderInstanceEnvironment(
47-
[{ name: "CUSTOM_VALUE", value: "~/.custom", sensitive: false }],
50+
{
51+
variables: [{ name: "CUSTOM_VALUE", value: "~/.custom", sensitive: false }],
52+
unresolved: [],
53+
},
4854
baseEnv,
4955
),
5056
).toEqual({ ...baseEnv, CUSTOM_VALUE: "~/.custom" });

0 commit comments

Comments
 (0)