@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/.turbo/turbo-build.log +10 -10
- package/CHANGELOG.md +59 -0
- package/dist/index.d.mts +152 -2
- package/dist/index.d.ts +152 -2
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +49 -0
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/AgentAffinity.ts +50 -0
- package/src/LeaseStoreProtocol.ts +44 -0
- package/src/OutboxStoreProtocol.ts +30 -0
- package/src/ProjectRoomRealtimeProtocol.ts +1 -1
- package/src/RunScope.ts +44 -0
- package/src/ScheduleLatticeProtocol.ts +18 -0
- package/src/__tests__/RunScope.test.ts +38 -0
- package/src/__tests__/agentAffinity.test.ts +45 -0
- package/src/index.ts +4 -0
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,
|