canopycms 0.0.54 → 0.0.56

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 (225) hide show
  1. package/dist/api/assets.d.ts +14 -2
  2. package/dist/api/assets.d.ts.map +1 -1
  3. package/dist/api/assets.js +14 -3
  4. package/dist/api/assets.js.map +1 -1
  5. package/dist/api/branch-status.d.ts.map +1 -1
  6. package/dist/api/branch-status.js +8 -2
  7. package/dist/api/branch-status.js.map +1 -1
  8. package/dist/api/client.d.ts +2 -2
  9. package/dist/api/client.d.ts.map +1 -1
  10. package/dist/api/client.js +29 -14
  11. package/dist/api/client.js.map +1 -1
  12. package/dist/api/content.d.ts +2 -2
  13. package/dist/api/content.d.ts.map +1 -1
  14. package/dist/api/content.js +160 -26
  15. package/dist/api/content.js.map +1 -1
  16. package/dist/api/entries.d.ts.map +1 -1
  17. package/dist/api/entries.js +8 -4
  18. package/dist/api/entries.js.map +1 -1
  19. package/dist/api/github-sync.d.ts.map +1 -1
  20. package/dist/api/github-sync.js +45 -7
  21. package/dist/api/github-sync.js.map +1 -1
  22. package/dist/api/groups.d.ts.map +1 -1
  23. package/dist/api/groups.js +15 -5
  24. package/dist/api/groups.js.map +1 -1
  25. package/dist/api/permissions.d.ts +6 -6
  26. package/dist/api/permissions.d.ts.map +1 -1
  27. package/dist/api/permissions.js +24 -9
  28. package/dist/api/permissions.js.map +1 -1
  29. package/dist/api/request-body-hash.d.ts +33 -0
  30. package/dist/api/request-body-hash.d.ts.map +1 -0
  31. package/dist/api/request-body-hash.js +43 -0
  32. package/dist/api/request-body-hash.js.map +1 -0
  33. package/dist/api/resolve-references.d.ts.map +1 -1
  34. package/dist/api/resolve-references.js +8 -1
  35. package/dist/api/resolve-references.js.map +1 -1
  36. package/dist/api/schema.js +9 -9
  37. package/dist/api/schema.js.map +1 -1
  38. package/dist/api/settings-helpers.d.ts +14 -1
  39. package/dist/api/settings-helpers.d.ts.map +1 -1
  40. package/dist/api/settings-helpers.js +11 -2
  41. package/dist/api/settings-helpers.js.map +1 -1
  42. package/dist/api/types.d.ts +10 -0
  43. package/dist/api/types.d.ts.map +1 -1
  44. package/dist/auth/caching-auth-plugin.d.ts +8 -1
  45. package/dist/auth/caching-auth-plugin.d.ts.map +1 -1
  46. package/dist/auth/caching-auth-plugin.js +6 -1
  47. package/dist/auth/caching-auth-plugin.js.map +1 -1
  48. package/dist/auth/index.d.ts +1 -0
  49. package/dist/auth/index.d.ts.map +1 -1
  50. package/dist/auth/index.js +1 -0
  51. package/dist/auth/index.js.map +1 -1
  52. package/dist/auth/plugin.d.ts +35 -0
  53. package/dist/auth/plugin.d.ts.map +1 -1
  54. package/dist/auth/plugin.js +27 -1
  55. package/dist/auth/plugin.js.map +1 -1
  56. package/dist/authorization/helpers.d.ts +16 -0
  57. package/dist/authorization/helpers.d.ts.map +1 -1
  58. package/dist/authorization/helpers.js +18 -0
  59. package/dist/authorization/helpers.js.map +1 -1
  60. package/dist/authorization/index.d.ts +1 -1
  61. package/dist/authorization/index.d.ts.map +1 -1
  62. package/dist/authorization/index.js +1 -1
  63. package/dist/authorization/index.js.map +1 -1
  64. package/dist/build/generate-ai-content.d.ts.map +1 -1
  65. package/dist/build/generate-ai-content.js +7 -0
  66. package/dist/build/generate-ai-content.js.map +1 -1
  67. package/dist/cli/cli.d.ts.map +1 -1
  68. package/dist/cli/cli.js +2 -1
  69. package/dist/cli/cli.js.map +1 -1
  70. package/dist/cli/generate-ai-content.js +1150 -355
  71. package/dist/cli/init.d.ts +1 -1
  72. package/dist/cli/init.d.ts.map +1 -1
  73. package/dist/cli/init.js +40 -13
  74. package/dist/cli/init.js.map +1 -1
  75. package/dist/cli/sync.d.ts.map +1 -1
  76. package/dist/cli/sync.js +88 -60
  77. package/dist/cli/sync.js.map +1 -1
  78. package/dist/cli/template-files/canopy.ts.template +2 -1
  79. package/dist/cli/template-files/edit-page.tsx.template +8 -1
  80. package/dist/cli/template-files/middleware.ts.template +18 -0
  81. package/dist/cli/templates.d.ts.map +1 -1
  82. package/dist/cli/templates.js +19 -4
  83. package/dist/cli/templates.js.map +1 -1
  84. package/dist/config/helpers.d.ts +9 -1
  85. package/dist/config/helpers.d.ts.map +1 -1
  86. package/dist/config/helpers.js +33 -75
  87. package/dist/config/helpers.js.map +1 -1
  88. package/dist/config/schemas/config.d.ts +8 -24
  89. package/dist/config/schemas/config.d.ts.map +1 -1
  90. package/dist/config/schemas/config.js +12 -5
  91. package/dist/config/schemas/config.js.map +1 -1
  92. package/dist/config/schemas/media.d.ts +1 -10
  93. package/dist/config/schemas/media.d.ts.map +1 -1
  94. package/dist/config/schemas/media.js +8 -6
  95. package/dist/config/schemas/media.js.map +1 -1
  96. package/dist/config/types.d.ts +6 -4
  97. package/dist/config/types.d.ts.map +1 -1
  98. package/dist/config-test.d.ts +5 -3
  99. package/dist/config-test.d.ts.map +1 -1
  100. package/dist/config-test.js +9 -1
  101. package/dist/config-test.js.map +1 -1
  102. package/dist/content-id-index.d.ts +12 -6
  103. package/dist/content-id-index.d.ts.map +1 -1
  104. package/dist/content-id-index.js +12 -6
  105. package/dist/content-id-index.js.map +1 -1
  106. package/dist/content-index-generation.d.ts +30 -0
  107. package/dist/content-index-generation.d.ts.map +1 -0
  108. package/dist/content-index-generation.js +131 -0
  109. package/dist/content-index-generation.js.map +1 -0
  110. package/dist/content-index-registry.d.ts +38 -0
  111. package/dist/content-index-registry.d.ts.map +1 -0
  112. package/dist/content-index-registry.js +53 -0
  113. package/dist/content-index-registry.js.map +1 -0
  114. package/dist/content-listing.d.ts +3 -1
  115. package/dist/content-listing.d.ts.map +1 -1
  116. package/dist/content-listing.js +1 -0
  117. package/dist/content-listing.js.map +1 -1
  118. package/dist/content-store.d.ts +130 -6
  119. package/dist/content-store.d.ts.map +1 -1
  120. package/dist/content-store.js +343 -31
  121. package/dist/content-store.js.map +1 -1
  122. package/dist/editor/Editor.d.ts.map +1 -1
  123. package/dist/editor/Editor.js +27 -19
  124. package/dist/editor/Editor.js.map +1 -1
  125. package/dist/editor/FormRenderer.d.ts +7 -0
  126. package/dist/editor/FormRenderer.d.ts.map +1 -1
  127. package/dist/editor/FormRenderer.js +12 -3
  128. package/dist/editor/FormRenderer.js.map +1 -1
  129. package/dist/editor/components/EditorHeader.d.ts.map +1 -1
  130. package/dist/editor/components/EditorHeader.js +3 -4
  131. package/dist/editor/components/EditorHeader.js.map +1 -1
  132. package/dist/editor/components/EditorSidebar.d.ts.map +1 -1
  133. package/dist/editor/components/EditorSidebar.js +2 -4
  134. package/dist/editor/components/EditorSidebar.js.map +1 -1
  135. package/dist/editor/fields/ReferenceField.d.ts.map +1 -1
  136. package/dist/editor/fields/ReferenceField.js +19 -2
  137. package/dist/editor/fields/ReferenceField.js.map +1 -1
  138. package/dist/editor/group-manager/hooks/useGroupState.d.ts.map +1 -1
  139. package/dist/editor/group-manager/hooks/useGroupState.js +5 -2
  140. package/dist/editor/group-manager/hooks/useGroupState.js.map +1 -1
  141. package/dist/editor/hooks/useDraftManager.d.ts +15 -0
  142. package/dist/editor/hooks/useDraftManager.d.ts.map +1 -1
  143. package/dist/editor/hooks/useDraftManager.js +140 -1
  144. package/dist/editor/hooks/useDraftManager.js.map +1 -1
  145. package/dist/editor/hooks/useEntryManager.d.ts +9 -2
  146. package/dist/editor/hooks/useEntryManager.d.ts.map +1 -1
  147. package/dist/editor/hooks/useEntryManager.js +9 -3
  148. package/dist/editor/hooks/useEntryManager.js.map +1 -1
  149. package/dist/editor/hooks/useSchemaManager.d.ts +34 -10
  150. package/dist/editor/hooks/useSchemaManager.d.ts.map +1 -1
  151. package/dist/editor/hooks/useSchemaManager.js +22 -25
  152. package/dist/editor/hooks/useSchemaManager.js.map +1 -1
  153. package/dist/editor/schema-editor/CollectionEditor.d.ts +6 -5
  154. package/dist/editor/schema-editor/CollectionEditor.d.ts.map +1 -1
  155. package/dist/editor/schema-editor/CollectionEditor.js +37 -12
  156. package/dist/editor/schema-editor/CollectionEditor.js.map +1 -1
  157. package/dist/entry-link-resolver.d.ts.map +1 -1
  158. package/dist/entry-link-resolver.js +5 -0
  159. package/dist/entry-link-resolver.js.map +1 -1
  160. package/dist/git-manager.d.ts +38 -3
  161. package/dist/git-manager.d.ts.map +1 -1
  162. package/dist/git-manager.js +141 -33
  163. package/dist/git-manager.js.map +1 -1
  164. package/dist/github-service.d.ts +69 -3
  165. package/dist/github-service.d.ts.map +1 -1
  166. package/dist/github-service.js +149 -25
  167. package/dist/github-service.js.map +1 -1
  168. package/dist/http/handler.d.ts +1 -1
  169. package/dist/http/handler.d.ts.map +1 -1
  170. package/dist/http/handler.js +36 -7
  171. package/dist/http/handler.js.map +1 -1
  172. package/dist/http/router.d.ts +11 -0
  173. package/dist/http/router.d.ts.map +1 -1
  174. package/dist/http/router.js +80 -16
  175. package/dist/http/router.js.map +1 -1
  176. package/dist/paths/validation.d.ts.map +1 -1
  177. package/dist/paths/validation.js +12 -0
  178. package/dist/paths/validation.js.map +1 -1
  179. package/dist/schema/schema-store.d.ts +9 -0
  180. package/dist/schema/schema-store.d.ts.map +1 -1
  181. package/dist/schema/schema-store.js +57 -8
  182. package/dist/schema/schema-store.js.map +1 -1
  183. package/dist/services.d.ts +1 -0
  184. package/dist/services.d.ts.map +1 -1
  185. package/dist/services.js +9 -2
  186. package/dist/services.js.map +1 -1
  187. package/dist/static/index.d.ts +32 -0
  188. package/dist/static/index.d.ts.map +1 -1
  189. package/dist/static/index.js +90 -0
  190. package/dist/static/index.js.map +1 -1
  191. package/dist/sync-core.d.ts.map +1 -1
  192. package/dist/sync-core.js +22 -9
  193. package/dist/sync-core.js.map +1 -1
  194. package/dist/user.d.ts +0 -18
  195. package/dist/user.d.ts.map +1 -1
  196. package/dist/user.js +7 -22
  197. package/dist/user.js.map +1 -1
  198. package/dist/utils/error.d.ts +8 -0
  199. package/dist/utils/error.d.ts.map +1 -1
  200. package/dist/utils/error.js +35 -7
  201. package/dist/utils/error.js.map +1 -1
  202. package/dist/validation/deletion-checker.d.ts.map +1 -1
  203. package/dist/validation/deletion-checker.js +6 -5
  204. package/dist/validation/deletion-checker.js.map +1 -1
  205. package/dist/validation/entry-validator.d.ts +67 -0
  206. package/dist/validation/entry-validator.d.ts.map +1 -0
  207. package/dist/validation/entry-validator.js +277 -0
  208. package/dist/validation/entry-validator.js.map +1 -0
  209. package/dist/validation/field-traversal.d.ts +23 -1
  210. package/dist/validation/field-traversal.d.ts.map +1 -1
  211. package/dist/validation/field-traversal.js +29 -9
  212. package/dist/validation/field-traversal.js.map +1 -1
  213. package/dist/worker/cms-worker.d.ts +70 -6
  214. package/dist/worker/cms-worker.d.ts.map +1 -1
  215. package/dist/worker/cms-worker.js +199 -93
  216. package/dist/worker/cms-worker.js.map +1 -1
  217. package/package.json +2 -2
  218. package/dist/editor/components/EditorContext.d.ts +0 -35
  219. package/dist/editor/components/EditorContext.d.ts.map +0 -1
  220. package/dist/editor/components/EditorContext.js +0 -19
  221. package/dist/editor/components/EditorContext.js.map +0 -1
  222. package/dist/editor/env.d.ts +0 -5
  223. package/dist/editor/env.d.ts.map +0 -1
  224. package/dist/editor/env.js +0 -5
  225. package/dist/editor/env.js.map +0 -1
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Computes the `x-amz-content-sha256` header value required by CloudFront's
3
+ * Origin Access Control (OAC) SigV4 signing when a request carries a body.
4
+ *
5
+ * Documented AWS behavior: CloudFront signs origin requests to OAC-protected
6
+ * Lambda Function URLs, but it never hashes the payload itself - it forwards
7
+ * whatever `x-amz-content-sha256` header value the viewer request already
8
+ * has. If a request has a body and this header is missing, Lambda's
9
+ * signature verification fails and the origin responds 403. See
10
+ * docs/deploying-to-aws.md for the full explanation.
11
+ *
12
+ * Uses WebCrypto (available in secure-context browsers and in Node >= 18) to
13
+ * compute the lowercase-hex SHA-256 digest of the exact bytes sent as the
14
+ * request body.
15
+ */
16
+ /**
17
+ * Hash a string request body (e.g. a JSON-serialized payload).
18
+ *
19
+ * Returns `undefined` if WebCrypto is unavailable (for example a dev server
20
+ * running over plain http, which is not a secure context) so callers can
21
+ * skip the header rather than throw - production deployments are always
22
+ * https.
23
+ */
24
+ export declare function computeContentSha256Hex(body: string): Promise<string | undefined>;
25
+ /**
26
+ * Hash a raw-bytes request body (e.g. an ArrayBuffer or Blob upload).
27
+ *
28
+ * Note: this cannot be used for `FormData` bodies - the multipart boundary
29
+ * is generated by the runtime at send time, so the final byte stream isn't
30
+ * known until after the request would already need to be signed.
31
+ */
32
+ export declare function computeContentSha256HexFromBytes(bytes: BufferSource): Promise<string | undefined>;
33
+ //# sourceMappingURL=request-body-hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-body-hash.d.ts","sourceRoot":"","sources":["../../src/api/request-body-hash.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEvF;AAED;;;;;;GAMG;AACH,wBAAsB,gCAAgC,CACpD,KAAK,EAAE,YAAY,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQ7B"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Computes the `x-amz-content-sha256` header value required by CloudFront's
3
+ * Origin Access Control (OAC) SigV4 signing when a request carries a body.
4
+ *
5
+ * Documented AWS behavior: CloudFront signs origin requests to OAC-protected
6
+ * Lambda Function URLs, but it never hashes the payload itself - it forwards
7
+ * whatever `x-amz-content-sha256` header value the viewer request already
8
+ * has. If a request has a body and this header is missing, Lambda's
9
+ * signature verification fails and the origin responds 403. See
10
+ * docs/deploying-to-aws.md for the full explanation.
11
+ *
12
+ * Uses WebCrypto (available in secure-context browsers and in Node >= 18) to
13
+ * compute the lowercase-hex SHA-256 digest of the exact bytes sent as the
14
+ * request body.
15
+ */
16
+ /**
17
+ * Hash a string request body (e.g. a JSON-serialized payload).
18
+ *
19
+ * Returns `undefined` if WebCrypto is unavailable (for example a dev server
20
+ * running over plain http, which is not a secure context) so callers can
21
+ * skip the header rather than throw - production deployments are always
22
+ * https.
23
+ */
24
+ export async function computeContentSha256Hex(body) {
25
+ return computeContentSha256HexFromBytes(new TextEncoder().encode(body));
26
+ }
27
+ /**
28
+ * Hash a raw-bytes request body (e.g. an ArrayBuffer or Blob upload).
29
+ *
30
+ * Note: this cannot be used for `FormData` bodies - the multipart boundary
31
+ * is generated by the runtime at send time, so the final byte stream isn't
32
+ * known until after the request would already need to be signed.
33
+ */
34
+ export async function computeContentSha256HexFromBytes(bytes) {
35
+ const subtle = globalThis.crypto?.subtle;
36
+ if (!subtle)
37
+ return undefined;
38
+ const digest = await subtle.digest('SHA-256', bytes);
39
+ return Array.from(new Uint8Array(digest))
40
+ .map((byte) => byte.toString(16).padStart(2, '0'))
41
+ .join('');
42
+ }
43
+ //# sourceMappingURL=request-body-hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-body-hash.js","sourceRoot":"","sources":["../../src/api/request-body-hash.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAAY;IACxD,OAAO,gCAAgC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;AACzE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,KAAmB;IAEnB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAA;IACxC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAA;IAE7B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACjD,IAAI,CAAC,EAAE,CAAC,CAAA;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-references.d.ts","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAA0B,WAAW,EAAE,MAAM,SAAS,CAAA;AAOlE,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,EAAE,CAAA;CACd;AAED,4CAA4C;AAC5C,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC,CAAC,CAAA;AAoGF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;CAE5B,CAAA"}
1
+ {"version":3,"file":"resolve-references.d.ts","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAA0B,WAAW,EAAE,MAAM,SAAS,CAAA;AAOlE,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,EAAE,CAAA;CACd;AAED,4CAA4C;AAC5C,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC,CAAC,CAAA;AA4GF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;CAE5B,CAAA"}
@@ -6,11 +6,18 @@ import { branchNameSchema, contentIdSchema } from './validators.js';
6
6
  // ============================================================================
7
7
  // Zod Schemas for Validation
8
8
  // ============================================================================
9
+ /**
10
+ * Resolution does sequential per-ID file I/O (see the loop below), so the
11
+ * request body caps how much filesystem work a single authenticated caller
12
+ * can force. 100 is a generous bound for real UI usage (a page's worth of
13
+ * reference fields) while keeping worst-case latency/IO bounded (API-M1).
14
+ */
15
+ const MAX_RESOLVE_REFERENCE_IDS = 100;
9
16
  const resolveReferencesParamsSchema = z.object({
10
17
  branch: branchNameSchema,
11
18
  });
12
19
  const resolveReferencesBodySchema = z.object({
13
- ids: z.array(contentIdSchema).min(1),
20
+ ids: z.array(contentIdSchema).min(1).max(MAX_RESOLVE_REFERENCE_IDS),
14
21
  });
15
22
  const resolveReferencesHandler = async (gc, ctx, req, params, body) => {
16
23
  const { branchContext } = gc;
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-references.js","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-references.js","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@
12
12
  import { z } from 'zod';
13
13
  import path from 'node:path';
14
14
  import { defineEndpoint } from './route-builder.js';
15
- import { getErrorMessage } from '../utils/error.js';
15
+ import { getErrorMessage, sanitizeErrorMessage } from '../utils/error.js';
16
16
  import { branchNameSchema, logicalPathSchema } from './validators.js';
17
17
  import { SchemaOps, createCollectionInputSchema, updateCollectionInputSchema, entryTypeInputSchema, updateEntryTypeInputSchema, } from '../schema/schema-store.js';
18
18
  import { parseLogicalPath } from '../paths/index.js';
@@ -265,7 +265,7 @@ const createCollectionHandler = async (_gc, ctx, req, params, body) => {
265
265
  return {
266
266
  ok: false,
267
267
  status: 400,
268
- error: getErrorMessage(err),
268
+ error: sanitizeErrorMessage(getErrorMessage(err)),
269
269
  };
270
270
  }
271
271
  };
@@ -295,7 +295,7 @@ const updateCollectionHandler = async (_gc, ctx, req, params, body) => {
295
295
  return {
296
296
  ok: false,
297
297
  status: 400,
298
- error: getErrorMessage(err),
298
+ error: sanitizeErrorMessage(getErrorMessage(err)),
299
299
  };
300
300
  }
301
301
  };
@@ -325,7 +325,7 @@ const deleteCollectionHandler = async (_gc, ctx, req, params) => {
325
325
  return {
326
326
  ok: false,
327
327
  status: 400,
328
- error: getErrorMessage(err),
328
+ error: sanitizeErrorMessage(getErrorMessage(err)),
329
329
  };
330
330
  }
331
331
  };
@@ -355,7 +355,7 @@ const addEntryTypeHandler = async (_gc, ctx, req, params, body) => {
355
355
  return {
356
356
  ok: false,
357
357
  status: 400,
358
- error: getErrorMessage(err),
358
+ error: sanitizeErrorMessage(getErrorMessage(err)),
359
359
  };
360
360
  }
361
361
  };
@@ -399,7 +399,7 @@ const updateEntryTypeHandler = async (_gc, ctx, req, params, body) => {
399
399
  return {
400
400
  ok: false,
401
401
  status: 400,
402
- error: getErrorMessage(err),
402
+ error: sanitizeErrorMessage(getErrorMessage(err)),
403
403
  };
404
404
  }
405
405
  };
@@ -429,7 +429,7 @@ const removeEntryTypeHandler = async (_gc, ctx, req, params) => {
429
429
  return {
430
430
  ok: false,
431
431
  status: 400,
432
- error: getErrorMessage(err),
432
+ error: sanitizeErrorMessage(getErrorMessage(err)),
433
433
  };
434
434
  }
435
435
  };
@@ -459,7 +459,7 @@ const updateOrderHandler = async (_gc, ctx, req, params, body) => {
459
459
  return {
460
460
  ok: false,
461
461
  status: 400,
462
- error: getErrorMessage(err),
462
+ error: sanitizeErrorMessage(getErrorMessage(err)),
463
463
  };
464
464
  }
465
465
  };
@@ -483,7 +483,7 @@ const invalidateSchemaCacheHandler = async (gc, ctx, _req, _params) => {
483
483
  return {
484
484
  ok: false,
485
485
  status: 500,
486
- error: getErrorMessage(err),
486
+ error: sanitizeErrorMessage(getErrorMessage(err)),
487
487
  };
488
488
  }
489
489
  };
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/api/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/api/schema.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,19 @@ export declare function getSettingsBranchContext(ctx: ApiContext): Promise<{
14
14
  error: string;
15
15
  status: number;
16
16
  }>;
17
+ /**
18
+ * Result of a settings commit attempt. Callers (permissions/groups handlers)
19
+ * MUST check `pushed` before reporting success to the client (API-H1): a
20
+ * settings file can be written to the branch working tree but fail to commit
21
+ * or push (network error, git conflict, etc.), in which case the change is
22
+ * NOT durably saved and will be lost on redeploy/container recycle.
23
+ */
24
+ export interface CommitSettingsResult {
25
+ /** True if either no commit was required for this mode, or the commit was pushed. */
26
+ pushed: boolean;
27
+ /** Sanitized failure detail, present only when `pushed` is false. */
28
+ error?: string;
29
+ }
17
30
  /**
18
31
  * Commit and push settings changes based on the mode.
19
32
  * Both prod and dev use commitToSettingsBranch.
@@ -27,5 +40,5 @@ export declare function commitSettings(ctx: ApiContext, options: {
27
40
  fileName: string;
28
41
  message: string;
29
42
  mode: OperatingMode;
30
- }): Promise<void>;
43
+ }): Promise<CommitSettingsResult>;
31
44
  //# sourceMappingURL=settings-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings-helpers.d.ts","sourceRoot":"","sources":["../../src/api/settings-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGtD;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,UAAU,GACd,OAAO,CACN;IAAE,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC5E;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CACpC,CAiBA;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,UAAU,EACf,OAAO,EAAE;IACP,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,aAAa,CAAA;CACpB,GACA,OAAO,CAAC,IAAI,CAAC,CAuBf"}
1
+ {"version":3,"file":"settings-helpers.d.ts","sourceRoot":"","sources":["../../src/api/settings-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAItD;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,UAAU,GACd,OAAO,CACN;IAAE,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC5E;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CACpC,CAiBA;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,qFAAqF;IACrF,MAAM,EAAE,OAAO,CAAA;IACf,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,UAAU,EACf,OAAO,EAAE;IACP,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,aAAa,CAAA;CACpB,GACA,OAAO,CAAC,oBAAoB,CAAC,CAgC/B"}
@@ -1,4 +1,5 @@
1
1
  import { operatingStrategy } from '../operating-mode/index.js';
2
+ import { sanitizeErrorMessage } from '../utils/error.js';
2
3
  /**
3
4
  * Get the appropriate root path for settings (permissions/groups).
4
5
  * Returns the settings root managed by the settings workspace.
@@ -26,9 +27,10 @@ export async function getSettingsBranchContext(ctx) {
26
27
  */
27
28
  export async function commitSettings(ctx, options) {
28
29
  const strategy = operatingStrategy(options.mode);
29
- // No git operations if mode doesn't support commits
30
+ // No git operations if mode doesn't support commits - nothing to push, so
31
+ // this isn't a failure to persist durably.
30
32
  if (!strategy.shouldCommit()) {
31
- return;
33
+ return { pushed: true };
32
34
  }
33
35
  // For modes that use separate settings branch, commit to settings branch
34
36
  if (strategy.usesSeparateSettingsBranch()) {
@@ -42,7 +44,14 @@ export async function commitSettings(ctx, options) {
42
44
  });
43
45
  if (!result.pushed) {
44
46
  console.warn(`${options.message} committed but not pushed:`, result.error);
47
+ return {
48
+ pushed: false,
49
+ error: result.error
50
+ ? sanitizeErrorMessage(result.error)
51
+ : 'Settings change was saved but not pushed to git',
52
+ };
45
53
  }
46
54
  }
55
+ return { pushed: true };
47
56
  }
48
57
  //# sourceMappingURL=settings-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings-helpers.js","sourceRoot":"","sources":["../../src/api/settings-helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,GAAe;IAKf,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAA;IACrC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAExC,0DAA0D;IAC1D,MAAM,UAAU,GAAG,QAAQ,CAAC,qBAAqB,CAAC;QAChD,cAAc,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc;QAClD,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB;KACzD,CAAC,CAAA;IAEF,mDAAmD;IACnD,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAA;IAC/D,OAAO;QACL,OAAO,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE;QACrC,IAAI;QACJ,UAAU;KACX,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAe,EACf,OAMC;IAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhD,oDAAoD;IACpD,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC;QAC7B,OAAM;IACR,CAAC;IAED,yEAAyE;IACzE,IAAI,QAAQ,CAAC,0BAA0B,EAAE,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACvD,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,KAAK,EAAE,OAAO,CAAC,QAAQ;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,CAAC,sBAAsB,CAAC;gBACxC,oBAAoB,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB;aAC/D,CAAC;SACH,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,4BAA4B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAC5E,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"settings-helpers.js","sourceRoot":"","sources":["../../src/api/settings-helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAErD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,GAAe;IAKf,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAA;IACrC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAExC,0DAA0D;IAC1D,MAAM,UAAU,GAAG,QAAQ,CAAC,qBAAqB,CAAC;QAChD,cAAc,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc;QAClD,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB;KACzD,CAAC,CAAA;IAEF,mDAAmD;IACnD,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAA;IAC/D,OAAO;QACL,OAAO,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE;QACrC,IAAI;QACJ,UAAU;KACX,CAAA;AACH,CAAC;AAgBD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAe,EACf,OAMC;IAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhD,0EAA0E;IAC1E,2CAA2C;IAC3C,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;IACzB,CAAC;IAED,yEAAyE;IACzE,IAAI,QAAQ,CAAC,0BAA0B,EAAE,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACvD,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,KAAK,EAAE,OAAO,CAAC,QAAQ;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,QAAQ,CAAC,sBAAsB,CAAC;gBACxC,oBAAoB,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB;aAC/D,CAAC;SACH,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,4BAA4B,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;YAC1E,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,MAAM,CAAC,KAAK;oBACjB,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC;oBACpC,CAAC,CAAC,iDAAiD;aACtD,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;AACzB,CAAC"}
@@ -33,5 +33,15 @@ export interface ApiResponse<TData = unknown> {
33
33
  status: number;
34
34
  data?: TData;
35
35
  error?: string;
36
+ /**
37
+ * Structured per-field validation errors accompanying a 422 rejection
38
+ * (schema validation at the content write boundary). `fieldPath` uses the
39
+ * canonical CanopyCMS path format (e.g. `blocks[0].title`) so the editor can
40
+ * surface each error next to its form field.
41
+ */
42
+ fieldErrors?: Array<{
43
+ fieldPath: string;
44
+ message: string;
45
+ }>;
36
46
  }
37
47
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB;;;;;;;OAOG;IACH,gBAAgB,EAAE,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAC/B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAClC;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAA;CACxB;AAED,MAAM,WAAW,UAAU,CAAC,KAAK,GAAG,OAAO;IACzC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAA;IACrD,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,MAAM,WAAW,WAAW,CAAC,KAAK,GAAG,OAAO;IAC1C,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB;;;;;;;OAOG;IACH,gBAAgB,EAAE,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAC/B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAClC;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAA;CACxB;AAED,MAAM,WAAW,UAAU,CAAC,KAAK,GAAG,OAAO;IACzC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAA;IACrD,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,MAAM,WAAW,WAAW,CAAC,KAAK,GAAG,OAAO;IAC1C,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;;OAKG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC5D"}
@@ -31,13 +31,20 @@ export type TokenVerifier = (context: unknown) => Promise<{
31
31
  *
32
32
  * In dev mode, an optional `lazyRefresher` can be provided to auto-populate
33
33
  * the cache on first request, eliminating the need to run `worker run-once` manually.
34
+ *
35
+ * This wrapper only forwards the inner plugin's `verifiesCredentials` affirmation via the
36
+ * `options` constructor param — it cannot launder an insecure plugin, because
37
+ * createNextCanopyContext asserts the INNER plugin (before wrapping) in context-wrapper.ts.
34
38
  */
35
39
  export declare class CachingAuthPlugin implements AuthPlugin {
36
40
  private readonly verifyToken;
37
41
  private readonly cache;
38
42
  private readonly lazyRefresher?;
39
43
  private refreshPromise;
40
- constructor(verifyToken: TokenVerifier, cache: AuthCacheProvider, lazyRefresher?: (() => Promise<unknown>) | undefined);
44
+ readonly verifiesCredentials: boolean;
45
+ constructor(verifyToken: TokenVerifier, cache: AuthCacheProvider, lazyRefresher?: (() => Promise<unknown>) | undefined, options?: {
46
+ verifiesCredentials?: boolean;
47
+ });
41
48
  private ensureCachePopulated;
42
49
  authenticate(context: unknown): Promise<AuthenticationResult>;
43
50
  searchUsers(query: string, limit?: number): Promise<UserSearchResult[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"caching-auth-plugin.d.ts","sourceRoot":"","sources":["../../src/auth/caching-auth-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAK3D;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAC/D,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAC/D,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAC1C,YAAY,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;IACxC,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;CACtE;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,CAAC,CAAA;AAE1F;;;;;;;;;;GAUG;AACH,qBAAa,iBAAkB,YAAW,UAAU;IAIhD,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IALjC,OAAO,CAAC,cAAc,CAA6B;gBAGhC,WAAW,EAAE,aAAa,EAC1B,KAAK,EAAE,iBAAiB,EACxB,aAAa,CAAC,GAAE,MAAM,OAAO,CAAC,OAAO,CAAC,aAAA;YAG3C,oBAAoB;IAY5B,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsC7D,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAenE,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAQvE,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAQvE,UAAU,CAAC,KAAK,SAAK,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAQvD"}
1
+ {"version":3,"file":"caching-auth-plugin.d.ts","sourceRoot":"","sources":["../../src/auth/caching-auth-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAK3D;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAC/D,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAC/D,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAC1C,YAAY,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;IACxC,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;CACtE;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,CAAC,CAAA;AAE1F;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAkB,YAAW,UAAU;IAKhD,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IANjC,OAAO,CAAC,cAAc,CAA6B;IACnD,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;gBAGlB,WAAW,EAAE,aAAa,EAC1B,KAAK,EAAE,iBAAiB,EACxB,aAAa,CAAC,GAAE,MAAM,OAAO,CAAC,OAAO,CAAC,aAAA,EACvD,OAAO,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAAE;YAK/B,oBAAoB;IAY5B,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsC7D,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAenE,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAQvE,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAQvE,UAAU,CAAC,KAAK,SAAK,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAQvD"}
@@ -10,13 +10,18 @@ const log = createDebugLogger({ prefix: 'CachingAuthPlugin' });
10
10
  *
11
11
  * In dev mode, an optional `lazyRefresher` can be provided to auto-populate
12
12
  * the cache on first request, eliminating the need to run `worker run-once` manually.
13
+ *
14
+ * This wrapper only forwards the inner plugin's `verifiesCredentials` affirmation via the
15
+ * `options` constructor param — it cannot launder an insecure plugin, because
16
+ * createNextCanopyContext asserts the INNER plugin (before wrapping) in context-wrapper.ts.
13
17
  */
14
18
  export class CachingAuthPlugin {
15
- constructor(verifyToken, cache, lazyRefresher) {
19
+ constructor(verifyToken, cache, lazyRefresher, options) {
16
20
  this.verifyToken = verifyToken;
17
21
  this.cache = cache;
18
22
  this.lazyRefresher = lazyRefresher;
19
23
  this.refreshPromise = null;
24
+ this.verifiesCredentials = options?.verifiesCredentials === true;
20
25
  }
21
26
  async ensureCachePopulated() {
22
27
  if (!this.lazyRefresher)
@@ -1 +1 @@
1
- {"version":3,"file":"caching-auth-plugin.js","sourceRoot":"","sources":["../../src/auth/caching-auth-plugin.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAA;AAsB9D;;;;;;;;;;GAUG;AACH,MAAM,OAAO,iBAAiB;IAG5B,YACmB,WAA0B,EAC1B,KAAwB,EACxB,aAAsC;QAFtC,gBAAW,GAAX,WAAW,CAAe;QAC1B,UAAK,GAAL,KAAK,CAAmB;QACxB,kBAAa,GAAb,aAAa,CAAyB;QALjD,mBAAc,GAAyB,IAAI,CAAA;IAMhD,CAAC;IAEI,KAAK,CAAC,oBAAoB;QAChC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAM;QAC/B,4EAA4E;QAC5E,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,aAAa,EAAE;aACzC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;aAC7D,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,2BAA2B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACtE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA,CAAC,2BAA2B;QACxD,CAAC,CAAC,CAAA;QACJ,MAAM,IAAI,CAAC,cAAc,CAAA;IAC3B,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAgB;QACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAA;QACnE,CAAC;QAED,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAEjC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACtD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAE9E,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,QAAQ,CAAC,MAAM;oBACnC,KAAK,EAAE,IAAI,EAAE,KAAK;oBAClB,SAAS,EAAE,IAAI,EAAE,SAAS;oBAC1B,cAAc;iBACf;aACF,CAAA;QACH,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;YAC7D,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,6CAA6C,EAAE;gBAC/D,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC,CAAA;YACF,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,IAAI,EAAE,QAAQ,CAAC,MAAM;oBACrB,cAAc,EAAE,EAAE;iBACnB;aACF,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,KAAK,GAAG,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAA;YAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;YACtC,OAAO,QAAQ;iBACZ,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC1F;iBACA,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAoB;QACxC,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAsB;QAC3C,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE;QACzB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA;YACjD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"caching-auth-plugin.js","sourceRoot":"","sources":["../../src/auth/caching-auth-plugin.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export type { AuthPlugin, AuthPluginFactory } from './plugin';
2
+ export { assertAuthPluginAllowedForMode } from './plugin';
2
3
  export type { UserSearchResult, GroupMetadata, AuthenticationResult } from './types';
3
4
  export { isCanopyRequest, isHeadersLike, extractHeaders, validateAuthContext, } from './context-helpers';
4
5
  export type { HeadersLike } from './context-helpers';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAC7D,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACpF,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAGpD,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAC7D,OAAO,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAA;AACzD,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACpF,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAGpD,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA"}
@@ -1,2 +1,3 @@
1
+ export { assertAuthPluginAllowedForMode } from './plugin.js';
1
2
  export { isCanopyRequest, isHeadersLike, extractHeaders, validateAuthContext, } from './context-helpers.js';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAA;AAEzD,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAA"}
@@ -1,14 +1,30 @@
1
1
  import type { UserSearchResult, GroupMetadata, AuthenticationResult } from './types';
2
2
  import type { CanopyUserId, CanopyGroupId } from '../types';
3
+ import type { OperatingMode } from '../operating-mode/types';
3
4
  /**
4
5
  * Abstract auth provider interface.
5
6
  * Implement this to integrate different auth systems (Clerk, Auth0, NextAuth, etc.)
6
7
  */
7
8
  export interface AuthPlugin {
9
+ /**
10
+ * Affirmative allowlist marker: set to true ONLY on plugins that
11
+ * cryptographically verify credentials (e.g. Clerk JWT verification).
12
+ * assertAuthPluginAllowedForMode() rejects any plugin without this marker
13
+ * whenever the operating mode is 'prod' — absence fails closed, so a
14
+ * third-party plugin that forgets the marker is rejected, not accepted.
15
+ */
16
+ readonly verifiesCredentials?: boolean;
8
17
  /**
9
18
  * Authenticate user from request context.
10
19
  * Returns user identity (without final groups) - core will apply bootstrap admins.
11
20
  *
21
+ * Contract: CREDENTIAL failures (missing/invalid/expired token) resolve to
22
+ * `{ success: false }` — they map to 401s. CONFIGURATION errors (e.g. a
23
+ * required secret like CLERK_SECRET_KEY is absent) may THROW instead: they
24
+ * are operator mistakes, not user mistakes, and should surface as loud 500s
25
+ * rather than quiet auth denials. Callers invoking authenticate() directly
26
+ * (custom adapters) should be prepared for a rejection on misconfiguration.
27
+ *
12
28
  * @param context - Framework-specific context (CanopyRequest, headers, etc.)
13
29
  * @returns AuthenticationResult with user identity or error
14
30
  */
@@ -62,4 +78,23 @@ export interface AuthPlugin {
62
78
  * Factory function type for creating auth plugins
63
79
  */
64
80
  export type AuthPluginFactory<TConfig = unknown> = (config: TConfig) => AuthPlugin;
81
+ /**
82
+ * Fail closed: only allow auth plugins that affirmatively declare real
83
+ * credential verification when the CMS runs in production.
84
+ *
85
+ * This is an allowlist, not a denylist: a plugin must set
86
+ * `verifiesCredentials: true` to pass this guard in prod. DevAuthPlugin (and
87
+ * any third-party plugin that forgets to set the marker) trusts request
88
+ * headers/cookies without cryptographic verification, so accepting it with
89
+ * mode 'prod' would let any caller impersonate any user — including admins —
90
+ * by sending a header like `X-Test-User: admin`. Call this wherever an
91
+ * adopter-provided auth plugin meets the operating mode (framework wrappers,
92
+ * request handlers) BEFORE the plugin is wrapped or used.
93
+ *
94
+ * Note: checking for the absence of verifyTokenOnly is NOT a substitute for
95
+ * this marker — the dev plugin implements verifyTokenOnly too.
96
+ *
97
+ * @throws Error when mode is 'prod' and the plugin does not set `verifiesCredentials: true`
98
+ */
99
+ export declare function assertAuthPluginAllowedForMode(plugin: AuthPlugin, mode: OperatingMode | undefined): void;
65
100
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/auth/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE3D;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAE7D;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAEvE;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAEvE;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAEvE;;OAEG;IACH,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;IAEpD;;;;OAIG;IACH,oBAAoB,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,aAAa,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IAEzF;;;;OAIG;IACH,eAAe,CAAC,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI,CAAC,CAAA;IAE5E;;;;OAIG;IACH,oBAAoB,CAAC,CACnB,SAAS,EAAE,MAAM,GAChB,CAAC,MAAM,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,SAAS,CAAA;CAC1E;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,UAAU,CAAA"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/auth/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAEtC;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAE7D;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAEvE;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAEvE;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAEvE;;OAEG;IACH,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;IAEpD;;;;OAIG;IACH,oBAAoB,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,aAAa,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IAEzF;;;;OAIG;IACH,eAAe,CAAC,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI,CAAC,CAAA;IAE5E;;;;OAIG;IACH,oBAAoB,CAAC,CACnB,SAAS,EAAE,MAAM,GAChB,CAAC,MAAM,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,SAAS,CAAA;CAC1E;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,UAAU,CAAA;AAElF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,aAAa,GAAG,SAAS,GAC9B,IAAI,CAUN"}
@@ -1,2 +1,28 @@
1
- export {};
1
+ /**
2
+ * Fail closed: only allow auth plugins that affirmatively declare real
3
+ * credential verification when the CMS runs in production.
4
+ *
5
+ * This is an allowlist, not a denylist: a plugin must set
6
+ * `verifiesCredentials: true` to pass this guard in prod. DevAuthPlugin (and
7
+ * any third-party plugin that forgets to set the marker) trusts request
8
+ * headers/cookies without cryptographic verification, so accepting it with
9
+ * mode 'prod' would let any caller impersonate any user — including admins —
10
+ * by sending a header like `X-Test-User: admin`. Call this wherever an
11
+ * adopter-provided auth plugin meets the operating mode (framework wrappers,
12
+ * request handlers) BEFORE the plugin is wrapped or used.
13
+ *
14
+ * Note: checking for the absence of verifyTokenOnly is NOT a substitute for
15
+ * this marker — the dev plugin implements verifyTokenOnly too.
16
+ *
17
+ * @throws Error when mode is 'prod' and the plugin does not set `verifiesCredentials: true`
18
+ */
19
+ export function assertAuthPluginAllowedForMode(plugin, mode) {
20
+ if (mode === 'prod' && plugin.verifiesCredentials !== true) {
21
+ throw new Error("CanopyCMS: an auth plugin was configured with mode: 'prod' but does not affirm " +
22
+ '`verifiesCredentials: true`. This plugin performs no real credential verification, ' +
23
+ 'so anyone could impersonate any user (including admins). Configure a verifying auth ' +
24
+ "plugin for production (e.g. createClerkAuthPlugin from 'canopycms-auth-clerk' with " +
25
+ "CLERK_SECRET_KEY set), or run with mode: 'dev' for local development.");
26
+ }
27
+ }
2
28
  //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/auth/plugin.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/auth/plugin.ts"],"names":[],"mappings":"AAqFA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,8BAA8B,CAC5C,MAAkB,EAClB,IAA+B;IAE/B,IAAI,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,iFAAiF;YAC/E,qFAAqF;YACrF,sFAAsF;YACtF,qFAAqF;YACrF,uEAAuE,CAC1E,CAAA;IACH,CAAC;AACH,CAAC"}