@relayfx/sdk 0.2.4 → 0.2.6

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/ai.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import"./index-d4fnzahj.js";
2
+ import"./index-5vvma5c3.js";
3
3
  import {
4
4
  AiError,
5
5
  Chat,
@@ -34,7 +34,7 @@ import {
34
34
  exports_tool_executor,
35
35
  exports_tool_output,
36
36
  exports_turn_policy
37
- } from "./index-eezcjdqe.js";
37
+ } from "./index-e4zcj5d4.js";
38
38
 
39
39
  // src/ai.ts
40
40
  var relayAiPackage = "@relayfx/sdk/ai";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  __export,
4
4
  exports_model_registry
5
- } from "./index-eezcjdqe.js";
5
+ } from "./index-e4zcj5d4.js";
6
6
 
7
7
  // ../ai/src/language-model/language-model-registration.ts
8
8
  var exports_language_model_registration = {};
@@ -48,7 +48,7 @@ import {
48
48
  exports_wait_service,
49
49
  exports_wait_signal,
50
50
  exports_workflow_definition_repository
51
- } from "./index-eezcjdqe.js";
51
+ } from "./index-e4zcj5d4.js";
52
52
 
53
53
  // src/operation.ts
54
54
  var exports_operation = {};
@@ -1124,7 +1124,7 @@ var turnPolicyFieldsFromRegisterInput = Effect.fn("Client.turnPolicyFieldsFromRe
1124
1124
  return yield* Effect.fail(batonTurnPolicyInvalid("opaque policies require an explicit max_tool_turns replacement"));
1125
1125
  }
1126
1126
  const durable = yield* turnPolicySnapshotFromBaton(snapshot);
1127
- if (durable.kind === "recurs" && durable.count === exports_agent_schema.defaultMaxToolTurns)
1127
+ if (durable.kind === "recurs" && durable.count === 8)
1128
1128
  return {};
1129
1129
  if (durable.kind === "recurs" && durable.count > 0)
1130
1130
  return { max_tool_turns: durable.count };
@@ -402,8 +402,8 @@ var makeTurnPolicySnapshotTree = () => {
402
402
  return tree;
403
403
  };
404
404
  var TurnPolicySnapshot = makeTurnPolicySnapshotTree().check(turnPolicySnapshotNodeCount).annotate({ identifier: "Relay.Agent.TurnPolicySnapshot" });
405
- var defaultMaxToolTurns = 8;
406
- var defaultMaxWaitTurns = 8;
405
+ var defaultMaxToolTurns = Number.POSITIVE_INFINITY;
406
+ var defaultMaxWaitTurns = Number.POSITIVE_INFINITY;
407
407
  var DefinitionSchema = Schema5.Struct({
408
408
  name: NonEmptyString,
409
409
  instructions: Schema5.optionalKey(Schema5.String),
@@ -14897,11 +14897,11 @@ var TransferInput = Schema73.Struct({
14897
14897
  var ModelInput = Schema73.Struct({
14898
14898
  preset_name: Schema73.optionalKey(Schema73.String),
14899
14899
  instructions: Schema73.optionalKey(Schema73.String),
14900
- model: Schema73.optionalKey(Schema73.Struct({
14900
+ model: Schema73.optionalKey(Schema73.NullOr(Schema73.Struct({
14901
14901
  provider: Schema73.String,
14902
14902
  model: Schema73.String,
14903
14903
  registration_key: Schema73.optionalKey(Schema73.String)
14904
- })),
14904
+ }))),
14905
14905
  tool_names: Schema73.optionalKey(Schema73.Array(Schema73.String)),
14906
14906
  permissions: Schema73.optionalKey(Schema73.Array(Schema73.String)),
14907
14907
  output_schema_ref: Schema73.optionalKey(Schema73.String),
@@ -14911,6 +14911,12 @@ var ModelInput = Schema73.Struct({
14911
14911
  var ModelTransferInput = Schema73.Struct({
14912
14912
  input: Schema73.optionalKey(Schema73.Array(Schema73.Struct({ type: Schema73.Literal("text"), text: Schema73.String })))
14913
14913
  });
14914
+ var normalizeModelInput = (input) => {
14915
+ if (input.model !== null)
14916
+ return input;
14917
+ const { model: _, ...normalized } = input;
14918
+ return normalized;
14919
+ };
14914
14920
  var enabled = (agent) => agent.metadata?.multi_agent_enabled === true;
14915
14921
  var parentContext = (agent) => ({
14916
14922
  ...agent.instructions === undefined ? {} : { instructions: agent.instructions },
@@ -15079,7 +15085,7 @@ var registeredTool2 = (config) => tool(toolName2, {
15079
15085
  permissions: [{ name: permissionName2, value: true }],
15080
15086
  requiredPermissions: [permissionName2],
15081
15087
  metadata: { relay_core_tool: true },
15082
- run: (input, context) => Schema73.decodeUnknownEffect(Input2)(input).pipe(Effect66.flatMap((decoded) => run3(config, toolName2, decoded, context, true)))
15088
+ run: (input, context) => Schema73.decodeUnknownEffect(Input2)(normalizeModelInput(input)).pipe(Effect66.flatMap((decoded) => run3(config, toolName2, decoded, context, true)))
15083
15089
  });
15084
15090
  var transferToolName2 = (name) => `transfer_to_${name.trim().toLowerCase().replaceAll(/[^a-z0-9]+/g, "_").replaceAll(/^_+|_+$/g, "")}`;
15085
15091
  var transferTools = (config) => (config.agent.handoff_targets ?? []).map((target) => {
@@ -16939,8 +16945,11 @@ var turnPolicyFromSnapshot = (snapshot2) => {
16939
16945
  }
16940
16946
  };
16941
16947
  var turnPolicyFromDefinition = (agent) => {
16942
- const cap = exports_turn_policy.recurs(agent.max_tool_turns ?? exports_agent_schema.defaultMaxToolTurns);
16943
- return agent.turn_policy === undefined ? cap : exports_turn_policy.both(cap, turnPolicyFromSnapshot(agent.turn_policy));
16948
+ const policy = agent.turn_policy === undefined ? undefined : turnPolicyFromSnapshot(agent.turn_policy);
16949
+ if (agent.max_tool_turns === undefined)
16950
+ return policy ?? exports_turn_policy.recurs(Number.POSITIVE_INFINITY);
16951
+ const cap = exports_turn_policy.recurs(agent.max_tool_turns);
16952
+ return policy === undefined ? cap : exports_turn_policy.both(cap, policy);
16944
16953
  };
16945
16954
  var availableRegisteredTools = (agent, registered) => {
16946
16955
  const names = toolNames(agent);
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  // @bun
2
2
  import {
3
3
  exports_language_model_registration
4
- } from "./index-d4fnzahj.js";
4
+ } from "./index-5vvma5c3.js";
5
5
  import {
6
6
  Service,
7
7
  exports_client,
8
8
  exports_command,
9
9
  exports_operation
10
- } from "./index-rwq5v9n5.js";
10
+ } from "./index-dztz6stt.js";
11
11
  import {
12
12
  Dialect,
13
13
  __export,
@@ -59,7 +59,7 @@ import {
59
59
  fromDbTimestamp,
60
60
  fromNullableDbTimestamp,
61
61
  timestampParam
62
- } from "./index-eezcjdqe.js";
62
+ } from "./index-e4zcj5d4.js";
63
63
 
64
64
  // src/adapter-outbox.ts
65
65
  var exports_adapter_outbox = {};
@@ -1,4 +1,4 @@
1
- CREATE TABLE `relay_child_fan_outs` (
1
+ CREATE TABLE IF NOT EXISTS `relay_child_fan_outs` (
2
2
  `tenant_id` text NOT NULL DEFAULT 'system',
3
3
  `id` text NOT NULL,
4
4
  `parent_execution_id` text NOT NULL,
@@ -11,9 +11,9 @@ CREATE TABLE `relay_child_fan_outs` (
11
11
  PRIMARY KEY (`tenant_id`, `id`)
12
12
  );
13
13
  --> statement-breakpoint
14
- CREATE INDEX `idx_relay_child_fan_outs_parent` ON `relay_child_fan_outs` (`tenant_id`, `parent_execution_id`);
14
+ CREATE INDEX IF NOT EXISTS `idx_relay_child_fan_outs_parent` ON `relay_child_fan_outs` (`tenant_id`, `parent_execution_id`);
15
15
  --> statement-breakpoint
16
- CREATE TABLE `relay_child_fan_out_members` (
16
+ CREATE TABLE IF NOT EXISTS `relay_child_fan_out_members` (
17
17
  `tenant_id` text NOT NULL DEFAULT 'system',
18
18
  `fan_out_id` text NOT NULL,
19
19
  `child_execution_id` text NOT NULL,
package/dist/sqlite.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  exports_client,
4
4
  exports_operation
5
- } from "./index-rwq5v9n5.js";
5
+ } from "./index-dztz6stt.js";
6
6
  import {
7
7
  __export,
8
8
  exports_activity_version_registry,
@@ -46,7 +46,7 @@ import {
46
46
  exports_wait_service,
47
47
  exports_workflow_definition_repository,
48
48
  exports_workflow_schema
49
- } from "./index-eezcjdqe.js";
49
+ } from "./index-e4zcj5d4.js";
50
50
  // src/sqlite-runtime.ts
51
51
  var exports_sqlite_runtime = {};
52
52
  __export(exports_sqlite_runtime, {
@@ -625,7 +625,7 @@ CREATE INDEX idx_relay_topic_subscriptions_subscriber ON relay_topic_subscriptio
625
625
  `;
626
626
 
627
627
  // ../../migrations/sqlite/0008_child_fan_out.sql
628
- var _0008_child_fan_out_default = "CREATE TABLE `relay_child_fan_outs` (\n `tenant_id` text NOT NULL DEFAULT 'system',\n `id` text NOT NULL,\n `parent_execution_id` text NOT NULL,\n `definition_json` text NOT NULL,\n `state` text NOT NULL DEFAULT 'joining',\n `satisfied_at` integer,\n `failed_at` integer,\n `cancelled_at` integer,\n `created_at` integer NOT NULL,\n PRIMARY KEY (`tenant_id`, `id`)\n);\n--> statement-breakpoint\nCREATE INDEX `idx_relay_child_fan_outs_parent` ON `relay_child_fan_outs` (`tenant_id`, `parent_execution_id`);\n--> statement-breakpoint\nCREATE TABLE `relay_child_fan_out_members` (\n `tenant_id` text NOT NULL DEFAULT 'system',\n `fan_out_id` text NOT NULL,\n `child_execution_id` text NOT NULL,\n `ordinal` integer NOT NULL,\n `state` text NOT NULL DEFAULT 'queued',\n `output_json` text,\n `error` text,\n `completed_at` integer,\n PRIMARY KEY (`tenant_id`, `fan_out_id`, `child_execution_id`),\n UNIQUE (`tenant_id`, `fan_out_id`, `ordinal`)\n);\n";
628
+ var _0008_child_fan_out_default = "CREATE TABLE IF NOT EXISTS `relay_child_fan_outs` (\n `tenant_id` text NOT NULL DEFAULT 'system',\n `id` text NOT NULL,\n `parent_execution_id` text NOT NULL,\n `definition_json` text NOT NULL,\n `state` text NOT NULL DEFAULT 'joining',\n `satisfied_at` integer,\n `failed_at` integer,\n `cancelled_at` integer,\n `created_at` integer NOT NULL,\n PRIMARY KEY (`tenant_id`, `id`)\n);\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `idx_relay_child_fan_outs_parent` ON `relay_child_fan_outs` (`tenant_id`, `parent_execution_id`);\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `relay_child_fan_out_members` (\n `tenant_id` text NOT NULL DEFAULT 'system',\n `fan_out_id` text NOT NULL,\n `child_execution_id` text NOT NULL,\n `ordinal` integer NOT NULL,\n `state` text NOT NULL DEFAULT 'queued',\n `output_json` text,\n `error` text,\n `completed_at` integer,\n PRIMARY KEY (`tenant_id`, `fan_out_id`, `child_execution_id`),\n UNIQUE (`tenant_id`, `fan_out_id`, `ordinal`)\n);\n";
629
629
 
630
630
  // ../../migrations/sqlite/0009_workflow_definitions.sql
631
631
  var _0009_workflow_definitions_default = `CREATE TABLE IF NOT EXISTS relay_workflow_definition_revisions (tenant_id TEXT NOT NULL, workflow_definition_id TEXT NOT NULL, revision INTEGER NOT NULL, digest TEXT NOT NULL, definition_json TEXT NOT NULL, created_at INTEGER NOT NULL, PRIMARY KEY (tenant_id, workflow_definition_id, revision), UNIQUE (tenant_id, workflow_definition_id, digest));
@@ -51,4 +51,4 @@ export declare const migrations: readonly [{
51
51
  readonly file: "0010_workflow_runtime.sql";
52
52
  readonly source: string;
53
53
  }];
54
- export declare const loader: Effect.Effect<(readonly [1 | 2 | 6 | 3 | 4 | 7 | 8 | 5 | 9 | 10, "baseline" | "durable_tool_placement" | "durable_inbox" | "execution_state" | "durable_entities" | "ephemeral_presence" | "topic_subscriptions" | "child_fan_out" | "workflow_definitions" | "workflow_runtime", Effect.Effect<Effect.Effect<void, import("effect/unstable/sql/SqlError").SqlError, SqlClient>, never, never>])[], never, never>;
54
+ export declare const loader: Effect.Effect<(readonly [1 | 2 | 6 | 3 | 4 | 7 | 5 | 8 | 9 | 10, "baseline" | "durable_tool_placement" | "durable_inbox" | "execution_state" | "durable_entities" | "ephemeral_presence" | "topic_subscriptions" | "child_fan_out" | "workflow_definitions" | "workflow_runtime", Effect.Effect<Effect.Effect<void, import("effect/unstable/sql/SqlError").SqlError, SqlClient>, never, never>])[], never, never>;
@@ -84,8 +84,8 @@ export type TurnPolicySnapshot = RecursTurnPolicySnapshot | UntilToolCallTurnPol
84
84
  export declare const maxTurnPolicySnapshotDepth = 16;
85
85
  export declare const maxTurnPolicySnapshotNodes = 64;
86
86
  export declare const TurnPolicySnapshot: Schema.Codec<TurnPolicySnapshot>;
87
- export declare const defaultMaxToolTurns = 8;
88
- export declare const defaultMaxWaitTurns = 8;
87
+ export declare const defaultMaxToolTurns: number;
88
+ export declare const defaultMaxWaitTurns: number;
89
89
  declare const DefinitionSchema: Schema.Struct<{
90
90
  readonly name: Schema.String;
91
91
  readonly instructions: Schema.optionalKey<Schema.String>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@relayfx/sdk",
4
- "version": "0.2.4",
4
+ "version": "0.2.6",
5
5
  "description": "Effect-native durable execution SDK for addressable agents and tools",
6
6
  "type": "module",
7
7
  "exports": {