@x12i/memorix-service 3.12.0 → 3.12.3

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.
Files changed (80) hide show
  1. package/dist/activity-ring.d.ts +22 -1
  2. package/dist/activity-ring.d.ts.map +1 -1
  3. package/dist/activity-ring.js +44 -0
  4. package/dist/activity-ring.js.map +1 -1
  5. package/dist/activity-routes.d.ts.map +1 -1
  6. package/dist/activity-routes.js +3 -2
  7. package/dist/activity-routes.js.map +1 -1
  8. package/dist/activity-ui.d.ts.map +1 -1
  9. package/dist/activity-ui.js +200 -11
  10. package/dist/activity-ui.js.map +1 -1
  11. package/dist/app.d.ts.map +1 -1
  12. package/dist/app.js +5 -1
  13. package/dist/app.js.map +1 -1
  14. package/dist/catalog-live-routes.d.ts +4 -0
  15. package/dist/catalog-live-routes.d.ts.map +1 -0
  16. package/dist/catalog-live-routes.js +12 -0
  17. package/dist/catalog-live-routes.js.map +1 -0
  18. package/dist/catalog-live-ui.d.ts +3 -0
  19. package/dist/catalog-live-ui.d.ts.map +1 -0
  20. package/dist/catalog-live-ui.js +230 -0
  21. package/dist/catalog-live-ui.js.map +1 -0
  22. package/dist/catalog-live.d.ts +31 -0
  23. package/dist/catalog-live.d.ts.map +1 -0
  24. package/dist/catalog-live.js +67 -0
  25. package/dist/catalog-live.js.map +1 -0
  26. package/dist/data-changes-routes.js +1 -1
  27. package/dist/data-changes-routes.js.map +1 -1
  28. package/dist/data-changes-ui.js +1 -1
  29. package/dist/hooks/backfill.d.ts +31 -0
  30. package/dist/hooks/backfill.d.ts.map +1 -0
  31. package/dist/hooks/backfill.js +78 -0
  32. package/dist/hooks/backfill.js.map +1 -0
  33. package/dist/hooks/enqueue.d.ts +6 -1
  34. package/dist/hooks/enqueue.d.ts.map +1 -1
  35. package/dist/hooks/enqueue.js +15 -1
  36. package/dist/hooks/enqueue.js.map +1 -1
  37. package/dist/hooks/request-trigger.d.ts +16 -0
  38. package/dist/hooks/request-trigger.d.ts.map +1 -0
  39. package/dist/hooks/request-trigger.js +31 -0
  40. package/dist/hooks/request-trigger.js.map +1 -0
  41. package/dist/hooks/store.d.ts +1 -0
  42. package/dist/hooks/store.d.ts.map +1 -1
  43. package/dist/hooks/store.js +105 -0
  44. package/dist/hooks/store.js.map +1 -1
  45. package/dist/hooks/types.d.ts +33 -0
  46. package/dist/hooks/types.d.ts.map +1 -1
  47. package/dist/hooks/types.js +12 -0
  48. package/dist/hooks/types.js.map +1 -1
  49. package/dist/hooks/worker.d.ts +0 -1
  50. package/dist/hooks/worker.d.ts.map +1 -1
  51. package/dist/hooks/worker.js +1 -8
  52. package/dist/hooks/worker.js.map +1 -1
  53. package/dist/hooks-live-routes.d.ts +4 -0
  54. package/dist/hooks-live-routes.d.ts.map +1 -0
  55. package/dist/hooks-live-routes.js +13 -0
  56. package/dist/hooks-live-routes.js.map +1 -0
  57. package/dist/hooks-live-ui.d.ts +3 -0
  58. package/dist/hooks-live-ui.d.ts.map +1 -0
  59. package/dist/hooks-live-ui.js +228 -0
  60. package/dist/hooks-live-ui.js.map +1 -0
  61. package/dist/hooks-live.d.ts +38 -0
  62. package/dist/hooks-live.d.ts.map +1 -0
  63. package/dist/hooks-live.js +51 -0
  64. package/dist/hooks-live.js.map +1 -0
  65. package/dist/live-ops-nav.d.ts.map +1 -1
  66. package/dist/live-ops-nav.js +8 -0
  67. package/dist/live-ops-nav.js.map +1 -1
  68. package/dist/openapi/openapi.json +57 -1
  69. package/dist/platform.d.ts +2 -0
  70. package/dist/platform.d.ts.map +1 -1
  71. package/dist/platform.js +9 -1
  72. package/dist/platform.js.map +1 -1
  73. package/dist/routes/data.d.ts.map +1 -1
  74. package/dist/routes/data.js +43 -15
  75. package/dist/routes/data.js.map +1 -1
  76. package/dist/routes/hooks.d.ts.map +1 -1
  77. package/dist/routes/hooks.js +55 -1
  78. package/dist/routes/hooks.js.map +1 -1
  79. package/openapi/openapi.json +57 -1
  80. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"enqueue.js","sourceRoot":"","sources":["../../src/hooks/enqueue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGjE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAgB,EAChB,IAAuB,EACvB,IAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACtD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjC,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5G,MAAM,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"enqueue.js","sourceRoot":"","sources":["../../src/hooks/enqueue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AASjE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAgB,EAChB,IAAuB,EACvB,IAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACtD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5G,MAAM,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACnC,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE,CAAC;YACnC,MAAM,KAAK,CAAC,YAAY,CAAC;gBACvB,cAAc,EAAE,YAAY,CAAC,cAAc;gBAC3C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC/B,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;gBACnC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;gBACrC,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC;SAC5E,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,OAAO,CAAC,CAAC;QACxE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { HookEnqueueResult } from "./enqueue.js";
2
+ /** Remember the hook enqueue result for the write running on this async stack. */
3
+ export declare function noteHookTrigger(result: HookEnqueueResult): void;
4
+ /**
5
+ * Run a content write. `hooks` is set only when the commit actually checked subscriptions.
6
+ * A suppressed write leaves it unset.
7
+ */
8
+ export declare function runHookTrigger<T>(fn: () => Promise<T>): Promise<{
9
+ value: T;
10
+ hooks?: {
11
+ queued: number;
12
+ subscriptionIds: string[];
13
+ failed?: boolean;
14
+ };
15
+ }>;
16
+ //# sourceMappingURL=request-trigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-trigger.d.ts","sourceRoot":"","sources":["../../src/hooks/request-trigger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAWtD,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAO/D;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,CAAC,CAYhG"}
@@ -0,0 +1,31 @@
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ const storage = new AsyncLocalStorage();
3
+ /** Remember the hook enqueue result for the write running on this async stack. */
4
+ export function noteHookTrigger(result) {
5
+ const slot = storage.getStore();
6
+ if (!slot)
7
+ return;
8
+ slot.noted = true;
9
+ slot.queued = result.queued;
10
+ slot.subscriptionIds = result.subscriptionIds;
11
+ slot.failed = result.failed;
12
+ }
13
+ /**
14
+ * Run a content write. `hooks` is set only when the commit actually checked subscriptions.
15
+ * A suppressed write leaves it unset.
16
+ */
17
+ export async function runHookTrigger(fn) {
18
+ const slot = { noted: false, queued: 0, subscriptionIds: [] };
19
+ const value = await storage.run(slot, fn);
20
+ if (!slot.noted)
21
+ return { value };
22
+ return {
23
+ value,
24
+ hooks: {
25
+ queued: slot.queued,
26
+ subscriptionIds: slot.subscriptionIds,
27
+ failed: slot.failed,
28
+ },
29
+ };
30
+ }
31
+ //# sourceMappingURL=request-trigger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-trigger.js","sourceRoot":"","sources":["../../src/hooks/request-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAUrD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAQ,CAAC;AAE9C,kFAAkF;AAClF,MAAM,UAAU,eAAe,CAAC,MAAyB;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAChC,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5B,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAoB;IAEpB,MAAM,IAAI,GAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;IACpE,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAClC,OAAO;QACL,KAAK;QACL,KAAK,EAAE;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;KACF,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { Db } from "mongodb";
2
2
  import type { HookStore } from "./types.js";
3
+ export declare function hookTriggerId(subscriptionId: string, recordId: string): string;
3
4
  export declare function createMemoryHookStore(): HookStore;
4
5
  export declare function createMongoHookStore(db: Db): HookStore;
5
6
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/hooks/store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAgD,SAAS,EAAoB,MAAM,YAAY,CAAC;AAiB5G,wBAAgB,qBAAqB,IAAI,SAAS,CAwFjD;AAeD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE,GAAG,SAAS,CAyHtD"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/hooks/store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAIV,SAAS,EAGV,MAAM,YAAY,CAAC;AAOpB,wBAAgB,aAAa,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE9E;AAiBD,wBAAgB,qBAAqB,IAAI,SAAS,CA4HjD;AAgBD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE,GAAG,SAAS,CAiLtD"}
@@ -1,6 +1,13 @@
1
1
  const SUBSCRIPTIONS = "content_hook_subscriptions";
2
2
  const DELIVERIES = "content_hook_deliveries";
3
+ const TRIGGERS = "content_hook_triggers";
3
4
  const SEQ = "content_hook_seq";
5
+ export function hookTriggerId(subscriptionId, recordId) {
6
+ return `${subscriptionId}\0${recordId}`;
7
+ }
8
+ function isDuplicateKey(err) {
9
+ return typeof err === "object" && err !== null && err.code === 11000;
10
+ }
4
11
  function isDue(row, nowIso) {
5
12
  if (row.status !== "pending")
6
13
  return false;
@@ -16,6 +23,7 @@ function isTerminal(status) {
16
23
  export function createMemoryHookStore() {
17
24
  const subscriptions = new Map();
18
25
  const deliveries = new Map();
26
+ const triggers = new Map();
19
27
  let seq = 0;
20
28
  return {
21
29
  async saveSubscription(row) {
@@ -40,6 +48,28 @@ export function createMemoryHookStore() {
40
48
  .sort((a, b) => b.seq - a.seq)
41
49
  .slice(0, opts.limit);
42
50
  },
51
+ async listInbox(subscriptionId, limit) {
52
+ return [...deliveries.values()]
53
+ .filter((row) => row.subscriptionId === subscriptionId && row.status === "pending")
54
+ .sort((a, b) => a.seq - b.seq)
55
+ .slice(0, limit);
56
+ },
57
+ async findDelivery(deliveryId) {
58
+ return deliveries.get(deliveryId) ?? null;
59
+ },
60
+ async countDeliveries(subscriptionId) {
61
+ const counts = {
62
+ pending: 0,
63
+ delivered: 0,
64
+ rejected: 0,
65
+ failed: 0,
66
+ };
67
+ for (const row of deliveries.values()) {
68
+ if (row.subscriptionId === subscriptionId)
69
+ counts[row.status] += 1;
70
+ }
71
+ return counts;
72
+ },
43
73
  async listActionable(nowIso) {
44
74
  return [...deliveries.values()].filter((row) => isDue(row, nowIso)).sort((a, b) => a.seq - b.seq);
45
75
  },
@@ -96,6 +126,22 @@ export function createMemoryHookStore() {
96
126
  deliveries.delete(id);
97
127
  }
98
128
  },
129
+ async claimTrigger(mark) {
130
+ const id = hookTriggerId(mark.subscriptionId, mark.recordId);
131
+ if (triggers.has(id))
132
+ return false;
133
+ triggers.set(id, mark);
134
+ return true;
135
+ },
136
+ async releaseTrigger(subscriptionId, recordId) {
137
+ triggers.delete(hookTriggerId(subscriptionId, recordId));
138
+ },
139
+ async deleteTriggers(subscriptionId) {
140
+ for (const [id, mark] of triggers) {
141
+ if (mark.subscriptionId === subscriptionId)
142
+ triggers.delete(id);
143
+ }
144
+ },
99
145
  async nextSeq(count) {
100
146
  const first = seq + 1;
101
147
  seq += count;
@@ -114,6 +160,7 @@ function deliveryFrom(doc) {
114
160
  export function createMongoHookStore(db) {
115
161
  const subscriptions = db.collection(SUBSCRIPTIONS);
116
162
  const deliveries = db.collection(DELIVERIES);
163
+ const triggers = db.collection(TRIGGERS);
117
164
  const seq = db.collection(SEQ);
118
165
  let ready = null;
119
166
  function ensure() {
@@ -121,6 +168,7 @@ export function createMongoHookStore(db) {
121
168
  subscriptions.createIndex({ enabled: 1, "match.objectType": 1, "match.contentType": 1 }),
122
169
  deliveries.createIndex({ subscriptionId: 1, seq: -1 }),
123
170
  deliveries.createIndex({ status: 1, nextAttemptAt: 1, seq: 1 }),
171
+ triggers.createIndex({ subscriptionId: 1 }),
124
172
  ]).then(() => undefined);
125
173
  return ready;
126
174
  }
@@ -159,6 +207,40 @@ export function createMongoHookStore(db) {
159
207
  const docs = await deliveries.find(filter).sort({ seq: -1 }).limit(opts.limit).toArray();
160
208
  return docs.map(deliveryFrom);
161
209
  },
210
+ async listInbox(subscriptionId, limit) {
211
+ await ensure();
212
+ const docs = await deliveries
213
+ .find({ subscriptionId, status: "pending" })
214
+ .sort({ seq: 1 })
215
+ .limit(limit)
216
+ .toArray();
217
+ return docs.map(deliveryFrom);
218
+ },
219
+ async findDelivery(deliveryId) {
220
+ await ensure();
221
+ const doc = await deliveries.findOne({ _id: deliveryId });
222
+ return doc ? deliveryFrom(doc) : null;
223
+ },
224
+ async countDeliveries(subscriptionId) {
225
+ await ensure();
226
+ const counts = {
227
+ pending: 0,
228
+ delivered: 0,
229
+ rejected: 0,
230
+ failed: 0,
231
+ };
232
+ const grouped = await deliveries
233
+ .aggregate([
234
+ { $match: { subscriptionId } },
235
+ { $group: { _id: "$status", n: { $sum: 1 } } },
236
+ ])
237
+ .toArray();
238
+ for (const row of grouped) {
239
+ if (row._id in counts)
240
+ counts[row._id] = row.n;
241
+ }
242
+ return counts;
243
+ },
162
244
  async listActionable(nowIso) {
163
245
  await ensure();
164
246
  const docs = await deliveries
@@ -218,6 +300,29 @@ export function createMongoHookStore(db) {
218
300
  await ensure();
219
301
  await deliveries.deleteMany({ subscriptionId, status: "pending" });
220
302
  },
303
+ async claimTrigger(mark) {
304
+ await ensure();
305
+ try {
306
+ await triggers.insertOne({
307
+ _id: hookTriggerId(mark.subscriptionId, mark.recordId),
308
+ ...mark,
309
+ });
310
+ return true;
311
+ }
312
+ catch (err) {
313
+ if (isDuplicateKey(err))
314
+ return false;
315
+ throw err;
316
+ }
317
+ },
318
+ async releaseTrigger(subscriptionId, recordId) {
319
+ await ensure();
320
+ await triggers.deleteOne({ _id: hookTriggerId(subscriptionId, recordId) });
321
+ },
322
+ async deleteTriggers(subscriptionId) {
323
+ await ensure();
324
+ await triggers.deleteMany({ subscriptionId });
325
+ },
221
326
  async nextSeq(count) {
222
327
  await ensure();
223
328
  const doc = await seq.findOneAndUpdate({ _id: "delivery" }, { $inc: { n: count } }, { upsert: true, returnDocument: "after" });
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/hooks/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/hooks/store.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,14 @@ export type DeliverySettle = {
68
68
  leasedUntil: string | null;
69
69
  endpoint?: string;
70
70
  };
71
+ /** One subscription has taken this record. Independent of inbox delivery status. */
72
+ export type HookTriggerMark = {
73
+ subscriptionId: string;
74
+ recordId: string;
75
+ objectType: string;
76
+ contentType: string;
77
+ markedAt: string;
78
+ };
71
79
  export type HookStore = {
72
80
  saveSubscription(row: HookSubscription): Promise<void>;
73
81
  findSubscription(subscriptionId: string): Promise<HookSubscription | null>;
@@ -78,6 +86,10 @@ export type HookStore = {
78
86
  status?: DeliveryStatus;
79
87
  limit: number;
80
88
  }): Promise<HookDelivery[]>;
89
+ /** Open notices, oldest first. The subscriber pulls these after it was down. */
90
+ listInbox(subscriptionId: string, limit: number): Promise<HookDelivery[]>;
91
+ findDelivery(deliveryId: string): Promise<HookDelivery | null>;
92
+ countDeliveries(subscriptionId: string): Promise<Record<DeliveryStatus, number>>;
81
93
  listActionable(nowIso: string): Promise<HookDelivery[]>;
82
94
  lease(deliveryId: string, leasedUntil: string, attempt: number, nowIso: string): Promise<HookDelivery | null>;
83
95
  settle(deliveryId: string, patch: DeliverySettle): Promise<void>;
@@ -85,9 +97,30 @@ export type HookStore = {
85
97
  hasOlderOpen(endpoint: string, recordId: string, seq: number): Promise<boolean>;
86
98
  retargetPending(subscriptionId: string, endpoint: string): Promise<void>;
87
99
  deletePending(subscriptionId: string): Promise<void>;
100
+ /**
101
+ * Insert the mark if this subscription has not taken the record.
102
+ * Returns false when the mark is already there.
103
+ */
104
+ claimTrigger(mark: HookTriggerMark): Promise<boolean>;
105
+ /** Drop a mark so a failed enqueue can be retried. */
106
+ releaseTrigger(subscriptionId: string, recordId: string): Promise<void>;
107
+ deleteTriggers(subscriptionId: string): Promise<void>;
88
108
  nextSeq(count: number): Promise<number>;
89
109
  };
90
110
  export declare function toPublicSubscription(row: HookSubscription): HookSubscriptionPublic;
111
+ export declare function toInboxDelivery(row: HookDelivery): {
112
+ deliveryId: string;
113
+ subscriptionId: string;
114
+ event: "created" | "updated" | "removed";
115
+ occurredAt: string;
116
+ address: HookAddress;
117
+ change: {
118
+ previousRevision: number | null;
119
+ dataChanged: boolean;
120
+ };
121
+ attempt: number;
122
+ status: "failed" | "pending" | "delivered" | "rejected";
123
+ };
91
124
  export declare function toPublicDelivery(row: HookDelivery): HookDeliveryPublic;
92
125
  export declare function sameAgentIds(left: string[], right: string[]): boolean;
93
126
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,18 @@ export function toPublicSubscription(row) {
4
4
  const { signingSecret: _secret, ...publicRow } = row;
5
5
  return publicRow;
6
6
  }
7
+ export function toInboxDelivery(row) {
8
+ return {
9
+ deliveryId: row.deliveryId,
10
+ subscriptionId: row.subscriptionId,
11
+ event: row.event,
12
+ occurredAt: row.occurredAt,
13
+ address: row.address,
14
+ change: row.change,
15
+ attempt: row.attempt,
16
+ status: row.status,
17
+ };
18
+ }
7
19
  export function toPublicDelivery(row) {
8
20
  return {
9
21
  deliveryId: row.deliveryId,
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAGtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAC;AAsGzF,MAAM,UAAU,oBAAoB,CAAC,GAAqB;IACxD,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,CAAC;IACrD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAiB;IAChD,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,MAAM,EAAE,GAAG,CAAC,MAAM;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAc,EAAE,KAAe;IAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAGtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAC;AA2HzF,MAAM,UAAU,oBAAoB,CAAC,GAAqB;IACxD,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,CAAC;IACrD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAiB;IAC/C,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,GAAG,CAAC,MAAM;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAiB;IAChD,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,MAAM,EAAE,GAAG,CAAC,MAAM;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAc,EAAE,KAAe;IAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACjD,CAAC"}
@@ -6,7 +6,6 @@ export type TickHooksOptions = {
6
6
  timeoutMs?: number;
7
7
  backoffMs?: (attempt: number) => number;
8
8
  inflightCap?: number;
9
- maxAttempts?: number;
10
9
  };
11
10
  export declare function tickHookStore(store: HookStore, opts?: TickHooksOptions): Promise<void>;
12
11
  export { classifyDeliveryResponse };
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/hooks/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAOzB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAsB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2EhG;AAED,OAAO,EAAE,wBAAwB,EAAE,CAAC"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/hooks/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAMzB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAsB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoEhG;AAED,OAAO,EAAE,wBAAwB,EAAE,CAAC"}
@@ -1,9 +1,8 @@
1
- import { classifyDeliveryResponse, hookBackoffMs, HOOK_INFLIGHT_CAP, HOOK_LEASE_MS, HOOK_MAX_ATTEMPTS, HOOK_TIMEOUT_MS, postDelivery, } from "./deliver.js";
1
+ import { classifyDeliveryResponse, hookBackoffMs, HOOK_INFLIGHT_CAP, HOOK_LEASE_MS, HOOK_TIMEOUT_MS, postDelivery, } from "./deliver.js";
2
2
  export async function tickHookStore(store, opts = {}) {
3
3
  const now = opts.now ?? new Date();
4
4
  const nowIso = now.toISOString();
5
5
  const cap = opts.inflightCap ?? HOOK_INFLIGHT_CAP;
6
- const maxAttempts = opts.maxAttempts ?? HOOK_MAX_ATTEMPTS;
7
6
  const backoff = opts.backoffMs ?? hookBackoffMs;
8
7
  const due = await store.listActionable(nowIso);
9
8
  const inflight = new Map();
@@ -59,16 +58,10 @@ export async function tickHookStore(store, opts = {}) {
59
58
  return;
60
59
  }
61
60
  if (outcome === "failing") {
62
- await store.settle(sending.deliveryId, { status: "failed", nextAttemptAt: null, leasedUntil: null });
63
61
  const current = await store.findSubscription(subscription.subscriptionId);
64
62
  if (current) {
65
63
  await store.saveSubscription({ ...current, health: "failing", updatedAt: new Date().toISOString() });
66
64
  }
67
- return;
68
- }
69
- if (sending.attempt >= maxAttempts) {
70
- await store.settle(sending.deliveryId, { status: "failed", nextAttemptAt: null, leasedUntil: null });
71
- return;
72
65
  }
73
66
  const nextAttemptAt = new Date(now.getTime() + backoff(sending.attempt)).toISOString();
74
67
  await store.settle(sending.deliveryId, { status: "pending", nextAttemptAt, leasedUntil: null });
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/hooks/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/hooks/worker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { FastifyInstance } from "fastify";
2
+ import { type HookLiveSource } from "./hooks-live.js";
3
+ export declare function registerHooksLiveRoutes(app: FastifyInstance, source: HookLiveSource): void;
4
+ //# sourceMappingURL=hooks-live-routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks-live-routes.d.ts","sourceRoot":"","sources":["../src/hooks-live-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGxE,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAU1F"}
@@ -0,0 +1,13 @@
1
+ import { snapshotHookLive } from "./hooks-live.js";
2
+ import { hooksLiveHtml } from "./hooks-live-ui.js";
3
+ export function registerHooksLiveRoutes(app, source) {
4
+ app.get("/_live/hooks", async (_req, reply) => {
5
+ return reply.header("cache-control", "no-store").type("text/html; charset=utf-8").send(hooksLiveHtml());
6
+ });
7
+ app.get("/_live/api/hooks", async (req) => {
8
+ const q = req.query;
9
+ const snap = await snapshotHookLive(source, q.orgId);
10
+ return { ok: true, generatedAt: new Date().toISOString(), ...snap };
11
+ });
12
+ }
13
+ //# sourceMappingURL=hooks-live-routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks-live-routes.js","sourceRoot":"","sources":["../src/hooks-live-routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAuB,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,UAAU,uBAAuB,CAAC,GAAoB,EAAE,MAAsB;IAClF,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1G,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACxC,MAAM,CAAC,GAAG,GAAG,CAAC,KAA2B,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** HTML for GET /_live/hooks — subscription health and callback inbox. */
2
+ export declare function hooksLiveHtml(): string;
3
+ //# sourceMappingURL=hooks-live-ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks-live-ui.d.ts","sourceRoot":"","sources":["../src/hooks-live-ui.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,wBAAgB,aAAa,IAAI,MAAM,CAiOtC"}