@rei-standard/amsg-server 2.6.0-next.25 → 2.6.0-next.26
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.
|
@@ -1060,13 +1060,15 @@ function planClientStateCleanup(ttl, now) {
|
|
|
1060
1060
|
}
|
|
1061
1061
|
async function writeClientStateEntries({ db, userId, userKey, entries, now }) {
|
|
1062
1062
|
const nowFn = typeof now === "function" ? now : Date.now;
|
|
1063
|
+
const at = nowFn();
|
|
1063
1064
|
const physicalRows = [];
|
|
1064
1065
|
const cleanups = [];
|
|
1065
1066
|
const rootRowIndexes = [];
|
|
1066
1067
|
const rootRowEntries = [];
|
|
1067
1068
|
let deleted = 0;
|
|
1068
1069
|
for (const entry of entries) {
|
|
1069
|
-
const
|
|
1070
|
+
const rawGuardAt = Number.isInteger(entry.version) && entry.version > 0 ? entry.version : entry.updatedAt;
|
|
1071
|
+
const guardAt = Math.min(rawGuardAt, at);
|
|
1070
1072
|
cleanups.push({
|
|
1071
1073
|
namespace: chunkNamespaceFor(entry.namespace),
|
|
1072
1074
|
keyPrefix: chunkKeyPrefixFor(entry.key),
|
|
@@ -1112,7 +1114,7 @@ async function writeClientStateEntries({ db, userId, userKey, entries, now }) {
|
|
|
1112
1114
|
if (physicalRows.length === 0 && cleanups.length === 0) {
|
|
1113
1115
|
return { upserted: 0, skipped: 0, deleted: 0, skippedEntries: [] };
|
|
1114
1116
|
}
|
|
1115
|
-
const result = await db.upsertClientState(userId, physicalRows, cleanups,
|
|
1117
|
+
const result = await db.upsertClientState(userId, physicalRows, cleanups, at);
|
|
1116
1118
|
let upserted = 0;
|
|
1117
1119
|
let skipped = 0;
|
|
1118
1120
|
const skippedEntries = [];
|
|
@@ -5323,7 +5325,7 @@ function createClientStateHandler(ctx) {
|
|
|
5323
5325
|
}
|
|
5324
5326
|
|
|
5325
5327
|
// src/server/lib/version.js
|
|
5326
|
-
var SERVER_VERSION = true ? "2.6.0-next.
|
|
5328
|
+
var SERVER_VERSION = true ? "2.6.0-next.26" : "0.0.0-dev";
|
|
5327
5329
|
|
|
5328
5330
|
// src/server/handlers/capabilities.js
|
|
5329
5331
|
var SERVER_FEATURES = Object.freeze([
|
|
@@ -1060,13 +1060,15 @@ function planClientStateCleanup(ttl, now) {
|
|
|
1060
1060
|
}
|
|
1061
1061
|
async function writeClientStateEntries({ db, userId, userKey, entries, now }) {
|
|
1062
1062
|
const nowFn = typeof now === "function" ? now : Date.now;
|
|
1063
|
+
const at = nowFn();
|
|
1063
1064
|
const physicalRows = [];
|
|
1064
1065
|
const cleanups = [];
|
|
1065
1066
|
const rootRowIndexes = [];
|
|
1066
1067
|
const rootRowEntries = [];
|
|
1067
1068
|
let deleted = 0;
|
|
1068
1069
|
for (const entry of entries) {
|
|
1069
|
-
const
|
|
1070
|
+
const rawGuardAt = Number.isInteger(entry.version) && entry.version > 0 ? entry.version : entry.updatedAt;
|
|
1071
|
+
const guardAt = Math.min(rawGuardAt, at);
|
|
1070
1072
|
cleanups.push({
|
|
1071
1073
|
namespace: chunkNamespaceFor(entry.namespace),
|
|
1072
1074
|
keyPrefix: chunkKeyPrefixFor(entry.key),
|
|
@@ -1112,7 +1114,7 @@ async function writeClientStateEntries({ db, userId, userKey, entries, now }) {
|
|
|
1112
1114
|
if (physicalRows.length === 0 && cleanups.length === 0) {
|
|
1113
1115
|
return { upserted: 0, skipped: 0, deleted: 0, skippedEntries: [] };
|
|
1114
1116
|
}
|
|
1115
|
-
const result = await db.upsertClientState(userId, physicalRows, cleanups,
|
|
1117
|
+
const result = await db.upsertClientState(userId, physicalRows, cleanups, at);
|
|
1116
1118
|
let upserted = 0;
|
|
1117
1119
|
let skipped = 0;
|
|
1118
1120
|
const skippedEntries = [];
|
|
@@ -5323,7 +5325,7 @@ function createClientStateHandler(ctx) {
|
|
|
5323
5325
|
}
|
|
5324
5326
|
|
|
5325
5327
|
// src/server/lib/version.js
|
|
5326
|
-
var SERVER_VERSION = true ? "2.6.0-next.
|
|
5328
|
+
var SERVER_VERSION = true ? "2.6.0-next.26" : "0.0.0-dev";
|
|
5327
5329
|
|
|
5328
5330
|
// src/server/handlers/capabilities.js
|
|
5329
5331
|
var SERVER_FEATURES = Object.freeze([
|
package/dist/cloudflare.cjs
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
|
|
29
|
-
var
|
|
29
|
+
var _chunkGXYVOEF3cjs = require('./chunk-GXYVOEF3.cjs');
|
|
30
30
|
require('./chunk-7NMQFTDJ.cjs');
|
|
31
31
|
|
|
32
32
|
|
|
@@ -56,4 +56,4 @@ require('./chunk-7NMQFTDJ.cjs');
|
|
|
56
56
|
|
|
57
57
|
|
|
58
58
|
|
|
59
|
-
exports.DEFAULT_MAX_REQUEST_BODY_BYTES =
|
|
59
|
+
exports.DEFAULT_MAX_REQUEST_BODY_BYTES = _chunkGXYVOEF3cjs.DEFAULT_MAX_REQUEST_BODY_BYTES; exports.MAX_PUSH_PAYLOAD_BYTES = _chunkGXYVOEF3cjs.MAX_PUSH_PAYLOAD_BYTES; exports.NonRetryableError = _chunkGXYVOEF3cjs.NonRetryableError; exports.PUSH_ENVELOPE_RESERVED_BYTES = _chunkGXYVOEF3cjs.PUSH_ENVELOPE_RESERVED_BYTES; exports.SCHEMA_VERSION = _chunkGXYVOEF3cjs.SCHEMA_VERSION; exports.WEB_PUSH_ENCRYPTION_OVERHEAD_BYTES = _chunkGXYVOEF3cjs.WEB_PUSH_ENCRYPTION_OVERHEAD_BYTES; exports.WEB_PUSH_MAX_BODY_BYTES = _chunkGXYVOEF3cjs.WEB_PUSH_MAX_BODY_BYTES; exports.advanceOccurrence = _chunkGXYVOEF3cjs.advanceOccurrence; exports.createD1Adapter = _chunkGXYVOEF3cjs.createD1Adapter; exports.createSingleUserCloudflareWorker = _chunkGXYVOEF3cjs.createSingleUserCloudflareWorker; exports.createSingleUserServer = _chunkGXYVOEF3cjs.createSingleUserServer; exports.createWebCryptoWebPush = _chunkGXYVOEF3cjs.createWebCryptoWebPush; exports.decryptFromStorage = _chunkGXYVOEF3cjs.decryptFromStorage; exports.decryptPayload = _chunkGXYVOEF3cjs.decryptPayload; exports.deriveUserEncryptionKey = _chunkGXYVOEF3cjs.deriveUserEncryptionKey; exports.encryptForStorage = _chunkGXYVOEF3cjs.encryptForStorage; exports.ensureSchema = _chunkGXYVOEF3cjs.ensureSchema; exports.getSchemaVersion = _chunkGXYVOEF3cjs.getSchemaVersion; exports.isNonRetryableError = _chunkGXYVOEF3cjs.isNonRetryableError; exports.isValidTimeZoneId = _chunkGXYVOEF3cjs.isValidTimeZoneId; exports.measurePushPayload = _chunkGXYVOEF3cjs.measurePushPayload; exports.nextFutureOccurrence = _chunkGXYVOEF3cjs.nextFutureOccurrence; exports.planNextOccurrence = _chunkGXYVOEF3cjs.planNextOccurrence; exports.readRequestBody = _chunkGXYVOEF3cjs.readRequestBody; exports.runScheduledTick = _chunkGXYVOEF3cjs.runScheduledTick; exports.runTask = _chunkGXYVOEF3cjs.runTask; exports.summarizeErrorCause = _chunkGXYVOEF3cjs.summarizeErrorCause;
|
package/dist/cloudflare.mjs
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
|
|
72
72
|
|
|
73
73
|
|
|
74
|
-
var
|
|
74
|
+
var _chunkGXYVOEF3cjs = require('./chunk-GXYVOEF3.cjs');
|
|
75
75
|
require('./chunk-7NMQFTDJ.cjs');
|
|
76
76
|
|
|
77
77
|
// src/server/adapters/factory.js
|
|
@@ -105,7 +105,7 @@ async function createAdapter(config) {
|
|
|
105
105
|
// src/server/handlers/init-tenant.js
|
|
106
106
|
function createInitTenantHandler(ctx) {
|
|
107
107
|
async function POST(headers, body) {
|
|
108
|
-
const initSecret =
|
|
108
|
+
const initSecret = _chunkGXYVOEF3cjs.getHeader.call(void 0, headers, "x-init-secret");
|
|
109
109
|
if (ctx.tenant.initSecret && initSecret !== ctx.tenant.initSecret) {
|
|
110
110
|
return {
|
|
111
111
|
status: 401,
|
|
@@ -118,7 +118,7 @@ function createInitTenantHandler(ctx) {
|
|
|
118
118
|
}
|
|
119
119
|
};
|
|
120
120
|
}
|
|
121
|
-
const parsed =
|
|
121
|
+
const parsed = _chunkGXYVOEF3cjs.parseJsonBody.call(void 0, body);
|
|
122
122
|
if (!parsed.ok) {
|
|
123
123
|
return {
|
|
124
124
|
status: 400,
|
|
@@ -132,7 +132,7 @@ function createInitTenantHandler(ctx) {
|
|
|
132
132
|
const tenantId = payload.tenantId || void 0;
|
|
133
133
|
const driver = payload.driver;
|
|
134
134
|
const databaseUrl = payload.databaseUrl || payload.connectionString;
|
|
135
|
-
if (tenantId && !
|
|
135
|
+
if (tenantId && !_chunkGXYVOEF3cjs.isValidUUIDv4.call(void 0, tenantId)) {
|
|
136
136
|
return {
|
|
137
137
|
status: 400,
|
|
138
138
|
body: {
|
|
@@ -252,7 +252,7 @@ function createSendNotificationsHandler(ctx) {
|
|
|
252
252
|
}
|
|
253
253
|
};
|
|
254
254
|
}
|
|
255
|
-
const data = await
|
|
255
|
+
const data = await _chunkGXYVOEF3cjs.runScheduledTick.call(void 0, { ...ctx, db, masterKey });
|
|
256
256
|
return { status: 200, body: { success: true, data } };
|
|
257
257
|
}
|
|
258
258
|
return { POST };
|
|
@@ -274,16 +274,16 @@ function encryptConfig(config, kekBuffer) {
|
|
|
274
274
|
const plaintext = Buffer.from(JSON.stringify(config), "utf8");
|
|
275
275
|
const ciphertext = Buffer.concat([cipher.update(plaintext), cipher.final()]);
|
|
276
276
|
const authTag = cipher.getAuthTag();
|
|
277
|
-
return `v1.${
|
|
277
|
+
return `v1.${_chunkGXYVOEF3cjs.bytesToBase64Url.call(void 0, iv)}.${_chunkGXYVOEF3cjs.bytesToBase64Url.call(void 0, authTag)}.${_chunkGXYVOEF3cjs.bytesToBase64Url.call(void 0, ciphertext)}`;
|
|
278
278
|
}
|
|
279
279
|
function decryptConfig(encrypted, kekBuffer) {
|
|
280
280
|
const parts = String(encrypted || "").split(".");
|
|
281
281
|
if (parts.length !== 4 || parts[0] !== "v1") {
|
|
282
282
|
throw new Error("INVALID_TENANT_CONFIG");
|
|
283
283
|
}
|
|
284
|
-
const iv =
|
|
285
|
-
const authTag =
|
|
286
|
-
const ciphertext =
|
|
284
|
+
const iv = _chunkGXYVOEF3cjs.base64UrlToBytes.call(void 0, parts[1]);
|
|
285
|
+
const authTag = _chunkGXYVOEF3cjs.base64UrlToBytes.call(void 0, parts[2]);
|
|
286
|
+
const ciphertext = _chunkGXYVOEF3cjs.base64UrlToBytes.call(void 0, parts[3]);
|
|
287
287
|
const decipher = _crypto.createDecipheriv.call(void 0, "aes-256-gcm", kekBuffer, iv);
|
|
288
288
|
decipher.setAuthTag(authTag);
|
|
289
289
|
const plaintext = Buffer.concat([decipher.update(ciphertext), decipher.final()]).toString("utf8");
|
|
@@ -351,7 +351,7 @@ function createTenantBlobStore(options) {
|
|
|
351
351
|
// src/server/tenant/token.js
|
|
352
352
|
|
|
353
353
|
function sign(input, secret) {
|
|
354
|
-
return
|
|
354
|
+
return _chunkGXYVOEF3cjs.bytesToBase64Url.call(void 0, _crypto.createHmac.call(void 0, "sha256", secret).update(input).digest());
|
|
355
355
|
}
|
|
356
356
|
function nowEpochSeconds() {
|
|
357
357
|
return Math.floor(Date.now() / 1e3);
|
|
@@ -367,8 +367,8 @@ function createTenantToken(params, secret) {
|
|
|
367
367
|
v: 1
|
|
368
368
|
};
|
|
369
369
|
const header = { alg: "HS256", typ: "JWT" };
|
|
370
|
-
const encodedHeader =
|
|
371
|
-
const encodedPayload =
|
|
370
|
+
const encodedHeader = _chunkGXYVOEF3cjs.bytesToBase64Url.call(void 0, _chunkGXYVOEF3cjs.utf8.call(void 0, JSON.stringify(header)));
|
|
371
|
+
const encodedPayload = _chunkGXYVOEF3cjs.bytesToBase64Url.call(void 0, _chunkGXYVOEF3cjs.utf8.call(void 0, JSON.stringify(payload)));
|
|
372
372
|
const signingInput = `${encodedHeader}.${encodedPayload}`;
|
|
373
373
|
const signature = sign(signingInput, secret);
|
|
374
374
|
return `${signingInput}.${signature}`;
|
|
@@ -387,17 +387,17 @@ function verifyTenantToken(token, secret, options = {}) {
|
|
|
387
387
|
let receivedBytes;
|
|
388
388
|
let expectedBytes;
|
|
389
389
|
try {
|
|
390
|
-
receivedBytes =
|
|
391
|
-
expectedBytes =
|
|
390
|
+
receivedBytes = _chunkGXYVOEF3cjs.base64UrlToBytes.call(void 0, receivedSignature);
|
|
391
|
+
expectedBytes = _chunkGXYVOEF3cjs.base64UrlToBytes.call(void 0, expectedSignature);
|
|
392
392
|
} catch (e) {
|
|
393
393
|
throw new Error("INVALID_TENANT_AUTH");
|
|
394
394
|
}
|
|
395
|
-
if (!
|
|
395
|
+
if (!_chunkGXYVOEF3cjs.timingSafeEqualBytes.call(void 0, receivedBytes, expectedBytes)) {
|
|
396
396
|
throw new Error("INVALID_TENANT_AUTH");
|
|
397
397
|
}
|
|
398
398
|
let payload;
|
|
399
399
|
try {
|
|
400
|
-
payload = JSON.parse(
|
|
400
|
+
payload = JSON.parse(_chunkGXYVOEF3cjs.utf8Decode.call(void 0, _chunkGXYVOEF3cjs.base64UrlToBytes.call(void 0, encodedPayload)));
|
|
401
401
|
} catch (e2) {
|
|
402
402
|
throw new Error("INVALID_TENANT_AUTH");
|
|
403
403
|
}
|
|
@@ -621,15 +621,15 @@ async function createReiServer(config) {
|
|
|
621
621
|
return {
|
|
622
622
|
handlers: {
|
|
623
623
|
initTenant: createInitTenantHandler(ctx),
|
|
624
|
-
getUserKey:
|
|
625
|
-
scheduleMessage:
|
|
624
|
+
getUserKey: _chunkGXYVOEF3cjs.createGetUserKeyHandler.call(void 0, ctx),
|
|
625
|
+
scheduleMessage: _chunkGXYVOEF3cjs.createScheduleMessageHandler.call(void 0, ctx),
|
|
626
626
|
sendNotifications: createSendNotificationsHandler(ctx),
|
|
627
|
-
updateMessage:
|
|
628
|
-
cancelMessage:
|
|
629
|
-
messages:
|
|
630
|
-
getMessage:
|
|
631
|
-
pushSubscription:
|
|
632
|
-
llmCredentials:
|
|
627
|
+
updateMessage: _chunkGXYVOEF3cjs.createUpdateMessageHandler.call(void 0, ctx),
|
|
628
|
+
cancelMessage: _chunkGXYVOEF3cjs.createCancelMessageHandler.call(void 0, ctx),
|
|
629
|
+
messages: _chunkGXYVOEF3cjs.createMessagesHandler.call(void 0, ctx),
|
|
630
|
+
getMessage: _chunkGXYVOEF3cjs.createGetMessageHandler.call(void 0, ctx),
|
|
631
|
+
pushSubscription: _chunkGXYVOEF3cjs.createPushSubscriptionHandler.call(void 0, ctx),
|
|
632
|
+
llmCredentials: _chunkGXYVOEF3cjs.createLlmCredentialsHandler.call(void 0, ctx)
|
|
633
633
|
}
|
|
634
634
|
};
|
|
635
635
|
}
|
|
@@ -695,4 +695,4 @@ async function createReiServer(config) {
|
|
|
695
695
|
|
|
696
696
|
|
|
697
697
|
|
|
698
|
-
exports.CORS_ALLOW_HEADERS =
|
|
698
|
+
exports.CORS_ALLOW_HEADERS = _chunkGXYVOEF3cjs.CORS_ALLOW_HEADERS; exports.CORS_ALLOW_METHODS = _chunkGXYVOEF3cjs.CORS_ALLOW_METHODS; exports.CRED_ID_MAX_LENGTH = _chunkGXYVOEF3cjs.CRED_ID_MAX_LENGTH; exports.CRED_PUT_BATCH_MAX = _chunkGXYVOEF3cjs.CRED_PUT_BATCH_MAX; exports.CRED_REFS_MAX_ENTRIES = _chunkGXYVOEF3cjs.CRED_REFS_MAX_ENTRIES; exports.CRED_ROWS_PER_USER_MAX = _chunkGXYVOEF3cjs.CRED_ROWS_PER_USER_MAX; exports.DEFAULT_CLAIM_LEASE_MS = _chunkGXYVOEF3cjs.DEFAULT_CLAIM_LEASE_MS; exports.DEFAULT_HEARTBEAT_LEASE_TTL_MS = _chunkGXYVOEF3cjs.DEFAULT_HEARTBEAT_LEASE_TTL_MS; exports.DEFAULT_LEASE_HEARTBEAT_MS = _chunkGXYVOEF3cjs.DEFAULT_LEASE_HEARTBEAT_MS; exports.DEFAULT_MAX_REQUEST_BODY_BYTES = _chunkGXYVOEF3cjs.DEFAULT_MAX_REQUEST_BODY_BYTES; exports.DEFAULT_MAX_SCHEDULED_TASKS_PER_FIRE = _chunkGXYVOEF3cjs.DEFAULT_MAX_SCHEDULED_TASKS_PER_FIRE; exports.DEFAULT_MAX_TOOL_ITERATIONS = _chunkGXYVOEF3cjs.DEFAULT_MAX_TOOL_ITERATIONS; exports.DEFAULT_TOTAL_TIMEOUT_MS = _chunkGXYVOEF3cjs.DEFAULT_TOTAL_TIMEOUT_MS; exports.DeploymentConfigError = _chunkGXYVOEF3cjs.DeploymentConfigError; exports.MAX_PUSH_PAYLOAD_BYTES = _chunkGXYVOEF3cjs.MAX_PUSH_PAYLOAD_BYTES; exports.MAX_TASK_PAYLOAD_BYTES = _chunkGXYVOEF3cjs.MAX_TASK_PAYLOAD_BYTES; exports.MIN_SCHEDULE_LEAD_MS = _chunkGXYVOEF3cjs.MIN_SCHEDULE_LEAD_MS; exports.NonRetryableError = _chunkGXYVOEF3cjs.NonRetryableError; exports.PUSH_ENVELOPE_RESERVED_BYTES = _chunkGXYVOEF3cjs.PUSH_ENVELOPE_RESERVED_BYTES; exports.SCHEMA_VERSION = _chunkGXYVOEF3cjs.SCHEMA_VERSION; exports.WEB_PUSH_ENCRYPTION_OVERHEAD_BYTES = _chunkGXYVOEF3cjs.WEB_PUSH_ENCRYPTION_OVERHEAD_BYTES; exports.WEB_PUSH_MAX_BODY_BYTES = _chunkGXYVOEF3cjs.WEB_PUSH_MAX_BODY_BYTES; exports.advanceOccurrence = _chunkGXYVOEF3cjs.advanceOccurrence; exports.createAdapter = createAdapter; exports.createD1Adapter = _chunkGXYVOEF3cjs.createD1Adapter; exports.createReiServer = createReiServer; exports.createSingleUserCloudflareWorker = _chunkGXYVOEF3cjs.createSingleUserCloudflareWorker; exports.createSingleUserServer = _chunkGXYVOEF3cjs.createSingleUserServer; exports.createTenantToken = createTenantToken; exports.createWebCryptoWebPush = _chunkGXYVOEF3cjs.createWebCryptoWebPush; exports.decryptFromStorage = _chunkGXYVOEF3cjs.decryptFromStorage; exports.decryptPayload = _chunkGXYVOEF3cjs.decryptPayload; exports.deriveUserEncryptionKey = _chunkGXYVOEF3cjs.deriveUserEncryptionKey; exports.encryptForStorage = _chunkGXYVOEF3cjs.encryptForStorage; exports.ensureSchema = _chunkGXYVOEF3cjs.ensureSchema; exports.getSchemaVersion = _chunkGXYVOEF3cjs.getSchemaVersion; exports.hasChatCredRef = _chunkGXYVOEF3cjs.hasChatCredRef; exports.isNonRetryableError = _chunkGXYVOEF3cjs.isNonRetryableError; exports.isValidCredId = _chunkGXYVOEF3cjs.isValidCredId; exports.isValidISO8601 = _chunkGXYVOEF3cjs.isValidISO8601; exports.isValidTimeZoneId = _chunkGXYVOEF3cjs.isValidTimeZoneId; exports.isValidUUID = _chunkGXYVOEF3cjs.isValidUUID; exports.isValidUUIDv4 = _chunkGXYVOEF3cjs.isValidUUIDv4; exports.isValidUrl = _chunkGXYVOEF3cjs.isValidUrl; exports.measurePushPayload = _chunkGXYVOEF3cjs.measurePushPayload; exports.nextFutureOccurrence = _chunkGXYVOEF3cjs.nextFutureOccurrence; exports.planNextOccurrence = _chunkGXYVOEF3cjs.planNextOccurrence; exports.readRequestBody = _chunkGXYVOEF3cjs.readRequestBody; exports.resolveLlmCredential = _chunkGXYVOEF3cjs.resolveLlmCredential; exports.runScheduledTick = _chunkGXYVOEF3cjs.runScheduledTick; exports.runTask = _chunkGXYVOEF3cjs.runTask; exports.sanitizeErrorSummary = _chunkGXYVOEF3cjs.sanitizeErrorSummary; exports.summarizeErrorCause = _chunkGXYVOEF3cjs.summarizeErrorCause; exports.supportsLlmCredentialsStore = _chunkGXYVOEF3cjs.supportsLlmCredentialsStore; exports.validateAvatarUrl = _chunkGXYVOEF3cjs.validateAvatarUrl; exports.validateCredRefs = _chunkGXYVOEF3cjs.validateCredRefs; exports.validateCredValue = _chunkGXYVOEF3cjs.validateCredValue; exports.validateLlmMessagesArray = _chunkGXYVOEF3cjs.validateLlmMessagesArray; exports.validateScheduleMessagePayload = _chunkGXYVOEF3cjs.validateScheduleMessagePayload; exports.validateSplitPattern = _chunkGXYVOEF3cjs.validateSplitPattern; exports.verifyTenantToken = verifyTenantToken;
|
package/dist/index.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rei-standard/amsg-server",
|
|
3
|
-
"version": "2.6.0-next.
|
|
3
|
+
"version": "2.6.0-next.26",
|
|
4
4
|
"description": "ReiStandard Active Messaging server SDK with pluggable database adapters. Three-axis push schema (messageKind / messageType / messageSubtype) from @rei-standard/amsg-shared. Auto-emits ReasoningPush when the LLM response carries reasoning_content.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|