@spacefast/common 0.0.24 → 0.2.1

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 (320) hide show
  1. package/brand-assets/LICENSE-Haskoy.txt +93 -0
  2. package/brand-assets/haskoy-latin-variable.woff2 +0 -0
  3. package/brand-assets/spacefast-favicon.svg +4 -4
  4. package/brand-assets/spacefast-sf-full-bleed.svg +3 -3
  5. package/brand-assets/spacefast-wordmark.svg +2 -4
  6. package/dist/agents/connect-targets.d.ts +6 -146
  7. package/dist/agents/connect-targets.js +63 -295
  8. package/dist/agents/private-key-oauth.d.ts +31 -2
  9. package/dist/agents/private-key-oauth.js +166 -92
  10. package/dist/agents/registry/core.d.ts +292 -0
  11. package/dist/agents/registry/core.js +1388 -0
  12. package/dist/agents/registry/deeplink-probes.d.ts +23 -0
  13. package/dist/agents/registry/deeplink-probes.js +18 -0
  14. package/dist/agents/registry/node.d.ts +56 -0
  15. package/dist/agents/registry/node.js +339 -0
  16. package/dist/brand-assets-build.js +3 -6
  17. package/dist/brand-assets.d.ts +5 -15
  18. package/dist/brand-assets.js +12 -14
  19. package/dist/brand.d.ts +17 -0
  20. package/dist/brand.js +24 -4
  21. package/dist/config/domains.d.ts +79 -12
  22. package/dist/config/domains.js +128 -29
  23. package/dist/config/index.js +1 -2
  24. package/dist/contracts/abuse.js +9 -24
  25. package/dist/contracts/access-profiles.d.ts +86 -0
  26. package/dist/contracts/access-profiles.js +89 -0
  27. package/dist/contracts/access.d.ts +24 -30
  28. package/dist/contracts/access.js +33 -64
  29. package/dist/contracts/activity.d.ts +18 -1
  30. package/dist/contracts/activity.js +72 -26
  31. package/dist/contracts/analytics.js +8 -10
  32. package/dist/contracts/api-keys.d.ts +77 -52
  33. package/dist/contracts/api-keys.js +44 -24
  34. package/dist/contracts/application-journal.d.ts +216 -0
  35. package/dist/contracts/application-journal.js +167 -0
  36. package/dist/contracts/auth.d.ts +90 -17
  37. package/dist/contracts/auth.js +86 -17
  38. package/dist/contracts/beta.d.ts +9 -4
  39. package/dist/contracts/beta.js +20 -16
  40. package/dist/contracts/billing.d.ts +2 -1
  41. package/dist/contracts/billing.js +37 -11
  42. package/dist/contracts/bootstrap.d.ts +791 -0
  43. package/dist/contracts/bootstrap.js +51 -0
  44. package/dist/contracts/builds.d.ts +209 -18
  45. package/dist/contracts/builds.js +93 -27
  46. package/dist/contracts/channels.d.ts +43 -0
  47. package/dist/contracts/channels.js +25 -9
  48. package/dist/contracts/cli.d.ts +7 -0
  49. package/dist/contracts/cli.js +6 -0
  50. package/dist/contracts/collab-public.d.ts +1 -1
  51. package/dist/contracts/collab-public.js +5 -8
  52. package/dist/contracts/comments.d.ts +44 -34
  53. package/dist/contracts/comments.js +107 -77
  54. package/dist/contracts/commerce.d.ts +165 -0
  55. package/dist/contracts/commerce.js +146 -0
  56. package/dist/contracts/common.d.ts +3 -3
  57. package/dist/contracts/common.js +20 -31
  58. package/dist/contracts/content-contract-verification.d.ts +521 -0
  59. package/dist/contracts/content-contract-verification.js +320 -0
  60. package/dist/contracts/content-platform-fixture.d.ts +1278 -0
  61. package/dist/contracts/content-platform-fixture.js +44 -0
  62. package/dist/contracts/content-program.d.ts +994 -0
  63. package/dist/contracts/content-program.js +658 -0
  64. package/dist/contracts/content-sync.d.ts +290 -0
  65. package/dist/contracts/content-sync.js +167 -0
  66. package/dist/contracts/content.d.ts +432 -0
  67. package/dist/contracts/content.js +303 -0
  68. package/dist/contracts/continuation.d.ts +17 -1
  69. package/dist/contracts/continuation.js +23 -23
  70. package/dist/contracts/countries.js +3 -4
  71. package/dist/contracts/crons.d.ts +52 -0
  72. package/dist/contracts/crons.js +60 -0
  73. package/dist/contracts/dashboard-prefs.d.ts +56 -0
  74. package/dist/contracts/dashboard-prefs.js +51 -0
  75. package/dist/contracts/device-auth.d.ts +234 -37
  76. package/dist/contracts/device-auth.js +267 -53
  77. package/dist/contracts/docs.d.ts +1 -5
  78. package/dist/contracts/docs.js +7 -15
  79. package/dist/contracts/domains.d.ts +501 -93
  80. package/dist/contracts/domains.js +193 -55
  81. package/dist/contracts/email-preferences.d.ts +3 -3
  82. package/dist/contracts/email-preferences.js +6 -7
  83. package/dist/contracts/enums.d.ts +27 -26
  84. package/dist/contracts/enums.js +68 -61
  85. package/dist/contracts/error-code-meta.d.ts +283 -7
  86. package/dist/contracts/error-code-meta.js +97 -5
  87. package/dist/contracts/error-codes.d.ts +5 -5
  88. package/dist/contracts/error-codes.js +82 -17
  89. package/dist/contracts/events.d.ts +100 -20
  90. package/dist/contracts/events.js +107 -20
  91. package/dist/contracts/execution.d.ts +48 -64
  92. package/dist/contracts/execution.js +52 -62
  93. package/dist/contracts/feature-lifecycle.d.ts +73 -27
  94. package/dist/contracts/feature-lifecycle.js +86 -26
  95. package/dist/contracts/features.d.ts +68 -19
  96. package/dist/contracts/features.js +42 -41
  97. package/dist/contracts/fixtures/content-platform-v1.json +1108 -0
  98. package/dist/contracts/frame-session.d.ts +192 -0
  99. package/dist/contracts/frame-session.js +164 -0
  100. package/dist/contracts/functions.d.ts +338 -164
  101. package/dist/contracts/functions.js +367 -198
  102. package/dist/contracts/git.d.ts +27 -33
  103. package/dist/contracts/git.js +10 -11
  104. package/dist/contracts/grant-copy.d.ts +43 -0
  105. package/dist/contracts/grant-copy.js +44 -0
  106. package/dist/contracts/grants.d.ts +62 -54
  107. package/dist/contracts/grants.js +124 -23
  108. package/dist/contracts/ids.d.ts +4 -1
  109. package/dist/contracts/ids.js +6 -3
  110. package/dist/contracts/internal.d.ts +8 -18
  111. package/dist/contracts/internal.js +13 -14
  112. package/dist/contracts/mcp.d.ts +28 -0
  113. package/dist/contracts/mcp.js +28 -0
  114. package/dist/contracts/me.d.ts +6 -1
  115. package/dist/contracts/me.js +12 -6
  116. package/dist/contracts/notifications.d.ts +27 -29
  117. package/dist/contracts/notifications.js +9 -4
  118. package/dist/contracts/oauth-resources.d.ts +112 -10
  119. package/dist/contracts/oauth-resources.js +116 -11
  120. package/dist/contracts/oauth-scope-actions.d.ts +90 -0
  121. package/dist/contracts/oauth-scope-actions.js +126 -0
  122. package/dist/contracts/operations.d.ts +27 -4
  123. package/dist/contracts/operations.js +12 -6
  124. package/dist/contracts/pages.d.ts +31 -7
  125. package/dist/contracts/pages.js +22 -5
  126. package/dist/contracts/partner-notifications.d.ts +3 -0
  127. package/dist/contracts/partner-notifications.js +65 -0
  128. package/dist/contracts/{platform.d.ts → partner.d.ts} +29 -42
  129. package/dist/contracts/{platform.js → partner.js} +27 -40
  130. package/dist/contracts/plan-policy.js +1 -1
  131. package/dist/contracts/principal-assertion.d.ts +43 -0
  132. package/dist/contracts/principal-assertion.js +67 -0
  133. package/dist/contracts/principals.d.ts +73 -0
  134. package/dist/contracts/principals.js +59 -0
  135. package/dist/contracts/privacy.d.ts +11 -0
  136. package/dist/contracts/privacy.js +17 -0
  137. package/dist/contracts/problem-document.js +3 -4
  138. package/dist/contracts/publish-archive.d.ts +269 -161
  139. package/dist/contracts/publish-archive.js +11 -1
  140. package/dist/contracts/push-new.d.ts +8 -8
  141. package/dist/contracts/quotas.js +5 -5
  142. package/dist/contracts/realtime.d.ts +52 -0
  143. package/dist/contracts/realtime.js +54 -0
  144. package/dist/contracts/repository-connections.d.ts +44 -31
  145. package/dist/contracts/repository-connections.js +17 -5
  146. package/dist/contracts/resources.d.ts +105 -14
  147. package/dist/contracts/resources.js +150 -26
  148. package/dist/contracts/route-inventory.d.ts +358 -0
  149. package/dist/contracts/route-inventory.js +141 -0
  150. package/dist/contracts/runtime-api.d.ts +206 -82
  151. package/dist/contracts/runtime-api.js +131 -70
  152. package/dist/contracts/runtime-app.d.ts +13 -23
  153. package/dist/contracts/runtime-app.js +39 -24
  154. package/dist/contracts/runtime-components.d.ts +143 -0
  155. package/dist/contracts/runtime-components.js +199 -0
  156. package/dist/contracts/runtime-db.d.ts +49 -23
  157. package/dist/contracts/runtime-db.js +87 -22
  158. package/dist/contracts/runtime-purge.d.ts +8 -0
  159. package/dist/contracts/runtime-purge.js +5 -0
  160. package/dist/contracts/runtime-services.d.ts +43 -75
  161. package/dist/contracts/runtime-services.js +29 -49
  162. package/dist/contracts/runtime-storage.d.ts +15 -14
  163. package/dist/contracts/runtime-storage.js +30 -14
  164. package/dist/contracts/sf-config-v1.d.ts +48 -14
  165. package/dist/contracts/slugs.js +13 -4
  166. package/dist/contracts/space-config.d.ts +283 -19
  167. package/dist/contracts/space-config.js +430 -80
  168. package/dist/contracts/spaces.d.ts +376 -290
  169. package/dist/contracts/spaces.js +200 -135
  170. package/dist/contracts/superadmin-activity.d.ts +3 -43
  171. package/dist/contracts/superadmin-activity.js +6 -30
  172. package/dist/contracts/superadmin-emails.d.ts +1 -0
  173. package/dist/contracts/superadmin-emails.js +17 -1
  174. package/dist/contracts/superadmin-runtime.d.ts +199 -0
  175. package/dist/contracts/superadmin-runtime.js +141 -0
  176. package/dist/contracts/superadmin-search.d.ts +22 -2
  177. package/dist/contracts/superadmin-search.js +14 -6
  178. package/dist/contracts/superadmin-spaces.d.ts +438 -189
  179. package/dist/contracts/superadmin-spaces.js +131 -25
  180. package/dist/contracts/superadmin-teams.d.ts +5 -2
  181. package/dist/contracts/superadmin-teams.js +1 -2
  182. package/dist/contracts/superadmin-tenants.d.ts +627 -12
  183. package/dist/contracts/superadmin-tenants.js +32 -13
  184. package/dist/contracts/superadmin.d.ts +232 -37
  185. package/dist/contracts/superadmin.js +106 -22
  186. package/dist/contracts/tags.d.ts +85 -58
  187. package/dist/contracts/tags.js +47 -37
  188. package/dist/contracts/teams.d.ts +86 -26
  189. package/dist/contracts/teams.js +90 -31
  190. package/dist/contracts/tenants.d.ts +135 -0
  191. package/dist/contracts/tenants.js +120 -0
  192. package/dist/contracts/test-triggers.d.ts +70 -0
  193. package/dist/contracts/test-triggers.js +116 -0
  194. package/dist/contracts/theme-json.js +3 -8
  195. package/dist/contracts/transfers.d.ts +1 -0
  196. package/dist/contracts/transfers.js +3 -2
  197. package/dist/contracts/usage.d.ts +209 -0
  198. package/dist/contracts/usage.js +124 -12
  199. package/dist/contracts/variables.d.ts +2 -2
  200. package/dist/contracts/variables.js +9 -13
  201. package/dist/contracts/webhooks.d.ts +13 -5
  202. package/dist/contracts/webhooks.js +3 -1
  203. package/dist/contracts/zero.d.ts +72 -81
  204. package/dist/contracts/zero.js +80 -78
  205. package/dist/dashboard-paths/index.d.ts +24 -21
  206. package/dist/dashboard-paths/index.js +35 -47
  207. package/dist/dashboard-paths/route-reservations.generated.d.ts +2 -0
  208. package/dist/dashboard-paths/route-reservations.generated.js +36 -0
  209. package/dist/docs/agent-arrival.d.ts +92 -0
  210. package/dist/docs/agent-arrival.js +227 -0
  211. package/dist/docs/agent-output-policy.d.ts +6 -0
  212. package/dist/docs/agent-output-policy.js +22 -0
  213. package/dist/docs/agent-prose.d.ts +12 -18
  214. package/dist/docs/agent-prose.js +73 -51
  215. package/dist/docs/agent-setup.d.ts +72 -41
  216. package/dist/docs/agent-setup.js +339 -436
  217. package/dist/docs/catalog.d.ts +153 -95
  218. package/dist/docs/catalog.js +163 -48
  219. package/dist/docs/error-docs.d.ts +2098 -1
  220. package/dist/docs/error-docs.js +421 -144
  221. package/dist/docs/index-build.d.ts +0 -1
  222. package/dist/docs/index-build.js +2 -3
  223. package/dist/docs/page-context-prompt.d.ts +77 -0
  224. package/dist/docs/page-context-prompt.js +131 -0
  225. package/dist/docs/reference-urls.d.ts +46 -0
  226. package/dist/docs/reference-urls.js +79 -0
  227. package/dist/docs/search.d.ts +6 -8
  228. package/dist/docs/search.js +10 -13
  229. package/dist/docs/skill-distribution.d.ts +4 -1
  230. package/dist/docs/skill-distribution.js +10 -5
  231. package/dist/docs/skills.d.ts +120 -120
  232. package/dist/docs/skills.js +121 -73
  233. package/dist/docs/start-prompts.d.ts +45 -0
  234. package/dist/docs/start-prompts.js +62 -0
  235. package/dist/domain-exploration.js +9 -13
  236. package/dist/og-template.d.ts +56 -0
  237. package/dist/og-template.js +56 -0
  238. package/dist/slug-policy/index.js +5 -11
  239. package/dist/test-helpers/fetch-stub.js +1 -0
  240. package/dist/utils/browser-credential.d.ts +13 -6
  241. package/dist/utils/browser-credential.js +14 -7
  242. package/dist/utils/build-settings.d.ts +21 -1
  243. package/dist/utils/build-settings.js +133 -15
  244. package/dist/utils/canonical-json.d.ts +3 -5
  245. package/dist/utils/canonical-json.js +4 -5
  246. package/dist/utils/cast-transport.d.ts +5 -17
  247. package/dist/utils/cast-transport.js +6 -19
  248. package/dist/utils/claim-token.js +1 -2
  249. package/dist/utils/comment-avatars.js +4 -6
  250. package/dist/utils/concurrency.js +3 -3
  251. package/dist/utils/content-type.d.ts +7 -6
  252. package/dist/utils/content-type.js +73 -51
  253. package/dist/utils/credential-policy.d.ts +50 -6
  254. package/dist/utils/credential-policy.js +126 -59
  255. package/dist/utils/dns-instructions.js +9 -9
  256. package/dist/utils/egress-policy.fixtures.json +1 -1
  257. package/dist/utils/error-code.js +1 -0
  258. package/dist/utils/generate-space-name.d.ts +3 -8
  259. package/dist/utils/generate-space-name.js +3 -8
  260. package/dist/utils/grant-decision.fixtures.json +2 -2
  261. package/dist/utils/grants.d.ts +0 -1
  262. package/dist/utils/grants.js +7 -8
  263. package/dist/utils/gravatar.d.ts +2 -4
  264. package/dist/utils/gravatar.js +6 -12
  265. package/dist/utils/id-hints.js +14 -23
  266. package/dist/utils/idempotency.d.ts +3 -3
  267. package/dist/utils/idempotency.js +6 -7
  268. package/dist/utils/local-space-state.d.ts +23 -26
  269. package/dist/utils/local-space-state.js +46 -46
  270. package/dist/utils/oauth-signed-query.d.ts +3 -5
  271. package/dist/utils/oauth-signed-query.js +6 -9
  272. package/dist/utils/one-shot-replay.d.ts +7 -6
  273. package/dist/utils/one-shot-replay.js +3 -5
  274. package/dist/utils/page-colors.d.ts +15 -19
  275. package/dist/utils/page-colors.js +23 -45
  276. package/dist/utils/page-fonts.d.ts +1 -1
  277. package/dist/utils/page-fonts.js +8 -20
  278. package/dist/utils/page-preview.d.ts +0 -1
  279. package/dist/utils/page-preview.js +0 -1
  280. package/dist/utils/pages.d.ts +33 -3
  281. package/dist/utils/pages.js +83 -30
  282. package/dist/utils/privacy-regions.d.ts +19 -0
  283. package/dist/utils/privacy-regions.js +91 -0
  284. package/dist/utils/publish-form-data.d.ts +4 -5
  285. package/dist/utils/publish-form-data.js +2 -3
  286. package/dist/utils/publish-policy.d.ts +11 -17
  287. package/dist/utils/publish-policy.fixtures.json +11 -5
  288. package/dist/utils/publish-policy.js +65 -110
  289. package/dist/utils/query-client.d.ts +2 -0
  290. package/dist/utils/query-client.js +10 -1
  291. package/dist/utils/runtime-paths.d.ts +4 -4
  292. package/dist/utils/runtime-paths.js +6 -8
  293. package/dist/utils/runtime-upload.d.ts +9 -0
  294. package/dist/utils/runtime-upload.js +12 -0
  295. package/dist/utils/secure-local-file.d.ts +3 -3
  296. package/dist/utils/secure-local-file.js +23 -40
  297. package/dist/utils/space-config.d.ts +12 -15
  298. package/dist/utils/space-config.js +13 -16
  299. package/dist/utils/static-runtime-policy.d.ts +10 -7
  300. package/dist/utils/static-runtime-policy.fixtures.json +38 -41
  301. package/dist/utils/static-runtime-policy.generated.d.ts +16 -0
  302. package/dist/utils/static-runtime-policy.generated.js +70 -0
  303. package/dist/utils/static-runtime-policy.js +31 -132
  304. package/dist/utils/storage-policy.js +1 -2
  305. package/dist/utils/upload-session.d.ts +4 -1
  306. package/dist/utils/upload-session.js +41 -19
  307. package/dist/utils/version-path.js +11 -19
  308. package/dist/utils/wpcom-auth-redirects.d.ts +5 -14
  309. package/dist/utils/wpcom-auth-redirects.js +1 -4
  310. package/dist/vocabulary.d.ts +13 -13
  311. package/dist/vocabulary.js +52 -27
  312. package/package.json +15 -18
  313. package/dist/agents/client-registry.d.ts +0 -22
  314. package/dist/agents/client-registry.js +0 -41
  315. package/dist/docs/agent-handoff-document.d.ts +0 -15
  316. package/dist/docs/agent-handoff-document.js +0 -180
  317. package/dist/docs/agent-solutions.d.ts +0 -110
  318. package/dist/docs/agent-solutions.js +0 -183
  319. package/dist/utils/query-keys.d.ts +0 -84
  320. package/dist/utils/query-keys.js +0 -108
@@ -1,10 +1,33 @@
1
1
  import { z } from "zod";
2
+ export declare const channelChangeKindSchema: z.ZodEnum<{
3
+ publish: "publish";
4
+ rollback: "rollback";
5
+ promote: "promote";
6
+ }>;
7
+ export type ChannelChangeKind = z.infer<typeof channelChangeKindSchema>;
8
+ export declare const channelLastChangeSchema: z.ZodObject<{
9
+ kind: z.ZodNullable<z.ZodEnum<{
10
+ publish: "publish";
11
+ rollback: "rollback";
12
+ promote: "promote";
13
+ }>>;
14
+ at: z.ZodString;
15
+ }, z.core.$strip>;
16
+ export type ChannelLastChange = z.infer<typeof channelLastChangeSchema>;
2
17
  export declare const channelListItemSchema: z.ZodObject<{
3
18
  name: z.ZodString;
4
19
  currentVersionId: z.ZodNullable<z.ZodString>;
5
20
  currentDeploymentUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
6
21
  previousVersionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7
22
  updatedAt: z.ZodString;
23
+ lastChange: z.ZodOptional<z.ZodNullable<z.ZodObject<{
24
+ kind: z.ZodNullable<z.ZodEnum<{
25
+ publish: "publish";
26
+ rollback: "rollback";
27
+ promote: "promote";
28
+ }>>;
29
+ at: z.ZodString;
30
+ }, z.core.$strip>>>;
8
31
  }, z.core.$strip>;
9
32
  export type ChannelListItem = z.infer<typeof channelListItemSchema>;
10
33
  export declare const channelHistoryEntrySchema: z.ZodObject<{
@@ -15,10 +38,16 @@ export declare const channelHistoryEntrySchema: z.ZodObject<{
15
38
  system: "system";
16
39
  user: "user";
17
40
  api_key: "api_key";
41
+ partner_token: "partner_token";
18
42
  oauth_client: "oauth_client";
19
43
  anonymous_claim: "anonymous_claim";
20
44
  }>>>;
21
45
  actorId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
46
+ kind: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
47
+ publish: "publish";
48
+ rollback: "rollback";
49
+ promote: "promote";
50
+ }>>>;
22
51
  at: z.ZodString;
23
52
  }, z.core.$strip>;
24
53
  export type ChannelHistoryEntry = z.infer<typeof channelHistoryEntrySchema>;
@@ -29,6 +58,14 @@ export declare const channelListResponseSchema: z.ZodObject<{
29
58
  currentDeploymentUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
30
59
  previousVersionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
31
60
  updatedAt: z.ZodString;
61
+ lastChange: z.ZodOptional<z.ZodNullable<z.ZodObject<{
62
+ kind: z.ZodNullable<z.ZodEnum<{
63
+ publish: "publish";
64
+ rollback: "rollback";
65
+ promote: "promote";
66
+ }>>;
67
+ at: z.ZodString;
68
+ }, z.core.$strip>>>;
32
69
  }, z.core.$strip>>;
33
70
  }, z.core.$strip>;
34
71
  export declare const channelHistoryResponseSchema: z.ZodObject<{
@@ -40,10 +77,16 @@ export declare const channelHistoryResponseSchema: z.ZodObject<{
40
77
  system: "system";
41
78
  user: "user";
42
79
  api_key: "api_key";
80
+ partner_token: "partner_token";
43
81
  oauth_client: "oauth_client";
44
82
  anonymous_claim: "anonymous_claim";
45
83
  }>>>;
46
84
  actorId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
85
+ kind: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
86
+ publish: "publish";
87
+ rollback: "rollback";
88
+ promote: "promote";
89
+ }>>>;
47
90
  at: z.ZodString;
48
91
  }, z.core.$strip>>;
49
92
  }, z.core.$strip>;
@@ -1,12 +1,21 @@
1
1
  import { z } from "zod";
2
- // Channels READ surface (internal-docs/platform.md "Channels"): a read-only
3
- // projection over the existing `channels` table and the `channel.promoted`
4
- // activity log. No writes, no new storage — promotion stays owned by the
5
- // publish/version lifecycle. Additive only.
6
- // One row of the channel list: where each named channel points right now.
2
+ // Channels READ surface (the platform spec "Channels"): a projection over the
3
+ // `channels` table and the `channel.promoted` activity log. No writes:
4
+ // promotion stays owned by the publish/version lifecycle.
5
+ // How a channel pointer moved: a fresh publish going live, a forward promote,
6
+ // or a rollback to an older version. Recorded on the `channel.promoted` event
7
+ // at write time; null on events that predate kind recording.
8
+ export const channelChangeKindSchema = z.enum(["publish", "promote", "rollback"]);
9
+ // The channel's most recent pointer move, straight from the promotion log.
10
+ export const channelLastChangeSchema = z.object({
11
+ kind: channelChangeKindSchema
12
+ .nullable()
13
+ .describe("How the pointer moved, or null when the log entry predates kind recording."),
14
+ at: z.string().datetime().describe("Instant the pointer moved, from the promotion log."),
15
+ });
7
16
  // `currentVersionId` is the channel's version pointer (`channels.versionId`).
8
17
  export const channelListItemSchema = z.object({
9
- name: z.string().describe("Channel name; `live` is the default channel."),
18
+ name: z.string().describe("Channel name; `live` is the default."),
10
19
  currentVersionId: z
11
20
  .string()
12
21
  .nullable()
@@ -22,10 +31,13 @@ export const channelListItemSchema = z.object({
22
31
  .optional()
23
32
  .describe("Last version this channel served before the current pointer (rollback target)."),
24
33
  updatedAt: z.string().datetime().describe("Instant when this channel pointer last moved."),
34
+ lastChange: channelLastChangeSchema
35
+ .nullable()
36
+ .optional()
37
+ .describe("The most recent pointer move from the promotion log, or null when none exists."),
25
38
  });
26
39
  // One entry of a channel's promotion history (the deploy log): a single
27
- // `channel.promoted` event, newest first. This is the audit trail of every
28
- // pointer move on the channel.
40
+ // `channel.promoted` event, newest first.
29
41
  export const channelHistoryEntrySchema = z.object({
30
42
  versionId: z.string().describe("Version the channel was promoted to."),
31
43
  channel: z.string().describe("Channel that moved."),
@@ -35,11 +47,15 @@ export const channelHistoryEntrySchema = z.object({
35
47
  .optional()
36
48
  .describe("Version the channel served immediately before this promotion."),
37
49
  actorType: z
38
- .enum(["user", "api_key", "oauth_client", "anonymous_claim", "system"])
50
+ .enum(["user", "api_key", "partner_token", "oauth_client", "anonymous_claim", "system"])
39
51
  .nullable()
40
52
  .optional()
41
53
  .describe("Kind of actor that performed the promotion."),
42
54
  actorId: z.string().nullable().optional().describe("Identifier of the promoting actor."),
55
+ kind: channelChangeKindSchema
56
+ .nullable()
57
+ .optional()
58
+ .describe("How the pointer moved, or null when the entry predates kind recording."),
43
59
  at: z.string().datetime().describe("Instant when the promotion happened."),
44
60
  });
45
61
  export const channelListResponseSchema = z.object({
@@ -1,3 +1,4 @@
1
+ import { z } from "zod";
1
2
  export declare const CLI_EXIT_CODES: {
2
3
  readonly ok: 0;
3
4
  readonly validation: 2;
@@ -8,3 +9,9 @@ export declare const CLI_EXIT_CODES: {
8
9
  readonly timeout: 50;
9
10
  readonly unknown: 1;
10
11
  };
12
+ export declare const cliWarningSchema: z.ZodObject<{
13
+ code: z.ZodString;
14
+ message: z.ZodString;
15
+ hint: z.ZodString;
16
+ }, z.core.$strip>;
17
+ export type CliWarning = z.infer<typeof cliWarningSchema>;
@@ -1,3 +1,4 @@
1
+ import { z } from "zod";
1
2
  export const CLI_EXIT_CODES = {
2
3
  ok: 0,
3
4
  validation: 2,
@@ -8,3 +9,8 @@ export const CLI_EXIT_CODES = {
8
9
  timeout: 50,
9
10
  unknown: 1,
10
11
  };
12
+ export const cliWarningSchema = z.object({
13
+ code: z.string().min(1),
14
+ message: z.string().min(1),
15
+ hint: z.string().min(1),
16
+ });
@@ -6,7 +6,7 @@ export declare const publicActorSchema: z.ZodObject<{
6
6
  avatar_url: z.ZodOptional<z.ZodString>;
7
7
  }, z.core.$strip>;
8
8
  export type PublicActor = z.infer<typeof publicActorSchema>;
9
- /** A thread as a list renders it the body is an excerpt, the anchor is gone. */
9
+ /** A thread as a list renders it. The body is an excerpt, the anchor is gone. */
10
10
  export declare const publicThreadSchema: z.ZodObject<{
11
11
  id: z.ZodString;
12
12
  path: z.ZodString;
@@ -1,10 +1,7 @@
1
- // The Collab public types — the sanitized shapes every collab surface emits or
2
- // renders (collab-public-api.html §5). One home: the SDK, the overlay, the
3
- // dashboard bridge, the control-plane projection and any published layout all
4
- // import from here. Re-exported nowhere.
5
- //
6
- // Sanitized means sanitized: no emails, no raw authority refs, no anchors. A
7
- // custom layout can restyle everything these carry and escalate nothing.
1
+ // The sanitized shapes every collab surface emits or renders
2
+ // (collab-public-api.html §5). One home, imported directly, re-exported nowhere.
3
+ // Sanitized means no emails, no raw authority refs, no anchors: a custom layout
4
+ // can restyle everything these carry and escalate nothing.
8
5
  import { z } from "zod";
9
6
  /** A person, as everyone else may see them. Identity colors are not themeable. */
10
7
  export const publicActorSchema = z.object({
@@ -12,7 +9,7 @@ export const publicActorSchema = z.object({
12
9
  color: z.string().min(1).max(32),
13
10
  avatar_url: z.string().url().max(2048).optional(),
14
11
  });
15
- /** A thread as a list renders it the body is an excerpt, the anchor is gone. */
12
+ /** A thread as a list renders it. The body is an excerpt, the anchor is gone. */
16
13
  export const publicThreadSchema = z.object({
17
14
  id: z.string().min(1).max(128),
18
15
  path: z.string().min(1).max(2048),
@@ -4,6 +4,17 @@ export declare const commentThreadStatusSchema: z.ZodEnum<{
4
4
  open: "open";
5
5
  archived: "archived";
6
6
  }>;
7
+ /**
8
+ * What a moderator may ask a thread to become. Spam is not a stored status —
9
+ * Cast holds it as the thread's moderation state — so "spam" is a verdict the
10
+ * wire accepts, and reading a thread back always reports `open` or `archived`
11
+ * with `moderationState` beside it.
12
+ */
13
+ export declare const commentThreadStatusPatchSchema: z.ZodEnum<{
14
+ open: "open";
15
+ spam: "spam";
16
+ archived: "archived";
17
+ }>;
7
18
  export declare const COMMENT_SEARCH_QUERY_MAX_LENGTH = 160;
8
19
  export declare function normalizeCommentSearchQuery(value: string | undefined): string | undefined;
9
20
  export declare const COMMENT_PAGE_PATH_MAX_LENGTH = 2048;
@@ -41,12 +52,10 @@ export declare const collaborationPublicProfileSchema: z.ZodObject<{
41
52
  }, z.core.$strict>;
42
53
  export type CollaborationPublicProfile = z.infer<typeof collaborationPublicProfileSchema>;
43
54
  /**
44
- * Where the browser holding this ticket is.
45
- *
46
- * "embed" is a third-party site the owner allowlisted, and it is its own state
47
- * precisely so nothing pretends a foreign origin is a published Spacefast host:
48
- * the room an embed ticket names is origin-scoped, and both the mint and Cast
49
- * refuse the pairing in either direction.
55
+ * Where the browser holding this ticket is. "embed" is a third-party site the
56
+ * owner allowlisted, kept a separate state so no foreign origin passes as a
57
+ * published host: an embed ticket's room is origin-scoped, and both the mint
58
+ * and Cast refuse the pairing in either direction.
50
59
  */
51
60
  export declare const collaborationSurfaceSchema: z.ZodEnum<{
52
61
  preview: "preview";
@@ -63,9 +72,9 @@ export declare const collaborationTicketClaimsSchema: z.ZodObject<{
63
72
  avatar_url: z.ZodNullable<z.ZodURL>;
64
73
  }, z.core.$strict>>;
65
74
  role: z.ZodEnum<{
75
+ editor: "editor";
66
76
  viewer: "viewer";
67
77
  commenter: "commenter";
68
- editor: "editor";
69
78
  manager: "manager";
70
79
  }>;
71
80
  actorKind: z.ZodEnum<{
@@ -97,6 +106,8 @@ export declare const collaborationTicketClaimsSchema: z.ZodObject<{
97
106
  iss: z.ZodLiteral<"spacefast-api">;
98
107
  aud: z.ZodString;
99
108
  }, z.core.$strip>;
109
+ /** Where a team without the collab.comments feature applies for access. */
110
+ export declare const COMMENTS_WAITLIST_URL = "https://spacefast.com/waitlists/collab";
100
111
  export declare const commentsSurfaceSchema: z.ZodEnum<{
101
112
  off: "off";
102
113
  previews: "previews";
@@ -104,13 +115,11 @@ export declare const commentsSurfaceSchema: z.ZodEnum<{
104
115
  }>;
105
116
  export declare const COMMENTS_EMBED_ORIGINS_MAX = 20;
106
117
  /**
107
- * A site the Space owner allows the one-line Collab insert to run on.
108
- *
109
- * Exactly one https origin scheme, host, and port, nothing else. No
110
- * wildcards: on a foreign site this list IS the entitlement, and `*.example.com`
111
- * hands it to every subdomain the site ever loses control of. An off-shape
112
- * value is refused rather than normalized, so what the owner typed and what the
113
- * server matches are the same string.
118
+ * A site the Space owner allows the one-line Collab insert to run on. Exactly
119
+ * one https origin, nothing else: on a foreign site this list IS the
120
+ * entitlement, and `*.example.com` hands it to every subdomain the site ever
121
+ * loses control of. An off-shape value is refused rather than normalized, so
122
+ * the owner's string and the matched string are the same.
114
123
  */
115
124
  export declare const commentsEmbedOriginSchema: z.ZodString;
116
125
  export declare const collaborationSettingsSchema: z.ZodObject<{
@@ -167,11 +176,9 @@ export declare const collaborationUpdateSchema: z.ZodObject<{
167
176
  }, z.core.$strict>;
168
177
  }, z.core.$strip>;
169
178
  /**
170
- * The overlay's whole configuration, in one shape.
171
- *
172
- * Both lanes carry this: the Space's own origins get it from the runtime's
173
- * same-origin exchange, a third-party site fetches it over CORS keyed by
174
- * `data-space`. Only the transport differs — the SDK parses one shape.
179
+ * The overlay's whole configuration. Both lanes carry it: the Space's own
180
+ * origins from the runtime's same-origin exchange, a third-party site over CORS
181
+ * keyed by `data-space`. Only the transport differs.
175
182
  */
176
183
  export declare const collabOverlayConfigSchema: z.ZodObject<{
177
184
  enabled: z.ZodBoolean;
@@ -247,11 +254,9 @@ export declare const realtimeTokenResponseSchema: z.ZodObject<{
247
254
  }, z.core.$strip>;
248
255
  }, z.core.$strip>;
249
256
  /**
250
- * A Space-level fact worth interrupting someone for. It travels as a `notice`
251
- * on the Space's notice room never as an event in a page room because it
252
- * is not conversation content: every open surface needs it regardless of which
253
- * page it happens to be sitting on, including surfaces (the dashboard) that
254
- * are in no page room at all.
257
+ * A Space-level fact worth interrupting someone for. It travels on the Space's
258
+ * notice room, never as a page-room event: every open surface needs it whatever
259
+ * page it is on, including the dashboard, which is in no page room at all.
255
260
  */
256
261
  export declare const noticePublishSchema: z.ZodObject<{
257
262
  versionId: z.ZodOptional<z.ZodString>;
@@ -296,14 +301,13 @@ export declare const commentAuthorSchema: z.ZodObject<{
296
301
  }, z.core.$strip>;
297
302
  export declare const commentTargetSchema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
298
303
  /**
299
- * How many attachments one thread or reply may carry. Mirrors Cast's own
300
- * `@attachment_limit`: Cast is the authority that enforces it on write, this
301
- * bound is what REST readers can rely on.
304
+ * How many attachments one thread or reply may carry. Mirrors Cast's
305
+ * `@attachment_limit`: Cast enforces it on write, this is what REST readers get.
302
306
  */
303
307
  export declare const COMMENT_ATTACHMENT_MAX_COUNT = 10;
304
308
  /**
305
309
  * A pointer to a storage object on the Space's own runtime plus the descriptor
306
- * needed to render it never a URL. Cast stores exactly this (snake_case) under
310
+ * needed to render it, never a URL. Cast stores exactly this (snake_case) under
307
311
  * `metadata.attachments`; the id is a bare 32-hex object id.
308
312
  */
309
313
  export declare const commentAttachmentSchema: z.ZodObject<{
@@ -324,9 +328,8 @@ export declare const commentAttachmentSchema: z.ZodObject<{
324
328
  }, z.core.$strip>>;
325
329
  }, z.core.$strip>;
326
330
  /**
327
- * What a REST reader gets: the stored attachment plus a freshly composed read
328
- * URL. `url` is null when the runtime's revocable read key cannot be resolved
329
- * an honest degraded read rather than a dead link or a dropped attachment.
331
+ * The stored attachment plus a freshly composed read URL. `url` is null when the
332
+ * runtime's revocable read key cannot be resolved.
330
333
  */
331
334
  export declare const commentAttachmentViewSchema: z.ZodObject<{
332
335
  id: z.ZodString;
@@ -490,9 +493,6 @@ export declare const commentListQuerySchema: z.ZodObject<{
490
493
  author: z.ZodOptional<z.ZodString>;
491
494
  unread: z.ZodOptional<z.ZodCodec<z.ZodString, z.ZodBoolean>>;
492
495
  }, z.core.$strip>;
493
- export declare const commentSpamFeedbackSchema: z.ZodDefault<z.ZodObject<{
494
- commentId: z.ZodOptional<z.ZodString>;
495
- }, z.core.$strip>>;
496
496
  export declare const commentCreateSchema: z.ZodObject<{
497
497
  pagePath: z.ZodDefault<z.ZodString>;
498
498
  body: z.ZodString;
@@ -503,11 +503,20 @@ export declare const commentReplySchema: z.ZodObject<{
503
503
  body: z.ZodString;
504
504
  idempotencyKey: z.ZodOptional<z.ZodString>;
505
505
  }, z.core.$strip>;
506
+ export declare const commentReplyResponseSchema: z.ZodObject<{
507
+ status: z.ZodEnum<{
508
+ inserted: "inserted";
509
+ existing: "existing";
510
+ }>;
511
+ comment: z.ZodObject<{}, z.core.$loose>;
512
+ }, z.core.$loose>;
506
513
  export declare const commentPatchSchema: z.ZodObject<{
507
514
  status: z.ZodOptional<z.ZodEnum<{
508
515
  open: "open";
516
+ spam: "spam";
509
517
  archived: "archived";
510
518
  }>>;
519
+ spamCommentId: z.ZodOptional<z.ZodString>;
511
520
  }, z.core.$strip>;
512
521
  export declare const commentExportQuerySchema: z.ZodObject<{
513
522
  format: z.ZodDefault<z.ZodEnum<{
@@ -614,5 +623,6 @@ export type CollaborationUpdate = z.infer<typeof collaborationUpdateSchema>;
614
623
  export type CommentsSurface = z.infer<typeof commentsSurfaceSchema>;
615
624
  export type CollabVersionUrl = z.infer<typeof collabVersionUrlSchema>;
616
625
  export type CommentThread = z.infer<typeof commentThreadSchema>;
626
+ export type CommentThreadStatusPatch = z.infer<typeof commentThreadStatusPatchSchema>;
617
627
  export type CommentAttachment = z.infer<typeof commentAttachmentSchema>;
618
628
  export type CommentAttachmentView = z.infer<typeof commentAttachmentViewSchema>;