@growth-labs/cms 0.6.6 → 0.6.8

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 (112) hide show
  1. package/README.md +20 -0
  2. package/dist/engine/foundry-dispatch.d.ts.map +1 -1
  3. package/dist/engine/foundry-dispatch.js +36 -7
  4. package/dist/engine/foundry-dispatch.js.map +1 -1
  5. package/dist/engine/fronts-publish-intent.d.ts +15 -4
  6. package/dist/engine/fronts-publish-intent.d.ts.map +1 -1
  7. package/dist/engine/fronts-publish-intent.js +52 -19
  8. package/dist/engine/fronts-publish-intent.js.map +1 -1
  9. package/dist/engine/fronts-publish.d.ts +19 -0
  10. package/dist/engine/fronts-publish.d.ts.map +1 -1
  11. package/dist/engine/fronts-publish.js +158 -5
  12. package/dist/engine/fronts-publish.js.map +1 -1
  13. package/dist/engine/index.d.ts +1 -0
  14. package/dist/engine/index.d.ts.map +1 -1
  15. package/dist/engine/index.js +1 -0
  16. package/dist/engine/index.js.map +1 -1
  17. package/dist/engine/podcast-source.d.ts +28 -0
  18. package/dist/engine/podcast-source.d.ts.map +1 -0
  19. package/dist/engine/podcast-source.js +50 -0
  20. package/dist/engine/podcast-source.js.map +1 -0
  21. package/dist/engine/publication-current-guard.d.ts +10 -0
  22. package/dist/engine/publication-current-guard.d.ts.map +1 -0
  23. package/dist/engine/publication-current-guard.js +76 -0
  24. package/dist/engine/publication-current-guard.js.map +1 -0
  25. package/dist/engine/publication.d.ts +4 -0
  26. package/dist/engine/publication.d.ts.map +1 -1
  27. package/dist/engine/publication.js +13 -0
  28. package/dist/engine/publication.js.map +1 -1
  29. package/dist/engine/publisher.d.ts.map +1 -1
  30. package/dist/engine/publisher.js +20 -13
  31. package/dist/engine/publisher.js.map +1 -1
  32. package/dist/engine/soft-delete.js +2 -2
  33. package/dist/engine/soft-delete.js.map +1 -1
  34. package/dist/integration/options.d.ts +117 -0
  35. package/dist/integration/options.d.ts.map +1 -1
  36. package/dist/integration/options.js +19 -0
  37. package/dist/integration/options.js.map +1 -1
  38. package/dist/providers/types.d.ts +9 -3
  39. package/dist/providers/types.d.ts.map +1 -1
  40. package/dist/providers/types.js.map +1 -1
  41. package/dist/routes/config.d.ts +4 -0
  42. package/dist/routes/config.d.ts.map +1 -1
  43. package/dist/routes/config.js +1 -0
  44. package/dist/routes/config.js.map +1 -1
  45. package/dist/routes/content.d.ts +2 -0
  46. package/dist/routes/content.d.ts.map +1 -1
  47. package/dist/routes/content.js +8 -6
  48. package/dist/routes/content.js.map +1 -1
  49. package/dist/routes/fronts-publish.d.ts +2 -2
  50. package/dist/routes/fronts-publish.d.ts.map +1 -1
  51. package/dist/routes/fronts-publish.js +52 -23
  52. package/dist/routes/fronts-publish.js.map +1 -1
  53. package/dist/routes/index.js +1 -1
  54. package/dist/routes/index.js.map +1 -1
  55. package/dist/schema/layout.d.ts +2 -2
  56. package/dist/ui/api/_content-config.d.ts.map +1 -1
  57. package/dist/ui/api/_content-config.js +7 -0
  58. package/dist/ui/api/_content-config.js.map +1 -1
  59. package/dist/ui/api/fronts/publish-callback.d.ts.map +1 -1
  60. package/dist/ui/api/fronts/publish-callback.js +2 -6
  61. package/dist/ui/api/fronts/publish-callback.js.map +1 -1
  62. package/dist/ui/api/fronts/schedule.d.ts.map +1 -1
  63. package/dist/ui/api/fronts/schedule.js +2 -6
  64. package/dist/ui/api/fronts/schedule.js.map +1 -1
  65. package/dist/ui/client/mount.d.ts.map +1 -1
  66. package/dist/ui/client/mount.js +1 -0
  67. package/dist/ui/client/mount.js.map +1 -1
  68. package/dist/ui/editor/ContentForm.d.ts +3 -2
  69. package/dist/ui/editor/ContentForm.d.ts.map +1 -1
  70. package/dist/ui/editor/ContentForm.js +18 -4
  71. package/dist/ui/editor/ContentForm.js.map +1 -1
  72. package/dist/ui/editor/content-payload.d.ts +4 -1
  73. package/dist/ui/editor/content-payload.d.ts.map +1 -1
  74. package/dist/ui/editor/content-payload.js +9 -1
  75. package/dist/ui/editor/content-payload.js.map +1 -1
  76. package/dist/ui/screens/ContentRoute.d.ts +3 -2
  77. package/dist/ui/screens/ContentRoute.d.ts.map +1 -1
  78. package/dist/ui/screens/ContentRoute.js +2 -2
  79. package/dist/ui/screens/ContentRoute.js.map +1 -1
  80. package/dist/ui/screens/EditorScreen.d.ts +3 -2
  81. package/dist/ui/screens/EditorScreen.d.ts.map +1 -1
  82. package/dist/ui/screens/EditorScreen.js +2 -2
  83. package/dist/ui/screens/EditorScreen.js.map +1 -1
  84. package/dist/ui/screens/registry.d.ts +3 -2
  85. package/dist/ui/screens/registry.d.ts.map +1 -1
  86. package/dist/ui/screens/registry.js +2 -2
  87. package/dist/ui/screens/registry.js.map +1 -1
  88. package/package.json +1 -1
  89. package/src/engine/foundry-dispatch.ts +67 -12
  90. package/src/engine/fronts-publish-intent.ts +78 -26
  91. package/src/engine/fronts-publish.ts +223 -5
  92. package/src/engine/index.ts +4 -0
  93. package/src/engine/podcast-source.ts +82 -0
  94. package/src/engine/publication-current-guard.ts +87 -0
  95. package/src/engine/publication.ts +23 -0
  96. package/src/engine/publisher.ts +21 -13
  97. package/src/engine/soft-delete.ts +2 -2
  98. package/src/integration/options.ts +23 -0
  99. package/src/providers/types.ts +6 -1
  100. package/src/routes/config.ts +5 -0
  101. package/src/routes/content.ts +11 -6
  102. package/src/routes/fronts-publish.ts +63 -25
  103. package/src/routes/index.ts +1 -1
  104. package/src/ui/api/_content-config.ts +11 -0
  105. package/src/ui/api/fronts/publish-callback.ts +2 -8
  106. package/src/ui/api/fronts/schedule.ts +2 -8
  107. package/src/ui/client/mount.tsx +1 -0
  108. package/src/ui/editor/ContentForm.tsx +45 -3
  109. package/src/ui/editor/content-payload.ts +8 -0
  110. package/src/ui/screens/ContentRoute.tsx +4 -1
  111. package/src/ui/screens/EditorScreen.tsx +4 -1
  112. package/src/ui/screens/registry.tsx +4 -1
@@ -23,7 +23,11 @@
23
23
  // site's cron) is UNTOUCHED and remains the rollback lever; this path is purely
24
24
  // additive and gated by FRONTS_PUBLISH_ENABLED (default ON — a rollback lever,
25
25
  // not a dark-staging gate).
26
+ import { FrontsScheduleOverflowError } from './fronts-publish-intent.js';
27
+ import { podcastPublishBlocker } from './podcast-source.js';
26
28
  import { publishOne } from './publication.js';
29
+ import { assertCurrentPublicationSnapshot, PublicationCurrentSnapshotError, snapshotRecord, } from './publication-current-guard.js';
30
+ import { getContentSnapshot } from './publisher.js';
27
31
  /** The five lifecycle states foundryd reports for a Fronts publish intent. */
28
32
  export const FRONTS_PUBLISH_STATUSES = [
29
33
  'queued',
@@ -68,12 +72,15 @@ export async function listFrontsPublishSchedule(db, options) {
68
72
  .prepare(`SELECT id, type, slug, title, channel, publish_at, fronts_publish_status
69
73
  FROM content_items
70
74
  WHERE status = 'scheduled'
75
+ AND deleted_at IS NULL
71
76
  AND publish_at IS NOT NULL
72
77
  AND publish_at <= ?
73
78
  ORDER BY publish_at ASC
74
79
  LIMIT ?`)
75
- .bind(options.toSeconds, limit)
80
+ .bind(options.toSeconds, limit + 1)
76
81
  .all();
82
+ if ((result.results?.length ?? 0) > limit)
83
+ throw new FrontsScheduleOverflowError(limit);
77
84
  return (result.results ?? []).map((row) => ({
78
85
  id: row.id,
79
86
  type: row.type,
@@ -145,9 +152,87 @@ export async function applyFrontsPublishCallback(db, input) {
145
152
  let attemptId = null;
146
153
  let ledgerError = null;
147
154
  const shouldPublish = input.status === 'live' && hasReceipt(input.receipt);
155
+ if (shouldPublish && item.status === 'published') {
156
+ const current = await getContentSnapshot(db, input.contentId);
157
+ if (!current ||
158
+ !(await matchesCommittedCallback(db, input.contentId, current, await hashReceiptIdentity(input.receipt), input))) {
159
+ return {
160
+ ok: false,
161
+ deduped: false,
162
+ status: input.status,
163
+ published: false,
164
+ attemptId: null,
165
+ contentFound: true,
166
+ ledgerError: null,
167
+ rejection: {
168
+ code: 'publish_snapshot_changed',
169
+ status: 409,
170
+ message: 'The committed publication does not match this callback.',
171
+ },
172
+ };
173
+ }
174
+ }
148
175
  if (shouldPublish && item.status !== 'published') {
176
+ const reject = (code, status, message, blockers) => ({
177
+ ok: false,
178
+ deduped: false,
179
+ status: input.status,
180
+ published: false,
181
+ attemptId: null,
182
+ contentFound: true,
183
+ ledgerError: null,
184
+ rejection: { code, status, message, ...(blockers ? { blockers } : {}) },
185
+ });
186
+ const expectedSnapshot = await getContentSnapshot(db, input.contentId);
187
+ const expectedItem = snapshotRecord(expectedSnapshot?.item);
188
+ if (!expectedSnapshot ||
189
+ expectedItem.deleted_at != null ||
190
+ expectedItem.status !== 'scheduled') {
191
+ return reject('content_not_scheduled', 404, 'Content is no longer scheduled for publication.');
192
+ }
193
+ if ((input.version != null && input.version !== expectedItem.canonical_version) ||
194
+ (input.publishAt != null && input.publishAt !== expectedItem.publish_at)) {
195
+ return reject('publish_snapshot_changed', 409, 'The scheduled publication has been superseded.');
196
+ }
197
+ if (typeof expectedItem.publish_at !== 'number' ||
198
+ !Number.isFinite(expectedItem.publish_at) ||
199
+ expectedItem.publish_at > now) {
200
+ return reject('publish_not_ready', 503, 'The current scheduled publication time has not arrived.', ['publish_not_due']);
201
+ }
202
+ const blocker = expectedItem.type === 'podcast'
203
+ ? podcastPublishBlocker(snapshotRecord(expectedSnapshot.content))
204
+ : null;
205
+ if (blocker)
206
+ return reject('publish_not_ready', 503, blocker.message, [blocker.code]);
207
+ if (input.checkReadiness) {
208
+ let timeout;
209
+ try {
210
+ const readiness = await Promise.race([
211
+ input.checkReadiness({
212
+ id: input.contentId,
213
+ type: expectedItem.type,
214
+ status: 'scheduled',
215
+ }),
216
+ new Promise((_resolve, rejectTimeout) => {
217
+ timeout = setTimeout(() => rejectTimeout(new Error('readiness timed out')), 10_000);
218
+ }),
219
+ ]);
220
+ if (readiness.ready !== true)
221
+ return reject('publish_not_ready', 503, readiness.message || 'Content is not ready for publication.', readiness.blockers);
222
+ }
223
+ catch {
224
+ return reject('publish_not_ready', 503, 'Publish readiness could not be verified.', [
225
+ 'readiness_unavailable',
226
+ ]);
227
+ }
228
+ finally {
229
+ if (timeout !== undefined)
230
+ clearTimeout(timeout);
231
+ }
232
+ }
233
+ const receiptIdentity = await hashReceiptIdentity(input.receipt);
234
+ const receiptSummary = summarizeReceipt(input.receipt);
149
235
  try {
150
- const receiptSummary = summarizeReceipt(input.receipt);
151
236
  const surface = {
152
237
  name: 'fronts',
153
238
  async prepare() {
@@ -164,22 +249,36 @@ export async function applyFrontsPublishCallback(db, input) {
164
249
  ...(publishedAt !== null ? { publishedAt } : {}),
165
250
  createdBy: 'foundry.fronts-publish',
166
251
  surfaces: [surface],
252
+ expectedCurrentSnapshot: expectedSnapshot,
253
+ expectedReceiptIdentity: receiptIdentity,
167
254
  });
168
255
  attemptId = receipt.attemptId;
169
256
  published = true;
170
257
  }
171
258
  catch (error) {
172
- // publishOne can throw when a concurrent/superseding publish already
173
- // moved the canonical pointer (the item ends up published anyway) — treat
174
- // that as success. Any other failure is recorded and surfaced loudly.
259
+ // A concurrently published row may belong to a newer editor/source
260
+ // revision. Only a matching committed snapshot and full receipt prove
261
+ // this callback's success; status='published' alone proves nothing.
175
262
  const reread = await db
176
263
  .prepare('SELECT status FROM content_items WHERE id = ? LIMIT 1')
177
264
  .bind(input.contentId)
178
265
  .first();
179
266
  if (reread?.status === 'published') {
267
+ if (!(await matchesCommittedCallback(db, input.contentId, expectedSnapshot, receiptIdentity))) {
268
+ return reject('publish_snapshot_changed', 409, 'A different publication superseded this callback.');
269
+ }
180
270
  published = true;
181
271
  }
182
272
  else {
273
+ if (error instanceof PublicationCurrentSnapshotError)
274
+ return reject('publish_snapshot_changed', 409, error.message);
275
+ const current = await getContentSnapshot(db, input.contentId);
276
+ try {
277
+ assertCurrentPublicationSnapshot(current ?? {}, expectedSnapshot);
278
+ }
279
+ catch {
280
+ return reject('publish_snapshot_changed', 409, 'Scheduled content or media changed before publication.');
281
+ }
183
282
  ledgerError = error instanceof Error ? error.message : String(error);
184
283
  }
185
284
  }
@@ -232,6 +331,60 @@ export async function applyFrontsPublishCallback(db, input) {
232
331
  ledgerError,
233
332
  };
234
333
  }
334
+ async function hashReceiptIdentity(receipt) {
335
+ const bytes = new TextEncoder().encode(JSON.stringify([
336
+ 'fronts-publish-receipt.v1',
337
+ receipt?.published_urls ?? null,
338
+ receipt?.platform_post_ids ?? null,
339
+ receipt?.sha256 ?? null,
340
+ ]));
341
+ const digest = await crypto.subtle.digest('SHA-256', bytes);
342
+ return Array.from(new Uint8Array(digest), (byte) => byte.toString(16).padStart(2, '0')).join('');
343
+ }
344
+ async function matchesCommittedCallback(db, contentId, expectedSnapshot, receiptIdentity, input) {
345
+ const current = await db
346
+ .prepare(`SELECT r.id AS revision_id, r.payload_json, a.receipts_json
347
+ FROM content_items c
348
+ JOIN content_revisions r ON r.id = c.published_revision_id AND r.content_id = c.id
349
+ JOIN content_publication_attempts a ON a.revision_id = r.id AND a.content_id = c.id
350
+ WHERE c.id = ? AND c.status = 'published' AND c.deleted_at IS NULL
351
+ AND r.created_by = 'foundry.fronts-publish' AND a.operation = 'publish' AND a.state = 'committed'
352
+ LIMIT 1`)
353
+ .bind(contentId)
354
+ .first();
355
+ if (!current)
356
+ return false;
357
+ try {
358
+ const snapshot = snapshotRecord(JSON.parse(current.payload_json));
359
+ if (snapshot.publication_receipt_identity !== receiptIdentity)
360
+ return false;
361
+ const committedItem = snapshotRecord(snapshot.item);
362
+ const expectedItem = snapshotRecord(expectedSnapshot.item);
363
+ if (expectedItem.status === 'published') {
364
+ if (expectedItem.published_revision_id !== current.revision_id ||
365
+ expectedItem.publish_at != null ||
366
+ (input?.version != null && input.version !== committedItem.canonical_version) ||
367
+ (input?.publishAt != null && input.publishAt !== committedItem.publish_at))
368
+ return false;
369
+ // Commit deliberately changes only these scheduled guard fields.
370
+ // Every source/editor field must still match the immutable revision.
371
+ expectedSnapshot = {
372
+ ...expectedSnapshot,
373
+ item: { ...expectedItem, status: 'scheduled', publish_at: committedItem.publish_at },
374
+ };
375
+ }
376
+ assertCurrentPublicationSnapshot(snapshot, expectedSnapshot);
377
+ const receipts = JSON.parse(current.receipts_json);
378
+ return (Array.isArray(receipts) &&
379
+ receipts.some((value) => {
380
+ const receipt = snapshotRecord(value);
381
+ return receipt.name === 'fronts' && receipt.phase === 'commit' && receipt.status === 'ok';
382
+ }));
383
+ }
384
+ catch {
385
+ return false;
386
+ }
387
+ }
235
388
  /** Replay a stored callback outcome by event_id, or null when not yet recorded. */
236
389
  async function readStoredOutcome(db, eventId) {
237
390
  const row = await db
@@ -1 +1 @@
1
- {"version":3,"file":"fronts-publish.js","sourceRoot":"","sources":["../../src/engine/fronts-publish.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fronts-publish.js","sourceRoot":"","sources":["../../src/engine/fronts-publish.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,kCAAkC;AAClC,EAAE;AACF,2EAA2E;AAC3E,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,0EAA0E;AAC1E,8EAA8E;AAC9E,iFAAiF;AACjF,sEAAsE;AACtE,mDAAmD;AACnD,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,0EAA0E;AAC1E,qEAAqE;AACrE,2EAA2E;AAC3E,mDAAmD;AACnD,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,+EAA+E;AAC/E,4BAA4B;AAI5B,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAA8B,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,EACN,gCAAgC,EAChC,+BAA+B,EAC/B,cAAc,GACd,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEnD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,uBAAuB,GAAmC;IACtE,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,MAAM;IACN,QAAQ;CACC,CAAA;AAEV,MAAM,UAAU,qBAAqB,CAAC,KAAc;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,uBAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC1F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAwC;IAC9E,MAAM,GAAG,GAAG,GAAG,EAAE,sBAAsB,CAAA;IACvC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAClD,IAAI,OAAO,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,KAAK,CAAC,CAAA;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;IACvE,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AA2BD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,EAAc,EACd,OAAyC;IAEzC,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3E,MAAM,MAAM,GAAG,MAAM,EAAE;SACrB,OAAO,CACP;;;;;;;YAOS,CACT;SACA,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,GAAG,CAAC,CAAC;SAClC,GAAG,EAQA,CAAA;IACL,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,KAAK;QAAE,MAAM,IAAI,2BAA2B,CAAC,KAAK,CAAC,CAAA;IACvF,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3C,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,mBAAmB,EAAE,GAAG,CAAC,qBAAqB;QAC9C,OAAO,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG;KAC9B,CAAC,CAAC,CAAA;AACJ,CAAC;AAiDD,SAAS,UAAU,CAAC,OAAgD;IACnE,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAA;IACvF,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAA;IAC5F,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;IAClF,OAAO,IAAI,IAAI,GAAG,IAAI,GAAG,CAAA;AAC1B,CAAC;AAED,iFAAiF;AACjF,SAAS,wBAAwB,CAChC,UAA8C,EAC9C,GAAW;IAEX,IAAI,OAAO,GAAkB,IAAI,CAAA;IACjC,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACnE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACjC,CAAC;SAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAClF,4EAA4E;IAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC/C,EAAc,EACd,KAAiC;IAEjC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;IAEvD,mEAAmE;IACnE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC3D,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAE7B,6EAA6E;IAC7E,sCAAsC;IACtC,MAAM,IAAI,GAAG,MAAM,EAAE;SACnB,OAAO,CAAC,kFAAkF,CAAC;SAC3F,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SACrB,KAAK,EAAqF,CAAA;IAC5F,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO;YACN,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,KAAK;YACnB,WAAW,EAAE,IAAI;SACjB,CAAA;IACF,CAAC;IAED,6EAA6E;IAC7E,wEAAwE;IACxE,4EAA4E;IAC5E,gEAAgE;IAChE,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,WAAW,CAAA;IAC3C,IAAI,SAAS,GAAkB,IAAI,CAAA;IACnC,IAAI,WAAW,GAAkB,IAAI,CAAA;IACrC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1E,IAAI,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAC7D,IACC,CAAC,OAAO;YACR,CAAC,CAAC,MAAM,wBAAwB,CAC/B,EAAE,EACF,KAAK,CAAC,SAAS,EACf,OAAO,EACP,MAAM,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,EACxC,KAAK,CACL,CAAC,EACD,CAAC;YACF,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,IAAI;gBACf,YAAY,EAAE,IAAI;gBAClB,WAAW,EAAE,IAAI;gBACjB,SAAS,EAAE;oBACV,IAAI,EAAE,0BAA0B;oBAChC,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,yDAAyD;iBAClE;aACD,CAAA;QACF,CAAC;IACF,CAAC;IACD,IAAI,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,CACd,IAAY,EACZ,MAAuB,EACvB,OAAe,EACf,QAAmB,EACW,EAAE,CAAC,CAAC;YAClC,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;SACvE,CAAC,CAAA;QACF,MAAM,gBAAgB,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QACtE,MAAM,YAAY,GAAG,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAA;QAC3D,IACC,CAAC,gBAAgB;YACjB,YAAY,CAAC,UAAU,IAAI,IAAI;YAC/B,YAAY,CAAC,MAAM,KAAK,WAAW,EAClC,CAAC;YACF,OAAO,MAAM,CAAC,uBAAuB,EAAE,GAAG,EAAE,iDAAiD,CAAC,CAAA;QAC/F,CAAC;QACD,IACC,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,YAAY,CAAC,iBAAiB,CAAC;YAC3E,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,YAAY,CAAC,UAAU,CAAC,EACvE,CAAC;YACF,OAAO,MAAM,CACZ,0BAA0B,EAC1B,GAAG,EACH,gDAAgD,CAChD,CAAA;QACF,CAAC;QACD,IACC,OAAO,YAAY,CAAC,UAAU,KAAK,QAAQ;YAC3C,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC;YACzC,YAAY,CAAC,UAAU,GAAG,GAAG,EAC5B,CAAC;YACF,OAAO,MAAM,CACZ,mBAAmB,EACnB,GAAG,EACH,yDAAyD,EACzD,CAAC,iBAAiB,CAAC,CACnB,CAAA;QACF,CAAC;QACD,MAAM,OAAO,GACZ,YAAY,CAAC,IAAI,KAAK,SAAS;YAC9B,CAAC,CAAC,qBAAqB,CAAC,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACjE,CAAC,CAAC,IAAI,CAAA;QACR,IAAI,OAAO;YAAE,OAAO,MAAM,CAAC,mBAAmB,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QACrF,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YAC1B,IAAI,OAAkD,CAAA;YACtD,IAAI,CAAC;gBACJ,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;oBACpC,KAAK,CAAC,cAAc,CAAC;wBACpB,EAAE,EAAE,KAAK,CAAC,SAAS;wBACnB,IAAI,EAAE,YAAY,CAAC,IAAmB;wBACtC,MAAM,EAAE,WAAW;qBACnB,CAAC;oBACF,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE;wBAC9C,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;oBACpF,CAAC,CAAC;iBACF,CAAC,CAAA;gBACF,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI;oBAC3B,OAAO,MAAM,CACZ,mBAAmB,EACnB,GAAG,EACH,SAAS,CAAC,OAAO,IAAI,uCAAuC,EAC5D,SAAS,CAAC,QAAQ,CAClB,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACR,OAAO,MAAM,CAAC,mBAAmB,EAAE,GAAG,EAAE,0CAA0C,EAAE;oBACnF,uBAAuB;iBACvB,CAAC,CAAA;YACH,CAAC;oBAAS,CAAC;gBACV,IAAI,OAAO,KAAK,SAAS;oBAAE,YAAY,CAAC,OAAO,CAAC,CAAA;YACjD,CAAC;QACF,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAChE,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACtD,IAAI,CAAC;YACJ,MAAM,OAAO,GAA0B;gBACtC,IAAI,EAAE,QAAQ;gBACd,KAAK,CAAC,OAAO;oBACZ,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;gBAC1D,CAAC;gBACD,KAAK,CAAC,MAAM;oBACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,CAAA;gBAClF,CAAC;aACD,CAAA;YACD,MAAM,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;YACnE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,GAAG;gBACH,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,SAAS,EAAE,wBAAwB;gBACnC,QAAQ,EAAE,CAAC,OAAO,CAAC;gBACnB,uBAAuB,EAAE,gBAAgB;gBACzC,uBAAuB,EAAE,eAAe;aACxC,CAAC,CAAA;YACF,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;YAC7B,SAAS,GAAG,IAAI,CAAA;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,mEAAmE;YACnE,sEAAsE;YACtE,oEAAoE;YACpE,MAAM,MAAM,GAAG,MAAM,EAAE;iBACrB,OAAO,CAAC,uDAAuD,CAAC;iBAChE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;iBACrB,KAAK,EAAsB,CAAA;YAC7B,IAAI,MAAM,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;gBACpC,IACC,CAAC,CAAC,MAAM,wBAAwB,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,EACxF,CAAC;oBACF,OAAO,MAAM,CACZ,0BAA0B,EAC1B,GAAG,EACH,mDAAmD,CACnD,CAAA;gBACF,CAAC;gBACD,SAAS,GAAG,IAAI,CAAA;YACjB,CAAC;iBAAM,CAAC;gBACP,IAAI,KAAK,YAAY,+BAA+B;oBACnD,OAAO,MAAM,CAAC,0BAA0B,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC9D,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC7D,IAAI,CAAC;oBACJ,gCAAgC,CAAC,OAAO,IAAI,EAAE,EAAE,gBAAgB,CAAC,CAAA;gBAClE,CAAC;gBAAC,MAAM,CAAC;oBACR,OAAO,MAAM,CACZ,0BAA0B,EAC1B,GAAG,EACH,wDAAwD,CACxD,CAAA;gBACF,CAAC;gBACD,WAAW,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrE,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;IAE1E,0EAA0E;IAC1E,+EAA+E;IAC/E,6EAA6E;IAC7E,uDAAuD;IACvD,MAAM,aAAa,GAAG,MAAM,EAAE;SAC5B,OAAO,CACP,+GAA+G,CAC/G;SACA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SACrB,KAAK,EAA6B,CAAA;IACpC,IACC,uBAAuB,CACtB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,qBAAqB,EAC1B,KAAK,CAAC,MAAM,EACZ,kBAAkB,EAClB,aAAa,EAAE,MAAM,IAAI,IAAI,CAC7B,EACA,CAAC;QACF,MAAM,EAAE;aACN,OAAO,CACP,2FAA2F,CAC3F;aACA,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;aACnC,GAAG,EAAE,CAAA;IACR,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,gCAAgC;IAChC,MAAM,YAAY,GAAG,MAAM,EAAE;SAC3B,OAAO,CACP;;;;qCAIkC,CAClC;SACA,IAAI,CACJ,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,QAAQ,IAAI,IAAI,EACtB,KAAK,CAAC,SAAS,EACf,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;QAClE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QAC3B,CAAC,CAAC,IAAI,EACP,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,MAAM,EACZ,kBAAkB,EAClB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EACpD,WAAW,EACX,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjB,SAAS,EACT,GAAG,CACH;SACA,GAAG,EAAE,CAAA;IAEP,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAA;IAC1C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClD,gEAAgE;QAChE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QACzD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;IAC1B,CAAC;IAED,OAAO;QACN,EAAE,EAAE,WAAW,KAAK,IAAI;QACxB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS;QACT,SAAS;QACT,YAAY,EAAE,IAAI;QAClB,WAAW;KACX,CAAA;AACF,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,OAAgD;IAEhD,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CACrC,IAAI,CAAC,SAAS,CAAC;QACd,2BAA2B;QAC3B,OAAO,EAAE,cAAc,IAAI,IAAI;QAC/B,OAAO,EAAE,iBAAiB,IAAI,IAAI;QAClC,OAAO,EAAE,MAAM,IAAI,IAAI;KACvB,CAAC,CACF,CAAA;IACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACjG,CAAC;AAED,KAAK,UAAU,wBAAwB,CACtC,EAAc,EACd,SAAiB,EACjB,gBAAyC,EACzC,eAAuB,EACvB,KAAiE;IAEjE,MAAM,OAAO,GAAG,MAAM,EAAE;SACtB,OAAO,CAAC;;;;;;UAMD,CAAC;SACR,IAAI,CAAC,SAAS,CAAC;SACf,KAAK,EAAwE,CAAA;IAC/E,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;QACjE,IAAI,QAAQ,CAAC,4BAA4B,KAAK,eAAe;YAAE,OAAO,KAAK,CAAA;QAC3E,MAAM,aAAa,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACnD,MAAM,YAAY,GAAG,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAC1D,IAAI,YAAY,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACzC,IACC,YAAY,CAAC,qBAAqB,KAAK,OAAO,CAAC,WAAW;gBAC1D,YAAY,CAAC,UAAU,IAAI,IAAI;gBAC/B,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,aAAa,CAAC,iBAAiB,CAAC;gBAC7E,CAAC,KAAK,EAAE,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,aAAa,CAAC,UAAU,CAAC;gBAE1E,OAAO,KAAK,CAAA;YACb,iEAAiE;YACjE,qEAAqE;YACrE,gBAAgB,GAAG;gBAClB,GAAG,gBAAgB;gBACnB,IAAI,EAAE,EAAE,GAAG,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE;aACpF,CAAA;QACF,CAAC;QACD,gCAAgC,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QAC5D,MAAM,QAAQ,GAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAC3D,OAAO,CACN,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;gBACvB,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;gBACrC,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAA;YAC1F,CAAC,CAAC,CACF,CAAA;IACF,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,iBAAiB,CAC/B,EAAc,EACd,OAAe;IAEf,MAAM,GAAG,GAAG,MAAM,EAAE;SAClB,OAAO,CACP,mGAAmG,CACnG;SACA,IAAI,CAAC,OAAO,CAAC;SACb,KAAK,EAKF,CAAA;IACL,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,OAAO;QACN,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK;QACd,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,SAAS,EAAE,GAAG,CAAC,SAAS,KAAK,CAAC;QAC9B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,GAAG,CAAC,KAAK;KACtB,CAAA;AACF,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAC/B,UAAkB,EAClB,aAAyC,EACzC,cAAmC,EACnC,kBAAiC,EACjC,oBAAmC;IAEnC,IAAI,cAAc,KAAK,MAAM;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,UAAU,KAAK,WAAW,IAAI,aAAa,KAAK,MAAM;QAAE,OAAO,KAAK,CAAA;IACxE,IACC,kBAAkB,KAAK,IAAI;QAC3B,oBAAoB,KAAK,IAAI;QAC7B,kBAAkB,GAAG,oBAAoB,EACxC,CAAC;QACF,OAAO,KAAK,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,qFAAqF;AACrF,SAAS,gBAAgB,CAAC,OAAgD;IACzE,IAAI,CAAC,OAAO;QAAE,OAAO,aAAa,CAAA;IAClC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChF,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtF,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;IAC3D,CAAC;IACD,OAAO,eAAe,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAC7D,CAAC"}
@@ -16,6 +16,7 @@ export { type AcceptInviteInput, acceptInvite, type CreateInviteInput, type Crea
16
16
  export { listMembers, loadMembership, type MemberListEntry, type MembershipRecord, removeMember, setRole, type UpsertMastheadUserInput, upsertMastheadUser, } from './members.js';
17
17
  export { canChangeMemberRole, canRemoveMember, type MemberActionDecision, type MembershipSummary, ownerCount, } from './membership-rules.js';
18
18
  export { buildOgCardSpec, type OgCardSpec, type OgCardSpecOpts, type OgImageRenderer, } from './og-render.js';
19
+ export { type FrontsPodcastSourceSnapshot, frontsPodcastSourceGeneration, } from './podcast-source.js';
19
20
  export { ContentArchiveImportLimitError, type ContentArchiveInput, type ContentArchiveItem, DEFAULT_PENDING_PUBLICATION_ATTEMPT_LIMIT, DEFAULT_PUBLICATION_SURFACE_HOOK_TIMEOUT_MS, type ImportContentArchiveOptions, type ImportContentArchiveResult, type ImportedArchiveItem, importContentArchive, type ListPendingPublicationAttemptsOptions, listPendingPublicationAttempts, MAX_PENDING_PUBLICATION_ATTEMPT_LIMIT, MAX_PUBLICATION_SURFACE_HOOK_TIMEOUT_MS, type PublicationAttempt, type PublicationAttemptState, PublicationInputError, PublicationNotFoundError, type PublicationOperation, PublicationPointerMoveError, type PublicationReconciler, PublicationReconciliationError, type PublicationReconciliationInput, type PublicationSurfaceCommitStatus, type PublicationSurfacePhase, type PublicationSurfaceReceipt, PublicationSurfaceRequirementError, type PublicationSurfaceStatus, type PublishOneInput, type PublishOneReceipt, publishOne, type RetryPublicationSurfacesInput, type RetryPublicationSurfacesReceipt, type RollbackPublicationInput, type RollbackPublicationReceipt, retryPublicationSurfaces, rollbackPublication, type SkippedArchiveItem, } from './publication.js';
20
21
  export { acceptsProbeStatus, type ContinuityArchiveItem, type ContinuityDrift, type ContinuityDriftField, type ContinuityPublishedRow, isRetiredItem, payloadDrift, } from './publication-continuity.js';
21
22
  export { CanonicalJsonError, canonicalJson, canonicalJsonBytes, canonicalJsonSha256, type JsonValue, } from './publication-receipt/canonical-json.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEnE,OAAO,EACN,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,aAAa,CAAA;AACpB,OAAO,EACN,6BAA6B,EAC7B,KAAK,2BAA2B,GAChC,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,SAAS,EACT,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,eAAe,EACf,KAAK,0BAA0B,EAC/B,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,eAAe,EACf,KAAK,oBAAoB,EACzB,eAAe,GACf,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACN,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,YAAY,EACZ,aAAa,EACb,iBAAiB,GACjB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,SAAS,EACT,KAAK,kBAAkB,EACvB,eAAe,GACf,MAAM,eAAe,CAAA;AAEtB,OAAO,EACN,KAAK,eAAe,EACpB,oBAAoB,EACpB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,GACxB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,eAAe,GACf,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,mBAAmB,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAA;AAE5E,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAE3F,OAAO,EACN,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,iBAAiB,EACjB,KAAK,eAAe,EACpB,UAAU,GACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,gCAAgC,EACrC,yBAAyB,GACzB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACN,4BAA4B,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,wBAAwB,EACxB,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,6BAA6B,EAC7B,KAAK,iCAAiC,EACtC,2BAA2B,EAC3B,uBAAuB,GACvB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACN,cAAc,EACd,KAAK,gBAAgB,EACrB,UAAU,EACV,aAAa,EACb,gBAAgB,GAChB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,KAAK,iBAAiB,EACtB,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,YAAY,EACZ,eAAe,EACf,KAAK,YAAY,EACjB,iBAAiB,GACjB,MAAM,cAAc,CAAA;AAErB,OAAO,EACN,WAAW,EACX,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,YAAY,EACZ,OAAO,EACP,KAAK,uBAAuB,EAC5B,kBAAkB,GAClB,MAAM,cAAc,CAAA;AAErB,OAAO,EACN,mBAAmB,EACnB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,UAAU,GACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,eAAe,EACf,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,eAAe,GACpB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACN,8BAA8B,EAC9B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,yCAAyC,EACzC,2CAA2C,EAC3C,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,KAAK,qCAAqC,EAC1C,8BAA8B,EAC9B,qCAAqC,EACrC,uCAAuC,EACvC,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,2BAA2B,EAC3B,KAAK,qBAAqB,EAC1B,8BAA8B,EAC9B,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,kCAAkC,EAClC,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,UAAU,EACV,KAAK,6BAA6B,EAClC,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,wBAAwB,EACxB,mBAAmB,EACnB,KAAK,kBAAkB,GACvB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACN,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,aAAa,EACb,YAAY,GACZ,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACN,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,SAAS,GACd,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACN,uBAAuB,EACvB,uBAAuB,EACvB,iCAAiC,EACjC,+BAA+B,EAC/B,KAAK,0BAA0B,EAC/B,gCAAgC,GAChC,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACN,KAAK,wBAAwB,EAC7B,sBAAsB,EACtB,wBAAwB,GACxB,MAAM,oCAAoC,CAAA;AAE3C,OAAO,EACN,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,0BAA0B,GAC1B,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EACN,uBAAuB,EACvB,yBAAyB,EACzB,KAAK,2BAA2B,EAChC,oBAAoB,EACpB,gCAAgC,EAChC,+BAA+B,EAC/B,mCAAmC,EACnC,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,yBAAyB,EACzB,KAAK,6BAA6B,GAClC,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EACN,KAAK,YAAY,EACjB,gCAAgC,EAChC,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,UAAU,EACV,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,6BAA6B,EAC7B,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,6BAA6B,EAC7B,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,kCAAkC,EAClC,KAAK,UAAU,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EACN,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,+BAA+B,EAC/B,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,2BAA2B,EAC3B,+BAA+B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,KAAK,qBAAqB,EAC1B,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,GACb,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACN,KAAK,sBAAsB,EAC3B,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,KAAK,eAAe,EACpB,eAAe,GACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACN,qBAAqB,EACrB,KAAK,eAAe,EACpB,QAAQ,EACR,YAAY,EACZ,gBAAgB,GAChB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,KAAK,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE/E,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,UAAU,GACV,MAAM,UAAU,CAAA;AAEjB,OAAO,EACN,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,OAAO,EACP,kBAAkB,GAClB,MAAM,WAAW,CAAA;AAElB,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,GAClB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,aAAa,EACb,YAAY,EACZ,cAAc,EACd,iBAAiB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACN,uBAAuB,EACvB,KAAK,0BAA0B,GAC/B,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACN,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,UAAU,EACV,KAAK,UAAU,GACf,MAAM,WAAW,CAAA;AAClB,OAAO,EACN,KAAK,WAAW,EAChB,cAAc,EACd,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,GAC1B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,KAAK,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExE,OAAO,EACN,KAAK,gBAAgB,EACrB,WAAW,EACX,sBAAsB,EACtB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,mBAAmB,EACnB,UAAU,GACV,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACN,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,GACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,KAAK,yBAAyB,EAC9B,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,aAAa,GAClB,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEnE,OAAO,EACN,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,aAAa,CAAA;AACpB,OAAO,EACN,6BAA6B,EAC7B,KAAK,2BAA2B,GAChC,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,SAAS,EACT,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,eAAe,EACf,KAAK,0BAA0B,EAC/B,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,eAAe,EACf,KAAK,oBAAoB,EACzB,eAAe,GACf,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACN,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,YAAY,EACZ,aAAa,EACb,iBAAiB,GACjB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,SAAS,EACT,KAAK,kBAAkB,EACvB,eAAe,GACf,MAAM,eAAe,CAAA;AAEtB,OAAO,EACN,KAAK,eAAe,EACpB,oBAAoB,EACpB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,GACxB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,eAAe,GACf,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,mBAAmB,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAA;AAE5E,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAE3F,OAAO,EACN,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,iBAAiB,EACjB,KAAK,eAAe,EACpB,UAAU,GACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,gCAAgC,EACrC,yBAAyB,GACzB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACN,4BAA4B,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,wBAAwB,EACxB,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,6BAA6B,EAC7B,KAAK,iCAAiC,EACtC,2BAA2B,EAC3B,uBAAuB,GACvB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACN,cAAc,EACd,KAAK,gBAAgB,EACrB,UAAU,EACV,aAAa,EACb,gBAAgB,GAChB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,KAAK,iBAAiB,EACtB,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,YAAY,EACZ,eAAe,EACf,KAAK,YAAY,EACjB,iBAAiB,GACjB,MAAM,cAAc,CAAA;AAErB,OAAO,EACN,WAAW,EACX,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,YAAY,EACZ,OAAO,EACP,KAAK,uBAAuB,EAC5B,kBAAkB,GAClB,MAAM,cAAc,CAAA;AAErB,OAAO,EACN,mBAAmB,EACnB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,UAAU,GACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,eAAe,EACf,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,eAAe,GACpB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACN,KAAK,2BAA2B,EAChC,6BAA6B,GAC7B,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,8BAA8B,EAC9B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,yCAAyC,EACzC,2CAA2C,EAC3C,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,KAAK,qCAAqC,EAC1C,8BAA8B,EAC9B,qCAAqC,EACrC,uCAAuC,EACvC,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,2BAA2B,EAC3B,KAAK,qBAAqB,EAC1B,8BAA8B,EAC9B,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,kCAAkC,EAClC,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,UAAU,EACV,KAAK,6BAA6B,EAClC,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,wBAAwB,EACxB,mBAAmB,EACnB,KAAK,kBAAkB,GACvB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACN,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,aAAa,EACb,YAAY,GACZ,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACN,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,SAAS,GACd,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACN,uBAAuB,EACvB,uBAAuB,EACvB,iCAAiC,EACjC,+BAA+B,EAC/B,KAAK,0BAA0B,EAC/B,gCAAgC,GAChC,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACN,KAAK,wBAAwB,EAC7B,sBAAsB,EACtB,wBAAwB,GACxB,MAAM,oCAAoC,CAAA;AAE3C,OAAO,EACN,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,0BAA0B,GAC1B,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EACN,uBAAuB,EACvB,yBAAyB,EACzB,KAAK,2BAA2B,EAChC,oBAAoB,EACpB,gCAAgC,EAChC,+BAA+B,EAC/B,mCAAmC,EACnC,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,yBAAyB,EACzB,KAAK,6BAA6B,GAClC,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EACN,KAAK,YAAY,EACjB,gCAAgC,EAChC,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,UAAU,EACV,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,6BAA6B,EAC7B,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,6BAA6B,EAC7B,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,kCAAkC,EAClC,KAAK,UAAU,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EACN,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,+BAA+B,EAC/B,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,2BAA2B,EAC3B,+BAA+B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,KAAK,qBAAqB,EAC1B,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,GACb,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACN,KAAK,sBAAsB,EAC3B,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,KAAK,eAAe,EACpB,eAAe,GACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACN,qBAAqB,EACrB,KAAK,eAAe,EACpB,QAAQ,EACR,YAAY,EACZ,gBAAgB,GAChB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,KAAK,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE/E,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,UAAU,GACV,MAAM,UAAU,CAAA;AAEjB,OAAO,EACN,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,OAAO,EACP,kBAAkB,GAClB,MAAM,WAAW,CAAA;AAElB,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,GAClB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,aAAa,EACb,YAAY,EACZ,cAAc,EACd,iBAAiB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACN,uBAAuB,EACvB,KAAK,0BAA0B,GAC/B,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACN,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,UAAU,EACV,KAAK,UAAU,GACf,MAAM,WAAW,CAAA;AAClB,OAAO,EACN,KAAK,WAAW,EAChB,cAAc,EACd,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,GAC1B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,KAAK,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExE,OAAO,EACN,KAAK,gBAAgB,EACrB,WAAW,EACX,sBAAsB,EACtB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,mBAAmB,EACnB,UAAU,GACV,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACN,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,GACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACN,KAAK,yBAAyB,EAC9B,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,aAAa,GAClB,MAAM,eAAe,CAAA"}
@@ -36,6 +36,7 @@ export { listMembers, loadMembership, removeMember, setRole, upsertMastheadUser,
36
36
  export { canChangeMemberRole, canRemoveMember, ownerCount, } from './membership-rules.js';
37
37
  // OG-image renderer interface + pure card-spec builder (P4 Task 5).
38
38
  export { buildOgCardSpec, } from './og-render.js';
39
+ export { frontsPodcastSourceGeneration, } from './podcast-source.js';
39
40
  // Bounded one-item publication kernel.
40
41
  export { ContentArchiveImportLimitError, DEFAULT_PENDING_PUBLICATION_ATTEMPT_LIMIT, DEFAULT_PUBLICATION_SURFACE_HOOK_TIMEOUT_MS, importContentArchive, listPendingPublicationAttempts, MAX_PENDING_PUBLICATION_ATTEMPT_LIMIT, MAX_PUBLICATION_SURFACE_HOOK_TIMEOUT_MS, PublicationInputError, PublicationNotFoundError, PublicationPointerMoveError, PublicationReconciliationError, PublicationSurfaceRequirementError, publishOne, retryPublicationSurfaces, rollbackPublication, } from './publication.js';
41
42
  export { acceptsProbeStatus, isRetiredItem, payloadDrift, } from './publication-continuity.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /** Current CMS evidence used by the signed schedule and media callback guards. */
2
+ export interface FrontsPodcastSourceSnapshot {
3
+ content_id: string;
4
+ slug: string;
5
+ canonical_version: number;
6
+ processing_source_url: string | null;
7
+ processing_source_kind: string | null;
8
+ processing_trigger_token: string | null;
9
+ }
10
+ /**
11
+ * Stable over polling, machine media callbacks and rescheduling. Canonical
12
+ * editor/source changes invalidate the old production. Neither the raw source
13
+ * token nor URL needs to appear in callback/notification identities.
14
+ */
15
+ export declare function frontsPodcastSourceGeneration(input: FrontsPodcastSourceSnapshot): Promise<string>;
16
+ export type PodcastPublishBlockerCode = 'missing_podcast_audio' | 'podcast_transcript_pending' | 'podcast_source_duration_unavailable';
17
+ /** Portable minimum; hosts may enforce additional object/access checks. */
18
+ export declare function podcastPublishBlocker(content: {
19
+ audio_r2_key?: unknown;
20
+ transcript?: unknown;
21
+ processing_source_url?: unknown;
22
+ duration_seconds?: unknown;
23
+ } | null | undefined): {
24
+ code: PodcastPublishBlockerCode;
25
+ message: string;
26
+ } | null;
27
+ export declare function validPodcastSourceUrl(value: string | null | undefined): value is string;
28
+ //# sourceMappingURL=podcast-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"podcast-source.d.ts","sourceRoot":"","sources":["../../src/engine/podcast-source.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,MAAM,WAAW,2BAA2B;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,iBAAiB,EAAE,MAAM,CAAA;IACzB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAA;CACvC;AAED;;;;GAIG;AACH,wBAAsB,6BAA6B,CAClD,KAAK,EAAE,2BAA2B,GAChC,OAAO,CAAC,MAAM,CAAC,CAcjB;AAED,MAAM,MAAM,yBAAyB,GAClC,uBAAuB,GACvB,4BAA4B,GAC5B,qCAAqC,CAAA;AAExC,2EAA2E;AAC3E,wBAAgB,qBAAqB,CACpC,OAAO,EACJ;IACA,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CACzB,GACD,IAAI,GACJ,SAAS,GACV;IAAE,IAAI,EAAE,yBAAyB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAoB7D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAUvF"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Stable over polling, machine media callbacks and rescheduling. Canonical
3
+ * editor/source changes invalidate the old production. Neither the raw source
4
+ * token nor URL needs to appear in callback/notification identities.
5
+ */
6
+ export async function frontsPodcastSourceGeneration(input) {
7
+ const bytes = new TextEncoder().encode(JSON.stringify([
8
+ 'fronts-podcast-source.v1',
9
+ input.content_id,
10
+ input.slug,
11
+ input.canonical_version,
12
+ input.processing_source_url,
13
+ input.processing_source_kind,
14
+ input.processing_trigger_token,
15
+ ]));
16
+ const digest = await crypto.subtle.digest('SHA-256', bytes);
17
+ return Array.from(new Uint8Array(digest), (byte) => byte.toString(16).padStart(2, '0')).join('');
18
+ }
19
+ /** Portable minimum; hosts may enforce additional object/access checks. */
20
+ export function podcastPublishBlocker(content) {
21
+ if (typeof content?.audio_r2_key !== 'string' || !content.audio_r2_key.trim()) {
22
+ return { code: 'missing_podcast_audio', message: 'Podcast audio is not ready.' };
23
+ }
24
+ if (typeof content.transcript !== 'string' || !content.transcript.trim()) {
25
+ return { code: 'podcast_transcript_pending', message: 'Podcast transcript is not ready.' };
26
+ }
27
+ if (typeof content.processing_source_url === 'string' &&
28
+ content.processing_source_url.trim() &&
29
+ (typeof content.duration_seconds !== 'number' ||
30
+ !Number.isFinite(content.duration_seconds) ||
31
+ content.duration_seconds <= 0)) {
32
+ return {
33
+ code: 'podcast_source_duration_unavailable',
34
+ message: 'Podcast source duration is not verified.',
35
+ };
36
+ }
37
+ return null;
38
+ }
39
+ export function validPodcastSourceUrl(value) {
40
+ if (!value || !/^https:\/\/\S+$/.test(value) || Array.from(value).length > 2048)
41
+ return false;
42
+ try {
43
+ const url = new URL(value);
44
+ return (url.protocol === 'https:' && !!url.hostname && !url.username && !url.password && !url.hash);
45
+ }
46
+ catch {
47
+ return false;
48
+ }
49
+ }
50
+ //# sourceMappingURL=podcast-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"podcast-source.js","sourceRoot":"","sources":["../../src/engine/podcast-source.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAClD,KAAkC;IAElC,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CACrC,IAAI,CAAC,SAAS,CAAC;QACd,0BAA0B;QAC1B,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,iBAAiB;QACvB,KAAK,CAAC,qBAAqB;QAC3B,KAAK,CAAC,sBAAsB;QAC5B,KAAK,CAAC,wBAAwB;KAC9B,CAAC,CACF,CAAA;IACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACjG,CAAC;AAOD,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CACpC,OAQY;IAEZ,IAAI,OAAO,OAAO,EAAE,YAAY,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/E,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAA;IACjF,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1E,OAAO,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAA;IAC3F,CAAC;IACD,IACC,OAAO,OAAO,CAAC,qBAAqB,KAAK,QAAQ;QACjD,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE;QACpC,CAAC,OAAO,OAAO,CAAC,gBAAgB,KAAK,QAAQ;YAC5C,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC1C,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC,EAC9B,CAAC;QACF,OAAO;YACN,IAAI,EAAE,qCAAqC;YAC3C,OAAO,EAAE,0CAA0C;SACnD,CAAA;IACF,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAgC;IACrE,IAAI,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI;QAAE,OAAO,KAAK,CAAA;IAC7F,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,OAAO,CACN,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,CAC1F,CAAA;IACF,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC"}
@@ -0,0 +1,10 @@
1
+ /** A guard lives with its revision, so retries retain the same editorial proof. */
2
+ export declare const CURRENT_PUBLICATION_GUARD = "cms.scheduled-publication-current.v1";
3
+ export declare class PublicationCurrentSnapshotError extends Error {
4
+ constructor();
5
+ }
6
+ export declare function snapshotRecord(value: unknown): Record<string, unknown>;
7
+ export declare function assertCurrentPublicationSnapshot(current: Record<string, unknown>, expected: Record<string, unknown>): void;
8
+ /** Uses the immutable revision in the existing pointer CAS; no second write. */
9
+ export declare function currentPublicationSqlGuard(revisionAlias: string): string;
10
+ //# sourceMappingURL=publication-current-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publication-current-guard.d.ts","sourceRoot":"","sources":["../../src/engine/publication-current-guard.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,eAAO,MAAM,yBAAyB,yCAAyC,CAAA;AAE/E,qBAAa,+BAAgC,SAAQ,KAAK;;CAKzD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAItE;AAiCD,wBAAgB,gCAAgC,CAC/C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,IAAI,CAgBN;AAED,gFAAgF;AAChF,wBAAgB,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAiBxE"}
@@ -0,0 +1,76 @@
1
+ /** A guard lives with its revision, so retries retain the same editorial proof. */
2
+ export const CURRENT_PUBLICATION_GUARD = 'cms.scheduled-publication-current.v1';
3
+ export class PublicationCurrentSnapshotError extends Error {
4
+ constructor() {
5
+ super('Scheduled content or media changed before publication.');
6
+ this.name = 'PublicationCurrentSnapshotError';
7
+ }
8
+ }
9
+ export function snapshotRecord(value) {
10
+ return value && typeof value === 'object' && !Array.isArray(value)
11
+ ? value
12
+ : {};
13
+ }
14
+ const ITEM_FIELDS = [
15
+ 'id',
16
+ 'type',
17
+ 'slug',
18
+ 'status',
19
+ 'deleted_at',
20
+ 'canonical_version',
21
+ 'publish_at',
22
+ ];
23
+ const PODCAST_FIELDS = [
24
+ 'audio_r2_key',
25
+ 'transcript',
26
+ 'duration_seconds',
27
+ 'processing_source_url',
28
+ 'processing_source_kind',
29
+ 'processing_trigger_token',
30
+ ];
31
+ const VIDEO_FIELDS = [
32
+ 'video_id',
33
+ 'duration_seconds',
34
+ 'processing_source_url',
35
+ 'processing_source_kind',
36
+ 'processing_trigger_token',
37
+ 'processing_correlation_id',
38
+ 'processing_state',
39
+ 'hls_ready',
40
+ 'hls_manifest_url',
41
+ 'transcript_ready',
42
+ 'transcript_url',
43
+ ];
44
+ export function assertCurrentPublicationSnapshot(current, expected) {
45
+ const item = snapshotRecord(current.item);
46
+ const expectedItem = snapshotRecord(expected.item);
47
+ if (item.status !== 'scheduled' ||
48
+ item.deleted_at != null ||
49
+ ITEM_FIELDS.some((field) => item[field] !== expectedItem[field])) {
50
+ throw new PublicationCurrentSnapshotError();
51
+ }
52
+ const fields = item.type === 'podcast' ? PODCAST_FIELDS : item.type === 'video' ? VIDEO_FIELDS : [];
53
+ const content = snapshotRecord(current.content);
54
+ const expectedContent = snapshotRecord(expected.content);
55
+ if (fields.some((field) => content[field] !== expectedContent[field]))
56
+ throw new PublicationCurrentSnapshotError();
57
+ }
58
+ /** Uses the immutable revision in the existing pointer CAS; no second write. */
59
+ export function currentPublicationSqlGuard(revisionAlias) {
60
+ const item = (field) => `json_extract(${revisionAlias}.payload_json, '$.item.${field}')`;
61
+ const content = (field) => `json_extract(${revisionAlias}.payload_json, '$.content.${field}')`;
62
+ const matches = (table, fields) => `EXISTS (
63
+ SELECT 1 FROM ${table} current_media WHERE current_media.content_id = content_items.id
64
+ AND ${fields.map((field) => `current_media.${field} IS ${content(field)}`).join(' AND ')}
65
+ )`;
66
+ return `(json_extract(${revisionAlias}.payload_json, '$.publication_guard') IS NULL OR (
67
+ json_extract(${revisionAlias}.payload_json, '$.publication_guard') = '${CURRENT_PUBLICATION_GUARD}'
68
+ AND content_items.status = 'scheduled' AND content_items.deleted_at IS NULL
69
+ AND ${ITEM_FIELDS.filter((field) => field !== 'deleted_at')
70
+ .map((field) => `content_items.${field} IS ${item(field)}`)
71
+ .join(' AND ')}
72
+ AND (${item('type')} <> 'podcast' OR ${matches('podcast_content', PODCAST_FIELDS)})
73
+ AND (${item('type')} <> 'video' OR ${matches('video_content', VIDEO_FIELDS)})
74
+ ))`;
75
+ }
76
+ //# sourceMappingURL=publication-current-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publication-current-guard.js","sourceRoot":"","sources":["../../src/engine/publication-current-guard.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,10 @@ export interface PublishOneInput {
54
54
  requiredSurfaceNames?: string[];
55
55
  packageVersion?: string | null;
56
56
  surfaceHookTimeoutMs?: number;
57
+ /** Machine publication must still describe this scheduled editorial/media snapshot. */
58
+ expectedCurrentSnapshot?: Record<string, unknown>;
59
+ /** Digest of the external receipt bound to a guarded machine publication. */
60
+ expectedReceiptIdentity?: string;
57
61
  }
58
62
  export interface PublishOneReceipt {
59
63
  status: 'published';
@@ -1 +1 @@
1
- {"version":3,"file":"publication.d.ts","sourceRoot":"","sources":["../../src/engine/publication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publication.d.ts","sourceRoot":"","sources":["../../src/engine/publication.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { ContentMetadataError, MAX_CONTENT_METADATA_BYTES, serializeContentMetadata, } from './content-metadata.js';
2
+ import { assertCurrentPublicationSnapshot, CURRENT_PUBLICATION_GUARD, currentPublicationSqlGuard, } from './publication-current-guard.js';
2
3
  import { evaluateArticleBody } from './publish-guard.js';
3
4
  import { createContent, ensureUniqueSlug, getContentItem, getContentSnapshot, PublishContentValidationError, } from './publisher.js';
4
5
  import { getRevision } from './revisions.js';
@@ -374,6 +375,15 @@ async function createRevisionAndPublicationAttempt(db, input) {
374
375
  const snapshot = await getContentSnapshot(db, input.contentId);
375
376
  if (!snapshot)
376
377
  throw new PublicationNotFoundError(`content not found: ${input.contentId}`);
378
+ if (input.expectedCurrentSnapshot) {
379
+ assertCurrentPublicationSnapshot(snapshot, input.expectedCurrentSnapshot);
380
+ snapshot.publication_guard = CURRENT_PUBLICATION_GUARD;
381
+ if (input.expectedReceiptIdentity !== undefined) {
382
+ if (!/^[a-f0-9]{64}$/.test(input.expectedReceiptIdentity))
383
+ throw new Error('Invalid guarded publication receipt identity');
384
+ snapshot.publication_receipt_identity = input.expectedReceiptIdentity;
385
+ }
386
+ }
377
387
  assertPublicationSnapshotBodyValid(snapshot, input.contentId);
378
388
  const revisionId = crypto.randomUUID();
379
389
  const attemptId = crypto.randomUUID();
@@ -1020,6 +1030,7 @@ async function movePointerAndBeginCommit(db, attempt, now) {
1020
1030
  AND target_revision.content_id = ?
1021
1031
  AND json_type(target_revision.payload_json, '$.item.slug') = 'text'
1022
1032
  AND length(json_extract(target_revision.payload_json, '$.item.slug')) BETWEEN 1 AND 512
1033
+ ${attempt.operation === 'publish' ? `AND ${currentPublicationSqlGuard('target_revision')}` : ''}
1023
1034
  AND NOT EXISTS (
1024
1035
  SELECT 1
1025
1036
  FROM content_items other_item
@@ -1177,6 +1188,8 @@ export async function publishOne(db, input) {
1177
1188
  packageVersion: input.packageVersion ?? null,
1178
1189
  now,
1179
1190
  createdBy: input.createdBy,
1191
+ expectedCurrentSnapshot: input.expectedCurrentSnapshot,
1192
+ expectedReceiptIdentity: input.expectedReceiptIdentity,
1180
1193
  });
1181
1194
  const reconciliationInput = {
1182
1195
  operation: 'publish',