From d925e342004be8e730554cc2cd521f8329f43fa9 Mon Sep 17 00:00:00 2001 From: Aiden Cline Date: Mon, 3 Aug 2026 15:48:56 -0500 Subject: [PATCH] refactor(schema): rename empty constructors --- packages/core/src/agent.ts | 2 +- packages/core/src/catalog.ts | 4 ++-- packages/core/test/agent.test.ts | 2 +- packages/core/test/mcp-instructions.test.ts | 2 +- .../test/plugin/provider-amazon-bedrock.test.ts | 2 +- .../core/test/plugin/provider-anthropic.test.ts | 2 +- .../provider-azure-cognitive-services.test.ts | 4 ++-- packages/core/test/plugin/provider-azure.test.ts | 6 +++--- packages/core/test/plugin/provider-openai.test.ts | 4 ++-- .../core/test/plugin/provider-opencode.test.ts | 14 +++++++------- packages/core/test/shared-schema.test.ts | 4 ++-- packages/core/test/skill/instructions.test.ts | 14 +++++++------- packages/schema/src/agent.ts | 2 +- packages/schema/src/provider.ts | 2 +- 14 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/core/src/agent.ts b/packages/core/src/agent.ts index 548dcdb2aa6..13cdca22291 100644 --- a/packages/core/src/agent.ts +++ b/packages/core/src/agent.ts @@ -61,7 +61,7 @@ const layer = Layer.effect( draft.default = id }, update: (id, fn) => { - const current = draft.agents.get(id) ?? (Info.empty(id) as Types.DeepMutable) + const current = draft.agents.get(id) ?? (Info.default(id) as Types.DeepMutable) if (!draft.agents.has(id)) draft.agents.set(id, current) fn(current) current.id = id diff --git a/packages/core/src/catalog.ts b/packages/core/src/catalog.ts index 9bc9611cf89..5cbfb2b2a0e 100644 --- a/packages/core/src/catalog.ts +++ b/packages/core/src/catalog.ts @@ -93,7 +93,7 @@ const layer = Layer.effect( let current = draft.providers.get(providerID) if (!current) { current = { - provider: Provider.Info.empty(providerID) as Provider.MutableInfo, + provider: Provider.Info.default(providerID) as Provider.MutableInfo, models: new Map(), } draft.providers.set(providerID, current) @@ -110,7 +110,7 @@ const layer = Layer.effect( let record = draft.providers.get(providerID) if (!record) { record = { - provider: Provider.Info.empty(providerID) as Provider.MutableInfo, + provider: Provider.Info.default(providerID) as Provider.MutableInfo, models: new Map(), } draft.providers.set(providerID, record) diff --git a/packages/core/test/agent.test.ts b/packages/core/test/agent.test.ts index 41aeee99eca..645db471d79 100644 --- a/packages/core/test/agent.test.ts +++ b/packages/core/test/agent.test.ts @@ -120,7 +120,7 @@ describe("Agent", () => { const id = Agent.ID.make("custom") yield* agent.transform((editor) => editor.update(id, () => {})) - expect(yield* agent.get(id)).toEqual(Agent.Info.empty(id)) + expect(yield* agent.get(id)).toEqual(Agent.Info.default(id)) yield* agent.transform((editor) => editor.remove(id)) expect(yield* agent.get(id)).toBeUndefined() diff --git a/packages/core/test/mcp-instructions.test.ts b/packages/core/test/mcp-instructions.test.ts index 44efd76b241..9543a10fac0 100644 --- a/packages/core/test/mcp-instructions.test.ts +++ b/packages/core/test/mcp-instructions.test.ts @@ -12,7 +12,7 @@ import { readInitial, readUpdate } from "./lib/instructions" const build = Agent.ID.make("build") const selection = (permissions: Permission.Ruleset = []) => { - const info = Agent.Info.make({ ...Agent.Info.empty(build), permissions }) + const info = Agent.Info.make({ ...Agent.Info.default(build), permissions }) return { id: info.id, info } } diff --git a/packages/core/test/plugin/provider-amazon-bedrock.test.ts b/packages/core/test/plugin/provider-amazon-bedrock.test.ts index 44d91b036a4..f33a2b0b753 100644 --- a/packages/core/test/plugin/provider-amazon-bedrock.test.ts +++ b/packages/core/test/plugin/provider-amazon-bedrock.test.ts @@ -84,7 +84,7 @@ describe("AmazonBedrockPlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const bedrock = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.amazonBedrock), + ...Provider.Info.default(Provider.ID.amazonBedrock), package: Provider.aisdk("@ai-sdk/amazon-bedrock"), settings: { endpoint: "https://bedrock.example" }, }) diff --git a/packages/core/test/plugin/provider-anthropic.test.ts b/packages/core/test/plugin/provider-anthropic.test.ts index de9008b10f1..9b8eec88182 100644 --- a/packages/core/test/plugin/provider-anthropic.test.ts +++ b/packages/core/test/plugin/provider-anthropic.test.ts @@ -30,7 +30,7 @@ describe("AnthropicPlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const item = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.anthropic), + ...Provider.Info.default(Provider.ID.anthropic), package: Provider.aisdk("@ai-sdk/anthropic"), headers: { Existing: "1" }, }) diff --git a/packages/core/test/plugin/provider-azure-cognitive-services.test.ts b/packages/core/test/plugin/provider-azure-cognitive-services.test.ts index c53bb4a524a..fcb9ddd9219 100644 --- a/packages/core/test/plugin/provider-azure-cognitive-services.test.ts +++ b/packages/core/test/plugin/provider-azure-cognitive-services.test.ts @@ -86,11 +86,11 @@ describe("AzureCognitiveServicesPlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const azure = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.make("azure-cognitive-services")), + ...Provider.Info.default(Provider.ID.make("azure-cognitive-services")), package: "aisdk:@ai-sdk/openai-compatible", }) const openai = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.openai), + ...Provider.Info.default(Provider.ID.openai), package: "aisdk:test-provider", }) catalog.provider.update(azure.id, (item) => { diff --git a/packages/core/test/plugin/provider-azure.test.ts b/packages/core/test/plugin/provider-azure.test.ts index 85f405e6cbe..1d4ccf75b51 100644 --- a/packages/core/test/plugin/provider-azure.test.ts +++ b/packages/core/test/plugin/provider-azure.test.ts @@ -81,7 +81,7 @@ describe("AzurePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const azure = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.azure), + ...Provider.Info.default(Provider.ID.azure), package: Provider.aisdk("@ai-sdk/azure"), settings: { resourceName: "from-config" }, }) @@ -104,7 +104,7 @@ describe("AzurePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const azure = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.azure), + ...Provider.Info.default(Provider.ID.azure), package: Provider.aisdk("@ai-sdk/azure"), settings: { resourceName: "" }, }) @@ -125,7 +125,7 @@ describe("AzurePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const azure = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.azure), + ...Provider.Info.default(Provider.ID.azure), package: Provider.aisdk("@ai-sdk/azure"), settings: { resourceName: " " }, }) diff --git a/packages/core/test/plugin/provider-openai.test.ts b/packages/core/test/plugin/provider-openai.test.ts index 9a73f5af939..6176155f75a 100644 --- a/packages/core/test/plugin/provider-openai.test.ts +++ b/packages/core/test/plugin/provider-openai.test.ts @@ -54,7 +54,7 @@ describe("OpenAIPlugin", () => { const credentials = yield* Credential.Service yield* catalog.transform((catalog) => { const item = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.openai), + ...Provider.Info.default(Provider.ID.openai), package: Provider.aisdk("@ai-sdk/openai"), }) catalog.provider.update(item.id, (draft) => { @@ -167,7 +167,7 @@ describe("OpenAIPlugin", () => { const credentials = yield* Credential.Service yield* catalog.transform((catalog) => { const item = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.openai), + ...Provider.Info.default(Provider.ID.openai), package: Provider.aisdk("@ai-sdk/openai"), }) catalog.provider.update(item.id, (draft) => { diff --git a/packages/core/test/plugin/provider-opencode.test.ts b/packages/core/test/plugin/provider-opencode.test.ts index e8f8323dbf9..87ee89f68d6 100644 --- a/packages/core/test/plugin/provider-opencode.test.ts +++ b/packages/core/test/plugin/provider-opencode.test.ts @@ -289,7 +289,7 @@ describe("OpencodePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.opencode), + ...Provider.Info.default(Provider.ID.opencode), package: Provider.aisdk("test-provider"), }) const model = Model.Info.make({ @@ -316,7 +316,7 @@ describe("OpencodePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.opencode), + ...Provider.Info.default(Provider.ID.opencode), package: Provider.aisdk("test-provider"), }) const model = Model.Info.make({ @@ -343,7 +343,7 @@ describe("OpencodePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.opencode), + ...Provider.Info.default(Provider.ID.opencode), package: Provider.aisdk("test-provider"), }) const model = Model.Info.make({ @@ -372,7 +372,7 @@ describe("OpencodePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.opencode), + ...Provider.Info.default(Provider.ID.opencode), package: Provider.aisdk("test-provider"), }) const model = Model.Info.make({ @@ -406,7 +406,7 @@ describe("OpencodePlugin", () => { }) yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.opencode), + ...Provider.Info.default(Provider.ID.opencode), package: Provider.aisdk("test-provider"), }) const model = Model.Info.make({ @@ -433,7 +433,7 @@ describe("OpencodePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.opencode), + ...Provider.Info.default(Provider.ID.opencode), package: Provider.aisdk("test-provider"), settings: { apiKey: "configured" }, }) @@ -464,7 +464,7 @@ describe("OpencodePlugin", () => { const catalog = yield* Catalog.Service yield* catalog.transform((catalog) => { const provider = Provider.Info.make({ - ...Provider.Info.empty(Provider.ID.openai), + ...Provider.Info.default(Provider.ID.openai), package: Provider.aisdk("test-provider"), }) const model = Model.Info.make({ diff --git a/packages/core/test/shared-schema.test.ts b/packages/core/test/shared-schema.test.ts index 9f30aca2faf..17bd6eddbec 100644 --- a/packages/core/test/shared-schema.test.ts +++ b/packages/core/test/shared-schema.test.ts @@ -166,11 +166,11 @@ test("Core reuses the canonical shared schemas", async () => { ] for (const [core, shared] of schemas) expect(core).toBe(shared) - expect(Agent.Info.empty(Agent.ID.make("test"))).toEqual(Agent.Info.empty(Agent.ID.make("test"))) + expect(Agent.Info.default(Agent.ID.make("test"))).toEqual(Agent.Info.default(Agent.ID.make("test"))) expect(coreModel.Info.default(coreProvider.ID.make("test"), coreModel.ID.make("model"))).toEqual( Model.Info.default(Provider.ID.make("test"), Model.ID.make("model")), ) - expect(coreProvider.Info.empty(coreProvider.ID.make("test"))).toEqual(Provider.Info.empty(Provider.ID.make("test"))) + expect(coreProvider.Info.default(coreProvider.ID.make("test"))).toEqual(Provider.Info.default(Provider.ID.make("test"))) expect(Skill.Source.key(Skill.DirectorySource.make({ type: "directory", path: AbsolutePath.make("/tmp") }))).toBe( "directory:/tmp", ) diff --git a/packages/core/test/skill/instructions.test.ts b/packages/core/test/skill/instructions.test.ts index a062c10f6ad..dcb54d478ed 100644 --- a/packages/core/test/skill/instructions.test.ts +++ b/packages/core/test/skill/instructions.test.ts @@ -47,7 +47,7 @@ const layer = (list: () => Skill.Info[]) => describe("SkillInstructions", () => { it.effect("renders described agent skills and updates the complete available list", () => { const agent = Agent.Info.make({ - ...Agent.Info.empty(build), + ...Agent.Info.default(build), permissions: [{ action: "skill", resource: "denied", effect: "deny" }], }) let skills = [hidden, denied, manual, effect] @@ -80,7 +80,7 @@ describe("SkillInstructions", () => { }) it.effect("announces added and removed skills as deltas without restating the list", () => { - const agent = Agent.Info.make(Agent.Info.empty(build)) + const agent = Agent.Info.make(Agent.Info.default(build)) const debugging = Skill.Info.make({ id: Skill.ID.make("debugging"), name: Skill.Name.make("Debugging"), @@ -117,7 +117,7 @@ describe("SkillInstructions", () => { }) it.effect("restates the full skill list when a description changes", () => { - const agent = Agent.Info.make(Agent.Info.empty(build)) + const agent = Agent.Info.make(Agent.Info.default(build)) let skills = [effect] return Effect.gen(function* () { const instructions = yield* SkillInstructions.Service @@ -138,7 +138,7 @@ describe("SkillInstructions", () => { it.effect("omits instructions when the selected agent denies all skills", () => { const agent = Agent.Info.make({ - ...Agent.Info.empty(build), + ...Agent.Info.default(build), permissions: [{ action: "skill", resource: "*", effect: "deny" }], }) return Effect.gen(function* () { @@ -149,7 +149,7 @@ describe("SkillInstructions", () => { it.effect("omits instructions when a resource-specific denial follows the global denial", () => { const agent = Agent.Info.make({ - ...Agent.Info.empty(build), + ...Agent.Info.default(build), permissions: [ { action: "skill", resource: "*", effect: "deny" }, { action: "skill", resource: "hidden", effect: "deny" }, @@ -163,7 +163,7 @@ describe("SkillInstructions", () => { it.effect("retains specifically allowed skills after a global denial", () => { const agent = Agent.Info.make({ - ...Agent.Info.empty(build), + ...Agent.Info.default(build), permissions: [ { action: "skill", resource: "*", effect: "deny" }, { action: "skill", resource: "effect", effect: "allow" }, @@ -179,7 +179,7 @@ describe("SkillInstructions", () => { it.effect("omits instructions when a specifically allowed skill is denied again", () => { const agent = Agent.Info.make({ - ...Agent.Info.empty(build), + ...Agent.Info.default(build), permissions: [ { action: "skill", resource: "*", effect: "deny" }, { action: "skill", resource: "effect", effect: "allow" }, diff --git a/packages/schema/src/agent.ts b/packages/schema/src/agent.ts index 8001a2967ee..3bde5a1facb 100644 --- a/packages/schema/src/agent.ts +++ b/packages/schema/src/agent.ts @@ -36,7 +36,7 @@ export const Info = Schema.Struct({ .annotate({ identifier: "Agent.Info" }) .pipe( statics(() => ({ - empty: (id: ID) => + default: (id: ID) => ({ id, name: Name.make(id), diff --git a/packages/schema/src/provider.ts b/packages/schema/src/provider.ts index 69a8d0212ff..95b0b5b0eeb 100644 --- a/packages/schema/src/provider.ts +++ b/packages/schema/src/provider.ts @@ -53,6 +53,6 @@ export const Info = Schema.Struct({ .annotate({ identifier: "Provider.Info" }) .pipe( statics(() => ({ - empty: (id: ID): Info => ({ id, name: id, package: "" }), + default: (id: ID): Info => ({ id, name: id, package: "" }), })), )