@rei-standard/amsg-server 2.6.0-next.9 → 3.0.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/LICENSE +21 -0
- package/README.md +822 -41
- package/dist/adapters/d1.d.ts +693 -0
- package/dist/adapters/factory.d.ts +39 -0
- package/dist/adapters/interface.d.ts +384 -0
- package/dist/adapters/neon.d.ts +105 -0
- package/dist/adapters/pg-shared.d.ts +194 -0
- package/dist/adapters/pg.d.ts +101 -0
- package/dist/adapters/schema.d.ts +57 -0
- package/dist/adapters/schema.sqlite.d.ts +80 -0
- package/dist/chunk-7NMQFTDJ.cjs +148 -0
- package/dist/{chunk-GOBCWCJP.mjs → chunk-GN44PST5.mjs} +68 -1
- package/dist/chunk-RL7V7VSS.mjs +8784 -0
- package/dist/chunk-TKDISKCF.cjs +163 -0
- package/dist/chunk-XKUWMYVF.mjs +163 -0
- package/dist/chunk-YBDQJVFQ.cjs +8784 -0
- package/dist/cloudflare/single-user-worker.d.ts +39 -0
- package/dist/cloudflare.cjs +35 -2
- package/dist/cloudflare.d.ts +11 -2
- package/dist/cloudflare.mjs +36 -3
- package/dist/handlers/cancel-message.d.ts +3 -0
- package/dist/handlers/capabilities.d.ts +4 -0
- package/dist/handlers/client-state-namespaces.d.ts +5 -0
- package/dist/handlers/client-state.d.ts +7 -0
- package/dist/handlers/cloud-data.d.ts +4 -0
- package/dist/handlers/get-message.d.ts +3 -0
- package/dist/handlers/get-user-key.d.ts +3 -0
- package/dist/handlers/init-tenant.d.ts +23 -0
- package/dist/handlers/llm-credentials.d.ts +5 -0
- package/dist/handlers/messages.d.ts +3 -0
- package/dist/handlers/outbox.d.ts +9 -0
- package/dist/handlers/push-subscription.d.ts +5 -0
- package/dist/handlers/schedule-message.d.ts +3 -0
- package/dist/handlers/send-notifications.d.ts +3 -0
- package/dist/handlers/single-user-init.d.ts +13 -0
- package/dist/handlers/update-message.d.ts +3 -0
- package/dist/handlers/vapid-public-key.d.ts +19 -0
- package/dist/index.cjs +133 -44
- package/dist/index.d.cts +145 -766
- package/dist/index.d.ts +145 -766
- package/dist/index.mjs +125 -36
- package/dist/lib/agentic-fire.d.ts +177 -0
- package/dist/lib/client-state-store.d.ts +88 -0
- package/dist/lib/cloud-data-cleanup.d.ts +36 -0
- package/dist/lib/cloud-data-guard.d.ts +14 -0
- package/dist/lib/cloud-data-inventory.d.ts +15 -0
- package/dist/lib/constant-time.d.ts +14 -0
- package/dist/lib/db-errors.d.ts +10 -0
- package/dist/lib/encryption.d.ts +48 -0
- package/dist/lib/errors.d.ts +273 -0
- package/dist/lib/llm-credentials-store.d.ts +147 -0
- package/dist/lib/llm.d.ts +12 -0
- package/dist/lib/message-processor.d.ts +82 -0
- package/dist/lib/outbox-store.d.ts +162 -0
- package/dist/lib/push-policy.d.ts +11 -0
- package/dist/lib/push-subscription-store.d.ts +94 -0
- package/dist/lib/recurrence.d.ts +51 -0
- package/dist/lib/request.d.ts +182 -0
- package/dist/lib/result-emitter.d.ts +60 -0
- package/dist/lib/retry-policy.d.ts +11 -0
- package/dist/lib/run-tick.d.ts +121 -0
- package/dist/lib/schema-version.d.ts +50 -0
- package/dist/lib/state-accessors.d.ts +70 -0
- package/dist/lib/state-chunks.d.ts +65 -0
- package/dist/lib/task-projection.d.ts +92 -0
- package/dist/lib/validation.d.ts +97 -0
- package/dist/lib/version.d.ts +7 -0
- package/dist/lib/webcrypto-utils.d.ts +1 -0
- package/dist/lib/webpush-webcrypto.d.ts +78 -0
- package/dist/{neon-QJ7KYHEX.mjs → neon-GKLT4UY3.mjs} +116 -44
- package/dist/{neon-V4VOH55N.cjs → neon-XHPJZESV.cjs} +121 -49
- package/dist/{pg-6X74HKMX.cjs → pg-FHXQ6BJP.cjs} +109 -48
- package/dist/{pg-DFJSFOJQ.mjs → pg-J4YXRQP5.mjs} +104 -43
- package/dist/single-user.d.ts +106 -0
- package/dist/tenant/blob-store.d.ts +30 -0
- package/dist/tenant/context.d.ts +47 -0
- package/dist/tenant/single-user-context.d.ts +29 -0
- package/dist/tenant/token.d.ts +26 -0
- package/package.json +3 -3
- package/dist/chunk-3QRVP4JE.cjs +0 -2834
- package/dist/chunk-DCKCAGFV.cjs +0 -81
- package/dist/chunk-S6O3MXQO.mjs +0 -2834
- package/dist/cloudflare-kUY6z-k5.d.cts +0 -4460
- package/dist/cloudflare-kUY6z-k5.d.ts +0 -4460
- package/dist/cloudflare.d.cts +0 -2
- package/dist/neon-D8Z2Nn97.d.cts +0 -295
- package/dist/neon-PqNFJIz2.d.ts +0 -295
- package/dist/pg-C48FwCWW.d.cts +0 -289
- package/dist/pg-C5gtWUfU.d.ts +0 -289
- package/dist/schema-BHuyH_6Z.d.cts +0 -88
- package/dist/schema-BHuyH_6Z.d.ts +0 -88
|
@@ -8,8 +8,11 @@ var TABLE_SQL = `
|
|
|
8
8
|
message_type VARCHAR(50) NOT NULL CHECK (message_type IN ('fixed', 'prompted', 'auto', 'instant')),
|
|
9
9
|
next_send_at TIMESTAMP WITH TIME ZONE NOT NULL,
|
|
10
10
|
lease_until TIMESTAMP WITH TIME ZONE,
|
|
11
|
+
retry_after TIMESTAMP WITH TIME ZONE,
|
|
12
|
+
serialize_group VARCHAR(64),
|
|
11
13
|
status VARCHAR(50) NOT NULL DEFAULT 'pending' CHECK (status IN ('pending', 'sent', 'failed')),
|
|
12
14
|
retry_count INTEGER DEFAULT 0,
|
|
15
|
+
last_error TEXT,
|
|
13
16
|
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
|
14
17
|
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
|
|
15
18
|
)
|
|
@@ -19,6 +22,24 @@ var MIGRATIONS = [
|
|
|
19
22
|
name: "add_lease_until",
|
|
20
23
|
sql: "ALTER TABLE scheduled_messages ADD COLUMN IF NOT EXISTS lease_until TIMESTAMP WITH TIME ZONE",
|
|
21
24
|
description: "Task claim lease (2.6.0)"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: "add_retry_after",
|
|
28
|
+
sql: "ALTER TABLE scheduled_messages ADD COLUMN IF NOT EXISTS retry_after TIMESTAMP WITH TIME ZONE",
|
|
29
|
+
description: "Retry backoff, held apart from the claim lease (2.6.0)"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
name: "add_serialize_group",
|
|
33
|
+
sql: "ALTER TABLE scheduled_messages ADD COLUMN IF NOT EXISTS serialize_group VARCHAR(64)",
|
|
34
|
+
description: "Serialization group for runScheduledTick serializeBy (2.6.0)"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: "add_last_error",
|
|
38
|
+
// 上一次投递失败的脱敏摘要(JSON:{ at, occurrence, reason })。payload 里
|
|
39
|
+
// 的 lastError 是密文里的完整记录,这一列是它的明文出口——payload 本身
|
|
40
|
+
// 解密失败时也写得进去,GET /message 对已失败的行也读得出来。
|
|
41
|
+
sql: "ALTER TABLE scheduled_messages ADD COLUMN IF NOT EXISTS last_error TEXT",
|
|
42
|
+
description: "Sanitized last delivery-failure summary (2.6.0)"
|
|
22
43
|
}
|
|
23
44
|
];
|
|
24
45
|
var INDEXES = [
|
|
@@ -56,8 +77,32 @@ var INDEXES = [
|
|
|
56
77
|
WHERE uuid IS NOT NULL`,
|
|
57
78
|
description: "UUID uniqueness guard",
|
|
58
79
|
critical: true
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
name: "idx_serialize_group_lease",
|
|
83
|
+
sql: `CREATE INDEX IF NOT EXISTS idx_serialize_group_lease
|
|
84
|
+
ON scheduled_messages (serialize_group, lease_until)
|
|
85
|
+
WHERE serialize_group IS NOT NULL AND status = 'pending'`,
|
|
86
|
+
description: "Serialization group busy-check index (claimTask)"
|
|
59
87
|
}
|
|
60
88
|
];
|
|
89
|
+
var PUSH_SUBSCRIPTION_TABLE_SQL = `
|
|
90
|
+
CREATE TABLE IF NOT EXISTS push_subscriptions (
|
|
91
|
+
user_id VARCHAR(255) PRIMARY KEY,
|
|
92
|
+
subscription TEXT NOT NULL,
|
|
93
|
+
updated_at BIGINT NOT NULL
|
|
94
|
+
)
|
|
95
|
+
`;
|
|
96
|
+
var LLM_CREDENTIALS_TABLE_SQL = `
|
|
97
|
+
CREATE TABLE IF NOT EXISTS llm_credentials (
|
|
98
|
+
user_id VARCHAR(255) NOT NULL,
|
|
99
|
+
cred_id VARCHAR(128) NOT NULL,
|
|
100
|
+
encrypted_value TEXT NOT NULL,
|
|
101
|
+
created_at TEXT NOT NULL,
|
|
102
|
+
updated_at TEXT NOT NULL,
|
|
103
|
+
PRIMARY KEY (user_id, cred_id)
|
|
104
|
+
)
|
|
105
|
+
`;
|
|
61
106
|
var VERIFY_TABLE_SQL = `
|
|
62
107
|
SELECT table_name
|
|
63
108
|
FROM information_schema.tables
|
|
@@ -71,11 +116,33 @@ var COLUMNS_SQL = `
|
|
|
71
116
|
AND table_name = 'scheduled_messages'
|
|
72
117
|
ORDER BY ordinal_position
|
|
73
118
|
`;
|
|
119
|
+
var UPDATABLE_COLUMNS = /* @__PURE__ */ new Set([
|
|
120
|
+
"user_id",
|
|
121
|
+
"uuid",
|
|
122
|
+
"encrypted_payload",
|
|
123
|
+
"message_type",
|
|
124
|
+
"next_send_at",
|
|
125
|
+
"lease_until",
|
|
126
|
+
"retry_after",
|
|
127
|
+
"serialize_group",
|
|
128
|
+
"status",
|
|
129
|
+
"retry_count",
|
|
130
|
+
"last_error",
|
|
131
|
+
"created_at",
|
|
132
|
+
"updated_at"
|
|
133
|
+
]);
|
|
134
|
+
var TASK_DELIVERY_COLUMNS = "id, user_id, uuid, encrypted_payload, message_type, next_send_at, retry_after, status, retry_count";
|
|
135
|
+
var TASK_DETAIL_COLUMNS = "id, user_id, uuid, encrypted_payload, message_type, next_send_at, status, retry_count, last_error, created_at, updated_at";
|
|
74
136
|
|
|
75
137
|
export {
|
|
76
138
|
TABLE_SQL,
|
|
77
139
|
MIGRATIONS,
|
|
78
140
|
INDEXES,
|
|
141
|
+
PUSH_SUBSCRIPTION_TABLE_SQL,
|
|
142
|
+
LLM_CREDENTIALS_TABLE_SQL,
|
|
79
143
|
VERIFY_TABLE_SQL,
|
|
80
|
-
COLUMNS_SQL
|
|
144
|
+
COLUMNS_SQL,
|
|
145
|
+
UPDATABLE_COLUMNS,
|
|
146
|
+
TASK_DELIVERY_COLUMNS,
|
|
147
|
+
TASK_DETAIL_COLUMNS
|
|
81
148
|
};
|