@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
package/README.md CHANGED
@@ -103,6 +103,26 @@ Masthead consumers can expose named category controls by passing
103
103
  persists the selected slug through `primaryCategory`, and the Library can filter
104
104
  the same canonical `content_items.channel` value.
105
105
 
106
+ Consumers can require a bounded primary-topic selection for chosen content
107
+ types. The editor persists the selected slug through `primaryTopic` on the
108
+ initial create request and every later update; it does not derive or alter the
109
+ content slug:
110
+
111
+ ```ts
112
+ primaryTopic: {
113
+ label: 'Region',
114
+ contentTypes: ['article', 'video', 'podcast'],
115
+ options: [
116
+ { slug: 'middle-east', label: 'Middle East' },
117
+ { slug: 'global', label: 'Global' },
118
+ ],
119
+ }
120
+ ```
121
+
122
+ When this control applies to a content type, Masthead will not create the item
123
+ until an editor makes a selection. Content types outside `contentTypes` keep
124
+ the package's existing topic behavior.
125
+
106
126
  Sites can also expose bounded metadata selects without forking Masthead:
107
127
 
108
128
  ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"foundry-dispatch.d.ts","sourceRoot":"","sources":["../../src/engine/foundry-dispatch.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,MAAM,MAAM,eAAe,GACxB,SAAS,GACT,QAAQ,GACR,UAAU,GACV,cAAc,GACd,aAAa,GACb,OAAO,GACP,QAAQ,CAAA;AAIX,MAAM,WAAW,cAAc;IAC9B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,gCAAiC,SAAQ,KAAK;IAC1D,QAAQ,CAAC,IAAI,EAAG,kBAAkB,CAAS;gBAE/B,SAAS,EAAE,MAAM;CAI7B;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,eAAe,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAwCD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACtC,EAAE,EAAE,UAAU,EACd,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAC1C,OAAO,CAAC,cAAc,CAAC,CAkIzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAoJjG;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CA8ClB"}
1
+ {"version":3,"file":"foundry-dispatch.d.ts","sourceRoot":"","sources":["../../src/engine/foundry-dispatch.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAazC,MAAM,MAAM,eAAe,GACxB,SAAS,GACT,QAAQ,GACR,UAAU,GACV,cAAc,GACd,aAAa,GACb,OAAO,GACP,QAAQ,CAAA;AAIX,MAAM,WAAW,cAAc;IAC9B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,gCAAiC,SAAQ,KAAK;IAC1D,QAAQ,CAAC,IAAI,EAAG,kBAAkB,CAAS;gBAE/B,SAAS,EAAE,MAAM;CAI7B;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,eAAe,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAwCD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACtC,EAAE,EAAE,UAAU,EACd,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAC1C,OAAO,CAAC,cAAc,CAAC,CA8KzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAoJjG;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CA8ClB"}
@@ -8,6 +8,7 @@
8
8
  // State machine: pending → queued → fetching → transcribing → transcoding →
9
9
  // ready | failed. Advances are driven by HMAC-verified callback events keyed
10
10
  // on `processing_trigger_token` and deduplicated on `event_id`.
11
+ import { validPodcastSourceUrl } from './podcast-source.js';
11
12
  const TERMINAL_STATES = ['ready', 'failed'];
12
13
  export class FoundryDispatchPrerequisiteError extends Error {
13
14
  code = 'missing_duration';
@@ -59,7 +60,7 @@ function inferVideoSourceKind(sourceUrl) {
59
60
  */
60
61
  export async function dispatchToFoundry(db, contentId, hook) {
61
62
  const content = await db
62
- .prepare('SELECT id, type, slug, title, description FROM content_items WHERE id = ? LIMIT 1')
63
+ .prepare('SELECT id, type, slug, title, description, canonical_version, status, deleted_at FROM content_items WHERE id = ? LIMIT 1')
63
64
  .bind(contentId)
64
65
  .first();
65
66
  if (!content) {
@@ -76,6 +77,7 @@ export async function dispatchToFoundry(db, contentId, hook) {
76
77
  let sourceKind = null;
77
78
  let videoId = null;
78
79
  let durationSeconds;
80
+ let podcastSnapshot = null;
79
81
  if (videoRow) {
80
82
  table = 'video_content';
81
83
  sourceUrl = videoRow.processing_source_url?.trim() ?? '';
@@ -89,13 +91,17 @@ export async function dispatchToFoundry(db, contentId, hook) {
89
91
  }
90
92
  else {
91
93
  const podcastRow = await db
92
- .prepare('SELECT content_id, audio_r2_key, duration_seconds FROM podcast_content WHERE content_id = ?')
94
+ .prepare('SELECT content_id, audio_r2_key, duration_seconds, transcript, processing_source_url, processing_source_kind, processing_trigger_token FROM podcast_content WHERE content_id = ?')
93
95
  .bind(contentId)
94
96
  .first();
95
97
  if (!podcastRow) {
96
98
  throw new Error(`dispatchToFoundry: content ${contentId} is not a video or podcast — cannot dispatch`);
97
99
  }
98
100
  table = 'podcast_content';
101
+ if (content.type !== 'podcast' || content.deleted_at != null || content.status === 'archived') {
102
+ throw new Error(`dispatchToFoundry: podcast ${contentId} is inactive`);
103
+ }
104
+ podcastSnapshot = podcastRow;
99
105
  sourceUrl = podcastRow.audio_r2_key?.trim() ?? '';
100
106
  if (!sourceUrl) {
101
107
  throw new Error(`dispatchToFoundry: content ${contentId} has no podcast audio R2 key`);
@@ -112,7 +118,7 @@ export async function dispatchToFoundry(db, contentId, hook) {
112
118
  }
113
119
  const triggerToken = crypto.randomUUID();
114
120
  const processingTriggerTokenHash = `sha256:${await sha256Hex(triggerToken)}`;
115
- const { correlationId } = await hook.dispatchVideo({
121
+ const { correlationId, podcastSource } = await hook.dispatchVideo({
116
122
  contentId,
117
123
  sourceUrl,
118
124
  kind,
@@ -147,11 +153,34 @@ export async function dispatchToFoundry(db, contentId, hook) {
147
153
  .run();
148
154
  }
149
155
  else {
150
- // podcast_content only has processing_trigger_token (migration 0006)
151
- await db
152
- .prepare('UPDATE podcast_content SET processing_trigger_token = ? WHERE content_id = ?')
153
- .bind(triggerToken, contentId)
156
+ if (!podcastSnapshot)
157
+ throw new Error('Podcast dispatch snapshot is missing');
158
+ if (podcastSource &&
159
+ (podcastSource.kind !== 'https' || !validPodcastSourceUrl(podcastSource.url))) {
160
+ throw new Error('Podcast dispatch returned an invalid source');
161
+ }
162
+ const selectedSource = Boolean(podcastSnapshot.processing_source_url?.trim());
163
+ const capturedUrl = selectedSource
164
+ ? podcastSnapshot.processing_source_url
165
+ : (podcastSource?.url ?? podcastSnapshot.processing_source_url);
166
+ const capturedKind = selectedSource
167
+ ? podcastSnapshot.processing_source_kind
168
+ : (podcastSource?.kind ?? podcastSnapshot.processing_source_kind);
169
+ // A host returns source evidence without mutating editor-owned state.
170
+ // Capture it and the trigger token together only if the exact pre-hook
171
+ // source/audio/editor snapshot is still current. No stale acknowledgement
172
+ // can restore a replaced source or overwrite a newer processing token.
173
+ const written = await db
174
+ .prepare(`UPDATE podcast_content SET processing_source_url = ?, processing_source_kind = ?, processing_trigger_token = ?
175
+ WHERE content_id = ? AND audio_r2_key IS ? AND duration_seconds IS ? AND transcript IS ?
176
+ AND processing_source_url IS ? AND processing_source_kind IS ? AND processing_trigger_token IS ?
177
+ AND EXISTS (SELECT 1 FROM content_items ci WHERE ci.id = podcast_content.content_id
178
+ AND ci.type = 'podcast' AND ci.slug = ? AND ci.canonical_version = ?
179
+ AND ci.status = ? AND ci.deleted_at IS NULL)`)
180
+ .bind(capturedUrl, capturedKind, triggerToken, contentId, podcastSnapshot.audio_r2_key, podcastSnapshot.duration_seconds, podcastSnapshot.transcript, podcastSnapshot.processing_source_url, podcastSnapshot.processing_source_kind, podcastSnapshot.processing_trigger_token, content.slug, content.canonical_version, content.status)
154
181
  .run();
182
+ if (written.meta?.changes !== 1)
183
+ throw new Error('Podcast source changed before dispatch acknowledgement');
155
184
  }
156
185
  return { correlationId, triggerToken };
157
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"foundry-dispatch.js","sourceRoot":"","sources":["../../src/engine/foundry-dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"foundry-dispatch.js","sourceRoot":"","sources":["../../src/engine/foundry-dispatch.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { ContentType, FrontsPublishStatus } from '../schema/types.js';
2
2
  import type { D1Database } from './d1.js';
3
+ import { type PodcastPublishBlockerCode } from './podcast-source.js';
3
4
  /** The CMS's own name for the record this intent describes. */
4
5
  export declare const FRONTS_PUBLISH_INTENT_SOURCE = "masthead";
5
6
  /**
@@ -9,7 +10,7 @@ export declare const FRONTS_PUBLISH_INTENT_SOURCE = "masthead";
9
10
  */
10
11
  export declare function frontsPublishIntentId(contentId: string, version: number): string;
11
12
  /** Every way a due item can fail to form a complete, honest intent. */
12
- export type FrontsPublishIntentErrorCode = 'missing_publish_at' | 'invalid_canonical_version' | 'missing_channel_targets' | 'invalid_channel_targets' | 'missing_trigger_token' | 'missing_article_body' | 'video_media_not_ready' | 'missing_podcast_audio';
13
+ export type FrontsPublishIntentErrorCode = 'missing_publish_at' | 'invalid_canonical_version' | 'missing_channel_targets' | 'invalid_channel_targets' | 'missing_trigger_token' | 'missing_article_body' | 'video_media_not_ready' | 'missing_podcast_audio' | PodcastPublishBlockerCode;
13
14
  /**
14
15
  * A due item whose canonical data cannot produce a complete intent. Thrown by
15
16
  * the single-item hydration; collected (never swallowed) by the batch one.
@@ -57,12 +58,16 @@ export interface FrontsPublishPodcastAudioRef {
57
58
  * dispatch time" pattern `video_content.processing_source_url` already uses.
58
59
  * `kind` is always `'https'` today: a single literal, not an open enum,
59
60
  * because there is exactly one supported source kind. Present only while the
60
- * podcast has a source but no audio yet; once `podcast_audio_hls` exists this
61
- * is null, so a consumer never sees both at once.
61
+ * podcast is incomplete. An existing audio object with a missing transcript
62
+ * still needs production; it is not a publishable audio reference yet.
62
63
  */
63
64
  export interface FrontsPublishPodcastSourceRef {
64
65
  kind: 'https';
65
66
  url: string;
67
+ /** Immutable media identity; rescheduling alone does not change it. */
68
+ generation: string;
69
+ /** Positive finite duration measured for the current captured source. */
70
+ duration_seconds: number;
66
71
  }
67
72
  export interface FrontsPublishLinkRef {
68
73
  rel: 'canonical' | 'public';
@@ -74,7 +79,7 @@ export interface FrontsPublishContentRefs {
74
79
  images: FrontsPublishImageRef[];
75
80
  video_hls: FrontsPublishVideoHlsRef | null;
76
81
  podcast_audio_hls: FrontsPublishPodcastAudioRef | null;
77
- /** Null once podcast_audio_hls exists, or if no source was ever captured. */
82
+ /** Present only while media is incomplete and a valid source was captured. */
78
83
  podcast_source: FrontsPublishPodcastSourceRef | null;
79
84
  /** `[]` is valid. */
80
85
  links: FrontsPublishLinkRef[];
@@ -161,6 +166,8 @@ export interface HydrateFrontsPublishIntentsOptions {
161
166
  }) => string;
162
167
  /** Public media host used for media rows with no stored URL. Default 'media.fronts.co'. */
163
168
  mediaPublicDomain?: string;
169
+ /** False keeps source-only readiness failures visible without requesting production. */
170
+ podcastSourceProductionEnabled?: boolean;
164
171
  }
165
172
  /** One due item that could NOT form a complete intent, with the exact reason. */
166
173
  export interface FrontsPublishIntentFailure {
@@ -187,6 +194,10 @@ export interface HydrateFrontsPublishIntentsResult {
187
194
  */
188
195
  incomplete: FrontsPublishIntentFailure[];
189
196
  }
197
+ export declare class FrontsScheduleOverflowError extends Error {
198
+ readonly limit: number;
199
+ constructor(limit: number);
200
+ }
190
201
  /**
191
202
  * Hydrate every due/overdue `scheduled` item into a complete canonical intent.
192
203
  *
@@ -1 +1 @@
1
- {"version":3,"file":"fronts-publish-intent.d.ts","sourceRoot":"","sources":["../../src/engine/fronts-publish-intent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fronts-publish-intent.d.ts","sourceRoot":"","sources":["../../src/engine/fronts-publish-intent.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { frontsPodcastSourceGeneration, podcastPublishBlocker, validPodcastSourceUrl, } from './podcast-source.js';
1
2
  /** The CMS's own name for the record this intent describes. */
2
3
  export const FRONTS_PUBLISH_INTENT_SOURCE = 'masthead';
3
4
  /**
@@ -108,6 +109,14 @@ export async function setFrontsChannelTargets(db, contentId, targets) {
108
109
  const CANDIDATE_COLUMNS = `id, type, slug, title, channel, publish_at, fronts_publish_status,
109
110
  canonical_version, fronts_channel_targets, fronts_publish_trigger_token,
110
111
  canonical_url, hero_image_id, social_image_id`;
112
+ export class FrontsScheduleOverflowError extends Error {
113
+ limit;
114
+ constructor(limit) {
115
+ super(`Scheduled content exceeds the bounded ${limit}-item response.`);
116
+ this.limit = limit;
117
+ this.name = 'FrontsScheduleOverflowError';
118
+ }
119
+ }
111
120
  /** `?, ?, ?` for an IN clause of `count` bound values. */
112
121
  function placeholders(count) {
113
122
  return new Array(count).fill('?').join(', ');
@@ -143,13 +152,16 @@ export async function hydrateFrontsPublishIntents(db, options) {
143
152
  .prepare(`SELECT ${CANDIDATE_COLUMNS}
144
153
  FROM content_items
145
154
  WHERE status = 'scheduled'
155
+ AND deleted_at IS NULL
146
156
  AND publish_at IS NOT NULL
147
157
  AND publish_at <= ?
148
158
  ORDER BY publish_at ASC
149
159
  LIMIT ?`)
150
- .bind(options.toSeconds, limit)
160
+ .bind(options.toSeconds, limit + 1)
151
161
  .all();
152
162
  const rows = candidates.results ?? [];
163
+ if (rows.length > limit)
164
+ throw new FrontsScheduleOverflowError(limit);
153
165
  if (rows.length === 0)
154
166
  return { intents: [], incomplete: [] };
155
167
  const refs = await loadContentRefSources(db, rows);
@@ -162,10 +174,11 @@ export async function hydrateFrontsPublishIntents(db, options) {
162
174
  mediaPublicDomain,
163
175
  resolve: options.resolveContentUrl,
164
176
  });
165
- intents.push(intent);
166
- // The one dual-signal case (M2-B2): a podcast with a source but no
167
- // audio yet is a real intents[] entry AND an incomplete[] entry at
168
- // once, not either/or -- see buildContentRefs's module comment.
177
+ if (options.podcastSourceProductionEnabled !== false || !intent.content_refs.podcast_source) {
178
+ intents.push(intent);
179
+ }
180
+ // A podcast with a source but incomplete media is visible to the
181
+ // production consumer and remains explicitly unpublishable.
169
182
  if (dualSignal)
170
183
  incomplete.push(dualSignal);
171
184
  }
@@ -217,7 +230,7 @@ async function loadContentRefSources(db, rows) {
217
230
  const podcasts = new Map();
218
231
  if (podcastIds.length > 0) {
219
232
  const res = await db
220
- .prepare(`SELECT content_id, audio_r2_key, duration_seconds, processing_source_url, processing_source_kind FROM podcast_content
233
+ .prepare(`SELECT content_id, transcript, audio_r2_key, duration_seconds, processing_source_url, processing_source_kind, processing_trigger_token FROM podcast_content
221
234
  WHERE content_id IN (${placeholders(podcastIds.length)})`)
222
235
  .bind(...podcastIds)
223
236
  .all();
@@ -266,7 +279,7 @@ async function buildIntent(row, refs, ctx) {
266
279
  throw new FrontsPublishIntentError('missing_trigger_token', row.id, 'item was never armed for the Fronts publish path (no fronts_publish_trigger_token)');
267
280
  }
268
281
  const deadline = Math.floor(row.publish_at);
269
- const { refs: contentRefs, incomplete } = buildContentRefs(row, refs, ctx);
282
+ const { refs: contentRefs, incomplete } = await buildContentRefs(row, refs, ctx);
270
283
  return {
271
284
  intent: {
272
285
  intent_id: frontsPublishIntentId(row.id, version),
@@ -290,14 +303,14 @@ async function buildIntent(row, refs, ctx) {
290
303
  /**
291
304
  * Per-type content refs, applying the absence rules in the module header.
292
305
  * Returns an `incomplete` note alongside a normally-complete refs object for
293
- * exactly one dual-signal case (M2-B2): a podcast with a processing source
294
- * captured but no audio yet. That item is genuinely not publishable (still
306
+ * a podcast with a processing source and incomplete audio/transcript evidence.
307
+ * That item is not publishable (still
295
308
  * worth an incomplete[] entry, same code as before) but is also not nothing
296
309
  * -- a pull consumer needs `podcast_source` to start production, so this
297
310
  * function returns it rather than throwing it away with the rest of the
298
311
  * intent the way every OTHER missing-required-value case still does.
299
312
  */
300
- function buildContentRefs(row, refs, ctx) {
313
+ async function buildContentRefs(row, refs, ctx) {
301
314
  const publicUrl = ctx.resolve({ type: row.type, slug: row.slug });
302
315
  const canonicalUrl = row.canonical_url?.trim() || null;
303
316
  // --- article: required for body-backed types, validly absent otherwise.
@@ -349,7 +362,8 @@ function buildContentRefs(row, refs, ctx) {
349
362
  if (row.type === 'podcast') {
350
363
  const found = refs.podcasts.get(row.id);
351
364
  const key = found?.audio_r2_key?.trim();
352
- if (found && key) {
365
+ const blocker = podcastPublishBlocker(found);
366
+ if (found && key && !blocker) {
353
367
  podcastAudio = {
354
368
  kind: 'r2-object',
355
369
  url: objectKeyUrl(key, ctx.mediaPublicDomain),
@@ -357,20 +371,39 @@ function buildContentRefs(row, refs, ctx) {
357
371
  };
358
372
  }
359
373
  else {
360
- const message = 'a podcast intent requires a non-empty podcast_content.audio_r2_key';
361
- const sourceUrl = found?.processing_source_url?.trim();
362
- const sourceKind = found?.processing_source_kind?.trim();
363
- if (sourceUrl && sourceKind === 'https') {
364
- podcastSource = { kind: 'https', url: sourceUrl };
374
+ const failure = blocker ?? {
375
+ code: 'missing_podcast_audio',
376
+ message: 'Podcast audio is not ready.',
377
+ };
378
+ const sourceUrl = found?.processing_source_url;
379
+ if (found && validPodcastSourceUrl(sourceUrl) && found.processing_source_kind === 'https') {
380
+ if (typeof found.duration_seconds !== 'number' ||
381
+ !Number.isFinite(found.duration_seconds) ||
382
+ found.duration_seconds <= 0) {
383
+ throw new FrontsPublishIntentError('podcast_source_duration_unavailable', row.id, 'Podcast source duration is not verified.');
384
+ }
385
+ podcastSource = {
386
+ kind: 'https',
387
+ url: sourceUrl,
388
+ duration_seconds: found.duration_seconds,
389
+ generation: await frontsPodcastSourceGeneration({
390
+ content_id: row.id,
391
+ slug: row.slug,
392
+ canonical_version: row.canonical_version,
393
+ processing_source_url: found.processing_source_url,
394
+ processing_source_kind: found.processing_source_kind,
395
+ processing_trigger_token: found.processing_trigger_token,
396
+ }),
397
+ };
365
398
  incomplete = {
366
399
  content_id: row.id,
367
- code: 'missing_podcast_audio',
368
- message,
400
+ code: failure.code,
401
+ message: failure.message,
369
402
  publish_at: Math.floor(row.publish_at ?? 0),
370
403
  };
371
404
  }
372
405
  else {
373
- throw new FrontsPublishIntentError('missing_podcast_audio', row.id, message);
406
+ throw new FrontsPublishIntentError(failure.code, row.id, failure.message);
374
407
  }
375
408
  }
376
409
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fronts-publish-intent.js","sourceRoot":"","sources":["../../src/engine/fronts-publish-intent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fronts-publish-intent.js","sourceRoot":"","sources":["../../src/engine/fronts-publish-intent.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,18 @@ export interface FrontsPublishCallbackInput {
57
57
  error?: string | null;
58
58
  /** Reference time (unix seconds), for tests. Defaults to Date.now(). */
59
59
  now?: number;
60
+ /** Optional occurrence evidence carried by current publish workers. */
61
+ publishAt?: number | null;
62
+ /** The route supplies the same host hook used by the editorial publish action. */
63
+ checkReadiness?: (item: {
64
+ id: string;
65
+ type: ContentType;
66
+ status: string;
67
+ }) => Promise<{
68
+ ready: boolean;
69
+ blockers?: string[];
70
+ message?: string;
71
+ }>;
60
72
  }
61
73
  export interface FrontsPublishCallbackResult {
62
74
  ok: boolean;
@@ -70,6 +82,13 @@ export interface FrontsPublishCallbackResult {
70
82
  contentFound: boolean;
71
83
  /** Set when a `live` callback could not be committed through the ledger. */
72
84
  ledgerError: string | null;
85
+ /** A retryable hold or stale/cancelled snapshot; never consumes event_id. */
86
+ rejection?: {
87
+ code: string;
88
+ status: 404 | 409 | 503;
89
+ blockers?: string[];
90
+ message: string;
91
+ };
73
92
  }
74
93
  /**
75
94
  * Apply one foundryd publish-callback. Idempotent by `event_id`: a repeat
@@ -1 +1 @@
1
- {"version":3,"file":"fronts-publish.d.ts","sourceRoot":"","sources":["../../src/engine/fronts-publish.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGzC,8EAA8E;AAC9E,eAAO,MAAM,uBAAuB,EAAE,SAAS,mBAAmB,EAMxD,CAAA;AAEV,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAElF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO,CASxF;AAID,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAA;IACjB,4EAA4E;IAC5E,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,CAAA;IAC/C,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,gCAAgC;IAChD,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAA;IACjB,yFAAyF;IACzF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC9C,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,gCAAgC,GACvC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAiC/B;AAID,MAAM,WAAW,oBAAoB;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAChC,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACnC,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACrC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,2BAA2B;IAC3C,EAAE,EAAE,OAAO,CAAA;IACX,iFAAiF;IACjF,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,mBAAmB,CAAA;IAC3B,8EAA8E;IAC9E,SAAS,EAAE,OAAO,CAAA;IAClB,gFAAgF;IAChF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,OAAO,CAAA;IACrB,4EAA4E;IAC5E,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B;AA2BD;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC/C,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,0BAA0B,GAC/B,OAAO,CAAC,2BAA2B,CAAC,CAoJtC"}
1
+ {"version":3,"file":"fronts-publish.d.ts","sourceRoot":"","sources":["../../src/engine/fronts-publish.ts"],"names":[],"mappings":"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"}