@axiom-lattice/protocols 4.6.0 → 4.7.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/index.js CHANGED
@@ -20,6 +20,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var index_exports = {};
22
22
  __export(index_exports, {
23
+ AFFINITY_ECHO_HEADER: () => AFFINITY_ECHO_HEADER,
24
+ AFFINITY_MISS_CODE: () => AFFINITY_MISS_CODE,
25
+ AGENT_AFFINITY_HEADER: () => AGENT_AFFINITY_HEADER,
23
26
  AgentType: () => AgentType,
24
27
  ChannelBindingMigrationConflictError: () => ChannelBindingMigrationConflictError,
25
28
  DuplicateChannelBindingSubjectError: () => DuplicateChannelBindingSubjectError,
@@ -40,15 +43,19 @@ __export(index_exports, {
40
43
  ProjectRoomCursorError: () => ProjectRoomCursorError,
41
44
  ProjectTaskStoreUnsupportedError: () => ProjectTaskStoreUnsupportedError,
42
45
  QueueType: () => QueueType,
46
+ REPLICA_HEADER: () => REPLICA_HEADER,
43
47
  ScheduleExecutionType: () => ScheduleExecutionType,
44
48
  ScheduleType: () => ScheduleType,
45
49
  ScheduledTaskStatus: () => ScheduledTaskStatus,
46
50
  UIComponentType: () => UIComponentType,
47
51
  WORKSPACE_PUBLIC_ROOM_PROJECT_PREFIX: () => WORKSPACE_PUBLIC_ROOM_PROJECT_PREFIX,
52
+ affinityEchoHeaders: () => affinityEchoHeaders,
48
53
  assertGenericProjectConfig: () => assertGenericProjectConfig,
54
+ buildAffinityMissChunk: () => buildAffinityMissChunk,
49
55
  createAgentWebAppStreamProjectionContext: () => createAgentWebAppStreamProjectionContext,
50
56
  descriptorDataValue: () => descriptorDataValue,
51
57
  effectiveGrants: () => effectiveGrants,
58
+ firstNonEmptyString: () => firstNonEmptyString,
52
59
  getSubAgentsFromConfig: () => getSubAgentsFromConfig,
53
60
  getToolsFromConfig: () => getToolsFromConfig,
54
61
  hasTools: () => hasTools,
@@ -73,12 +80,14 @@ __export(index_exports, {
73
80
  projectRoomUserEventScope: () => projectRoomUserEventScope,
74
81
  replaceTaskBeliefState: () => replaceTaskBeliefState,
75
82
  requireProjectTaskWorkItemStore: () => requireProjectTaskWorkItemStore,
83
+ resolveRunScope: () => resolveRunScope,
76
84
  snapshotExactArray: () => snapshotExactArray,
77
85
  snapshotExactRecord: () => snapshotExactRecord,
78
86
  snapshotProjectRoomBotMembershipRealtime: () => snapshotProjectRoomBotMembershipRealtime,
79
87
  snapshotProjectRoomMembershipRealtime: () => snapshotProjectRoomMembershipRealtime,
80
88
  snapshotProjectRoomMessageRealtime: () => snapshotProjectRoomMessageRealtime,
81
89
  taskBeliefStatesEqual: () => taskBeliefStatesEqual,
90
+ threadAffinityHeaders: () => threadAffinityHeaders,
82
91
  toModelKey: () => toModelKey,
83
92
  toProjectRoomPublicBotMembership: () => toProjectRoomPublicBotMembership,
84
93
  toProjectRoomPublicMembership: () => toProjectRoomPublicMembership,
@@ -1010,6 +1019,46 @@ function parseQueuedExecutionMode(value) {
1010
1019
  return value;
1011
1020
  }
1012
1021
 
1022
+ // src/RunScope.ts
1023
+ function firstNonEmptyString(...values) {
1024
+ for (const value of values) {
1025
+ if (typeof value === "string" && value.length > 0) return value;
1026
+ }
1027
+ return void 0;
1028
+ }
1029
+ function resolveRunScope(runConfig) {
1030
+ const rc = runConfig && typeof runConfig === "object" && !Array.isArray(runConfig) ? runConfig : {};
1031
+ return {
1032
+ workspaceId: firstNonEmptyString(rc.workspaceId, rc["x-workspace-id"]),
1033
+ projectId: firstNonEmptyString(rc.projectId, rc["x-project-id"])
1034
+ };
1035
+ }
1036
+
1037
+ // src/AgentAffinity.ts
1038
+ var AGENT_AFFINITY_HEADER = "x-axiom-affinity";
1039
+ var REPLICA_HEADER = "x-axiom-replica";
1040
+ var AFFINITY_ECHO_HEADER = "x-axiom-affinity-echo";
1041
+ function affinityEchoHeaders(value) {
1042
+ const single = Array.isArray(value) ? value[0] : value;
1043
+ return typeof single === "string" && single.length > 0 ? { [AFFINITY_ECHO_HEADER]: single } : {};
1044
+ }
1045
+ var AFFINITY_MISS_CODE = "AFFINITY_MISS";
1046
+ function threadAffinityHeaders(threadId) {
1047
+ return threadId ? { [AGENT_AFFINITY_HEADER]: threadId } : {};
1048
+ }
1049
+ function buildAffinityMissChunk(owner, threadId) {
1050
+ return {
1051
+ type: "error",
1052
+ data: {
1053
+ id: "",
1054
+ content: "Run is owned by another replica",
1055
+ code: AFFINITY_MISS_CODE,
1056
+ owner,
1057
+ thread_id: threadId
1058
+ }
1059
+ };
1060
+ }
1061
+
1013
1062
  // src/OpenProtocol.ts
1014
1063
  function effectiveGrants(record) {
1015
1064
  if (record.grants && record.grants.length > 0) return record.grants;
@@ -1046,6 +1095,9 @@ function parseMcpUiRef(value) {
1046
1095
  }
1047
1096
  // Annotate the CommonJS export names for ESM import in node:
1048
1097
  0 && (module.exports = {
1098
+ AFFINITY_ECHO_HEADER,
1099
+ AFFINITY_MISS_CODE,
1100
+ AGENT_AFFINITY_HEADER,
1049
1101
  AgentType,
1050
1102
  ChannelBindingMigrationConflictError,
1051
1103
  DuplicateChannelBindingSubjectError,
@@ -1066,15 +1118,19 @@ function parseMcpUiRef(value) {
1066
1118
  ProjectRoomCursorError,
1067
1119
  ProjectTaskStoreUnsupportedError,
1068
1120
  QueueType,
1121
+ REPLICA_HEADER,
1069
1122
  ScheduleExecutionType,
1070
1123
  ScheduleType,
1071
1124
  ScheduledTaskStatus,
1072
1125
  UIComponentType,
1073
1126
  WORKSPACE_PUBLIC_ROOM_PROJECT_PREFIX,
1127
+ affinityEchoHeaders,
1074
1128
  assertGenericProjectConfig,
1129
+ buildAffinityMissChunk,
1075
1130
  createAgentWebAppStreamProjectionContext,
1076
1131
  descriptorDataValue,
1077
1132
  effectiveGrants,
1133
+ firstNonEmptyString,
1078
1134
  getSubAgentsFromConfig,
1079
1135
  getToolsFromConfig,
1080
1136
  hasTools,
@@ -1099,12 +1155,14 @@ function parseMcpUiRef(value) {
1099
1155
  projectRoomUserEventScope,
1100
1156
  replaceTaskBeliefState,
1101
1157
  requireProjectTaskWorkItemStore,
1158
+ resolveRunScope,
1102
1159
  snapshotExactArray,
1103
1160
  snapshotExactRecord,
1104
1161
  snapshotProjectRoomBotMembershipRealtime,
1105
1162
  snapshotProjectRoomMembershipRealtime,
1106
1163
  snapshotProjectRoomMessageRealtime,
1107
1164
  taskBeliefStatesEqual,
1165
+ threadAffinityHeaders,
1108
1166
  toModelKey,
1109
1167
  toProjectRoomPublicBotMembership,
1110
1168
  toProjectRoomPublicMembership,