@spacefast/common 0.2.2 → 0.4.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.
- package/dist/agents/marketplace-prompts.d.ts +1 -0
- package/dist/agents/marketplace-prompts.js +6 -0
- package/dist/agents/registry/core.d.ts +4 -12
- package/dist/agents/registry/core.js +7 -28
- package/dist/config/domains.d.ts +10 -8
- package/dist/config/domains.js +4 -7
- package/dist/contracts/access-core.d.ts +135 -0
- package/dist/contracts/access-core.js +242 -0
- package/dist/contracts/access-profiles.d.ts +8 -8
- package/dist/contracts/access-profiles.js +8 -8
- package/dist/contracts/access.d.ts +14 -103
- package/dist/contracts/access.js +10 -210
- package/dist/contracts/activity.d.ts +54 -55
- package/dist/contracts/activity.js +38 -9
- package/dist/contracts/api-keys.d.ts +69 -26
- package/dist/contracts/api-keys.js +29 -2
- package/dist/contracts/application-journal.d.ts +197 -4
- package/dist/contracts/application-journal.js +97 -16
- package/dist/contracts/auth.d.ts +20 -0
- package/dist/contracts/auth.js +18 -0
- package/dist/contracts/beta.d.ts +13 -0
- package/dist/contracts/beta.js +28 -0
- package/dist/contracts/billing.d.ts +2 -2
- package/dist/contracts/bootstrap.d.ts +23 -6
- package/dist/contracts/builds.d.ts +18 -4
- package/dist/contracts/builds.js +7 -4
- package/dist/contracts/channels.d.ts +43 -0
- package/dist/contracts/channels.js +22 -6
- package/dist/contracts/comments.d.ts +49 -0
- package/dist/contracts/comments.js +61 -2
- package/dist/contracts/commerce.d.ts +19 -13
- package/dist/contracts/connector-access.d.ts +28 -0
- package/dist/contracts/connector-access.js +31 -0
- package/dist/contracts/connectors.d.ts +2382 -0
- package/dist/contracts/connectors.js +941 -0
- package/dist/contracts/content-contract-verification.d.ts +112 -58
- package/dist/contracts/content-contract-verification.js +42 -54
- package/dist/contracts/content-model-emit.d.ts +97 -0
- package/dist/contracts/content-model-emit.js +306 -0
- package/dist/contracts/content-model-sdk.d.ts +101 -0
- package/dist/contracts/content-model-sdk.js +232 -0
- package/dist/contracts/{content-program.d.ts → content-model.d.ts} +338 -82
- package/dist/contracts/{content-program.js → content-model.js} +291 -63
- package/dist/contracts/content-platform-fixture.d.ts +380 -110
- package/dist/contracts/content-platform-fixture.js +8 -8
- package/dist/contracts/content-sync.d.ts +197 -74
- package/dist/contracts/content-sync.js +98 -37
- package/dist/contracts/content.d.ts +30 -422
- package/dist/contracts/content.js +34 -294
- package/dist/contracts/dashboard-prefs.d.ts +10 -3
- package/dist/contracts/dashboard-prefs.js +6 -3
- package/dist/contracts/data-location.d.ts +9 -0
- package/dist/contracts/data-location.js +7 -0
- package/dist/contracts/deployment-comparison.d.ts +67 -0
- package/dist/contracts/deployment-comparison.js +68 -0
- package/dist/contracts/device-auth.d.ts +55 -11
- package/dist/contracts/domains.d.ts +40 -16
- package/dist/contracts/domains.js +23 -0
- package/dist/contracts/enums.d.ts +1 -10
- package/dist/contracts/enums.js +0 -15
- package/dist/contracts/error-code-meta.d.ts +384 -20
- package/dist/contracts/error-code-meta.js +200 -5
- package/dist/contracts/error-codes.d.ts +17 -4
- package/dist/contracts/error-codes.js +108 -10
- package/dist/contracts/events.d.ts +5 -0
- package/dist/contracts/events.js +12 -3
- package/dist/contracts/execution.d.ts +5 -1
- package/dist/contracts/execution.js +4 -0
- package/dist/contracts/feature-lifecycle.d.ts +53 -20
- package/dist/contracts/feature-lifecycle.js +65 -23
- package/dist/contracts/features.d.ts +57 -31
- package/dist/contracts/features.js +0 -1
- package/dist/contracts/feedback.d.ts +124 -0
- package/dist/contracts/feedback.js +64 -0
- package/dist/contracts/fixtures/content-model-sdk-v1.generated.d.ts +129 -0
- package/dist/contracts/fixtures/content-model-sdk-v1.generated.js +48 -0
- package/dist/contracts/fixtures/content-platform-v1.json +101 -49
- package/dist/contracts/frame-session.d.ts +60 -10
- package/dist/contracts/frame-session.js +52 -12
- package/dist/contracts/functions.d.ts +28 -2
- package/dist/contracts/functions.js +25 -2
- package/dist/contracts/grant-copy.d.ts +2 -0
- package/dist/contracts/grant-copy.js +2 -0
- package/dist/contracts/grants-core.d.ts +95 -0
- package/dist/contracts/grants-core.js +435 -0
- package/dist/contracts/grants.d.ts +13 -84
- package/dist/contracts/grants.js +21 -369
- package/dist/contracts/ids-core.d.ts +11 -0
- package/dist/contracts/ids-core.js +14 -0
- package/dist/contracts/ids.d.ts +7 -4
- package/dist/contracts/ids.js +12 -4
- package/dist/contracts/internal.d.ts +18 -0
- package/dist/contracts/internal.js +19 -0
- package/dist/contracts/mcp.d.ts +8 -18
- package/dist/contracts/mcp.js +2 -23
- package/dist/contracts/notifications.d.ts +4 -1
- package/dist/contracts/notifications.js +1 -0
- package/dist/contracts/oauth-resources.d.ts +46 -9
- package/dist/contracts/oauth-resources.js +50 -1
- package/dist/contracts/oauth-scope-actions.d.ts +27 -3
- package/dist/contracts/oauth-scope-actions.js +18 -8
- package/dist/contracts/operations.d.ts +1 -1
- package/dist/contracts/partner-account.d.ts +629 -0
- package/dist/contracts/partner-account.js +18 -0
- package/dist/contracts/principal-assertion.d.ts +74 -1
- package/dist/contracts/principal-assertion.js +67 -3
- package/dist/contracts/publish-archive.d.ts +22 -1
- package/dist/contracts/push-new.d.ts +3 -3
- package/dist/contracts/push-new.js +1 -1
- package/dist/contracts/quotas.js +2 -1
- package/dist/contracts/repository-connections.d.ts +10 -6
- package/dist/contracts/repository-connections.js +15 -0
- package/dist/contracts/resources.d.ts +6 -5
- package/dist/contracts/resources.js +7 -0
- package/dist/contracts/route-inventory.d.ts +74 -19
- package/dist/contracts/route-inventory.js +20 -6
- package/dist/contracts/runtime-api.d.ts +415 -4
- package/dist/contracts/runtime-api.js +60 -15
- package/dist/contracts/runtime-app.d.ts +6 -1
- package/dist/contracts/runtime-components.d.ts +646 -18
- package/dist/contracts/runtime-components.js +304 -188
- package/dist/contracts/runtime-services.d.ts +15 -0
- package/dist/contracts/runtime-services.js +25 -0
- package/dist/contracts/runtime-storage.d.ts +32 -0
- package/dist/contracts/runtime-storage.js +37 -0
- package/dist/contracts/source-workspaces.d.ts +511 -0
- package/dist/contracts/source-workspaces.js +276 -0
- package/dist/contracts/space-config-spacefast.d.ts +394 -0
- package/dist/contracts/space-config-spacefast.js +70 -0
- package/dist/contracts/space-config.d.ts +177 -90
- package/dist/contracts/space-config.js +77 -92
- package/dist/contracts/spaces.d.ts +132 -24
- package/dist/contracts/spaces.js +77 -13
- package/dist/contracts/superadmin-connectors.d.ts +371 -0
- package/dist/contracts/superadmin-connectors.js +61 -0
- package/dist/contracts/superadmin-emails.d.ts +1 -1
- package/dist/contracts/superadmin-emails.js +1 -1
- package/dist/contracts/superadmin-entities.d.ts +105 -0
- package/dist/contracts/superadmin-entities.js +64 -0
- package/dist/contracts/superadmin-runtime.d.ts +35 -116
- package/dist/contracts/superadmin-runtime.js +13 -69
- package/dist/contracts/superadmin-search.d.ts +12 -14
- package/dist/contracts/superadmin-search.js +2 -2
- package/dist/contracts/superadmin-spaces.d.ts +15 -72
- package/dist/contracts/superadmin-spaces.js +2 -7
- package/dist/contracts/superadmin-teams.d.ts +12 -0
- package/dist/contracts/superadmin-teams.js +7 -1
- package/dist/contracts/superadmin-tenants.d.ts +44 -16
- package/dist/contracts/superadmin.d.ts +2 -2
- package/dist/contracts/tags.d.ts +12 -12
- package/dist/contracts/teams.d.ts +29 -1
- package/dist/contracts/teams.js +24 -2
- package/dist/contracts/tenants.d.ts +98 -0
- package/dist/contracts/tenants.js +20 -0
- package/dist/contracts/transfers.d.ts +92 -0
- package/dist/contracts/transfers.js +37 -0
- package/dist/contracts/usage.d.ts +9 -1
- package/dist/contracts/usage.js +2 -0
- package/dist/contracts/visual-review.d.ts +448 -0
- package/dist/contracts/visual-review.js +156 -0
- package/dist/contracts/wordpress-php-toolkit.json +9 -0
- package/dist/contracts/work-mode.d.ts +24 -0
- package/dist/contracts/work-mode.js +17 -0
- package/dist/contracts/wp-cli.d.ts +66 -0
- package/dist/contracts/wp-cli.js +68 -0
- package/dist/contracts/zero-catalog.d.ts +29 -0
- package/dist/contracts/zero-catalog.js +55 -0
- package/dist/contracts/zero-platform-abilities.generated.d.ts +31 -0
- package/dist/contracts/zero-platform-abilities.generated.js +373 -0
- package/dist/contracts/zero-spacefast.d.ts +444 -0
- package/dist/contracts/zero-spacefast.js +149 -0
- package/dist/contracts/zero-types.d.ts +47 -0
- package/dist/contracts/zero-types.js +263 -0
- package/dist/contracts/zero.d.ts +781 -14
- package/dist/contracts/zero.js +204 -10
- package/dist/dashboard-paths/index.d.ts +2 -2
- package/dist/dashboard-paths/route-reservations.generated.d.ts +2 -2
- package/dist/dashboard-paths/route-reservations.generated.js +5 -0
- package/dist/docs/agent-prose.d.ts +1 -1
- package/dist/docs/agent-prose.js +15 -18
- package/dist/docs/agent-setup.d.ts +1 -1
- package/dist/docs/agent-setup.js +5 -13
- package/dist/docs/catalog.d.ts +64 -28
- package/dist/docs/catalog.js +155 -28
- package/dist/docs/error-docs.d.ts +361 -17
- package/dist/docs/error-docs.js +365 -21
- package/dist/docs/reference-urls.js +1 -1
- package/dist/docs/skills.d.ts +84 -84
- package/dist/docs/skills.js +66 -47
- package/dist/docs/start-prompts.d.ts +14 -0
- package/dist/docs/start-prompts.js +20 -0
- package/dist/utils/account-labels.d.ts +7 -0
- package/dist/utils/account-labels.js +15 -0
- package/dist/utils/auth.d.ts +1 -0
- package/dist/utils/auth.js +1 -0
- package/dist/utils/credential-policy.d.ts +22 -1
- package/dist/utils/credential-policy.js +55 -6
- package/dist/utils/local-space-state.d.ts +7 -0
- package/dist/utils/local-space-state.js +7 -0
- package/dist/utils/logger.d.ts +34 -0
- package/dist/utils/logger.js +144 -0
- package/dist/utils/page-routes.d.ts +9 -0
- package/dist/utils/page-routes.js +82 -0
- package/dist/utils/pages.d.ts +2 -0
- package/dist/utils/pages.js +7 -0
- package/dist/utils/publish-form-data.d.ts +2 -0
- package/dist/utils/publish-form-data.js +2 -0
- package/dist/utils/publish-policy-spacefast.d.ts +13 -0
- package/dist/utils/publish-policy-spacefast.js +117 -0
- package/dist/utils/publish-policy.d.ts +22 -16
- package/dist/utils/publish-policy.fixtures.json +15 -0
- package/dist/utils/publish-policy.js +62 -139
- package/dist/utils/query-client.js +9 -1
- package/dist/utils/runtime-upload.d.ts +4 -0
- package/dist/utils/runtime-upload.js +5 -0
- package/dist/utils/space-config.d.ts +2 -3
- package/dist/utils/space-config.js +1 -1
- package/dist/utils/uploaded-source.d.ts +4 -0
- package/dist/utils/uploaded-source.js +12 -0
- package/dist/visual-review.d.ts +4 -0
- package/dist/visual-review.js +208 -0
- package/dist/vocabulary.d.ts +38 -0
- package/dist/vocabulary.js +55 -0
- package/package.json +7 -2
- package/dist/agents/registry/deeplink-probes.d.ts +0 -23
- package/dist/agents/registry/deeplink-probes.js +0 -18
|
@@ -6,13 +6,25 @@
|
|
|
6
6
|
// emitted; retiring an API surface removes its dead codes and generated
|
|
7
7
|
// references together. Diagnostic codes share this table, so every diagnostic
|
|
8
8
|
// carries a resolvable docs link.
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Where problem documents point when nobody says otherwise.
|
|
11
|
+
*
|
|
12
|
+
* Compiled in rather than imported from the domain registry: a host that serves
|
|
13
|
+
* its own error pages passes its own base URL through {@link errorDocsUrl}, and
|
|
14
|
+
* a table of codes must not drag a hostname registry along to be readable. The
|
|
15
|
+
* literal is checked against the registry in `config/domains.test.ts`.
|
|
16
|
+
*/
|
|
17
|
+
export const DEFAULT_PROBLEM_DOCS_BASE_URL = "https://spacefast.com/docs/errors";
|
|
11
18
|
/** Media type of every 4xx/5xx response body (RFC 9457 problem details). */
|
|
12
19
|
export const PROBLEM_CONTENT_TYPE = "application/problem+json";
|
|
13
|
-
/**
|
|
14
|
-
|
|
15
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Problem `type` URI: docs base + `/{code}`. Asserted by the conformance suite.
|
|
22
|
+
*
|
|
23
|
+
* `baseUrl` is what a white-labeled surface injects (the brand document's
|
|
24
|
+
* `problemDocsBaseUrl`); omitting it resolves against Spacefast's own docs.
|
|
25
|
+
*/
|
|
26
|
+
export function errorDocsUrl(code, baseUrl = DEFAULT_PROBLEM_DOCS_BASE_URL) {
|
|
27
|
+
return `${baseUrl.replace(/\/+$/, "")}/${code}`;
|
|
16
28
|
}
|
|
17
29
|
/** Problem `title`: the snake_case code as a sentence ("version_not_found" -> "Version not found"). */
|
|
18
30
|
export function errorTitle(code) {
|
|
@@ -51,6 +63,7 @@ export const ERROR_CODES = [
|
|
|
51
63
|
"build_timeout",
|
|
52
64
|
"cache_purge_domain_required",
|
|
53
65
|
"cache_purge_path_required",
|
|
66
|
+
"catalog_unavailable",
|
|
54
67
|
"channel_name_reserved",
|
|
55
68
|
"channel_pointer_moved",
|
|
56
69
|
"channel_unsupported",
|
|
@@ -71,6 +84,26 @@ export const ERROR_CODES = [
|
|
|
71
84
|
"confirmation_mismatch",
|
|
72
85
|
"confirmation_required",
|
|
73
86
|
"confirmation_token_required",
|
|
87
|
+
"connection_ambiguous",
|
|
88
|
+
"connection_forbidden",
|
|
89
|
+
"connection_needs_reauth",
|
|
90
|
+
"connection_not_found",
|
|
91
|
+
"connection_revoked",
|
|
92
|
+
"connection_serving_not_granted",
|
|
93
|
+
"connector_approval_required",
|
|
94
|
+
"connector_first_party_immutable",
|
|
95
|
+
"connector_not_found",
|
|
96
|
+
"connector_role_unknown",
|
|
97
|
+
"connector_run_budget_exhausted",
|
|
98
|
+
"connector_run_not_found",
|
|
99
|
+
"connector_run_not_resumable",
|
|
100
|
+
"connector_serving_admin_only",
|
|
101
|
+
"connector_serving_not_allowlisted",
|
|
102
|
+
"connector_slug_taken",
|
|
103
|
+
"connector_source_blocked",
|
|
104
|
+
"connector_source_unreachable",
|
|
105
|
+
"connector_tool_blocked",
|
|
106
|
+
"connector_write_in_read_handler",
|
|
74
107
|
"continuation_unavailable",
|
|
75
108
|
"continuation_used",
|
|
76
109
|
"credential_expired",
|
|
@@ -89,6 +122,7 @@ export const ERROR_CODES = [
|
|
|
89
122
|
"decision_in_progress",
|
|
90
123
|
"device_authorization_failed",
|
|
91
124
|
"device_verification_rate_limited",
|
|
125
|
+
"dns_control_observation_indeterminate",
|
|
92
126
|
"dns_export_required",
|
|
93
127
|
"dns_field_conflict",
|
|
94
128
|
"dns_field_not_applicable",
|
|
@@ -127,7 +161,6 @@ export const ERROR_CODES = [
|
|
|
127
161
|
"domain_facet_already_managed",
|
|
128
162
|
"domain_facet_external",
|
|
129
163
|
"domain_facet_not_applicable",
|
|
130
|
-
"domain_hostname_site_mismatch",
|
|
131
164
|
"domain_in_use",
|
|
132
165
|
"domain_lookup_rate_limited",
|
|
133
166
|
"domain_not_bound",
|
|
@@ -140,7 +173,9 @@ export const ERROR_CODES = [
|
|
|
140
173
|
"domain_wildcard_not_enabled",
|
|
141
174
|
"download_required",
|
|
142
175
|
"duplicate_version_path",
|
|
176
|
+
"elevation_denied",
|
|
143
177
|
"elevation_not_required",
|
|
178
|
+
"elevation_required",
|
|
144
179
|
"email_already_claimed",
|
|
145
180
|
"email_verification_code_invalid",
|
|
146
181
|
"enforcement_policy_overlap",
|
|
@@ -150,7 +185,17 @@ export const ERROR_CODES = [
|
|
|
150
185
|
"feature_unavailable",
|
|
151
186
|
"files_mode_does_not_support_spa",
|
|
152
187
|
"forbidden",
|
|
188
|
+
"frame_link_inactive",
|
|
189
|
+
"frame_path_outside_link_resources",
|
|
190
|
+
"frame_principal_required",
|
|
191
|
+
"frame_session_invalid",
|
|
192
|
+
"frame_session_stale",
|
|
193
|
+
"frame_session_target_changed",
|
|
194
|
+
"frame_target_fixed",
|
|
195
|
+
"frame_version_required",
|
|
153
196
|
"free_external_proxy_disabled",
|
|
197
|
+
"hostname_contested",
|
|
198
|
+
"human_approval_required",
|
|
154
199
|
"idempotency_conflict_in_progress",
|
|
155
200
|
"idempotency_key_reused",
|
|
156
201
|
"incumbent_controls_dns",
|
|
@@ -198,6 +243,9 @@ export const ERROR_CODES = [
|
|
|
198
243
|
"issuer_proof_invalid",
|
|
199
244
|
"issuer_tenant_occupied",
|
|
200
245
|
"issuer_unknown",
|
|
246
|
+
"jetpack_licensing_rejected",
|
|
247
|
+
"jetpack_licensing_response_invalid",
|
|
248
|
+
"jetpack_licensing_unavailable",
|
|
201
249
|
"job_not_found",
|
|
202
250
|
"job_not_promotable",
|
|
203
251
|
"job_not_removable",
|
|
@@ -206,6 +254,8 @@ export const ERROR_CODES = [
|
|
|
206
254
|
"log_retention_clamped",
|
|
207
255
|
"lost_domain_control",
|
|
208
256
|
"maintenance_in_progress",
|
|
257
|
+
"malformed_policy_pattern",
|
|
258
|
+
"malformed_tool_address",
|
|
209
259
|
"malware_detected",
|
|
210
260
|
"managed_domain_protected",
|
|
211
261
|
"manifest_body_too_large",
|
|
@@ -218,18 +268,19 @@ export const ERROR_CODES = [
|
|
|
218
268
|
"name_managed_by_config",
|
|
219
269
|
"nameserver_delegation_required",
|
|
220
270
|
"nameserver_divergence",
|
|
271
|
+
"next_package_layout_unsupported",
|
|
221
272
|
"next_version_unsupported",
|
|
222
273
|
"no_space_selected",
|
|
223
274
|
"noop_publish",
|
|
224
275
|
"not_enrolled",
|
|
225
276
|
"not_found",
|
|
277
|
+
"owner_binding_requires_private_space",
|
|
226
278
|
"partner_preset_not_grantable",
|
|
227
279
|
"partner_tenant_immutable_client",
|
|
228
280
|
"password_already_set",
|
|
229
281
|
"password_compromised",
|
|
230
282
|
"path_case_collision",
|
|
231
283
|
"path_too_long",
|
|
232
|
-
"placement_invalid_burstable",
|
|
233
284
|
"plan_grant_already_active",
|
|
234
285
|
"plan_grant_already_revoked",
|
|
235
286
|
"plan_unknown",
|
|
@@ -280,16 +331,21 @@ export const ERROR_CODES = [
|
|
|
280
331
|
"queue_not_found",
|
|
281
332
|
"quota_exceeded",
|
|
282
333
|
"rate_limited",
|
|
334
|
+
"realtime_cursor_expired",
|
|
283
335
|
"registration_expired",
|
|
284
336
|
"registration_expiring",
|
|
337
|
+
"repository_ref_not_found",
|
|
338
|
+
"repository_stale_base",
|
|
285
339
|
"resource_revision_changed",
|
|
286
340
|
"response_headers_unservable",
|
|
287
341
|
"response_table_too_large",
|
|
288
342
|
"review_item_claimed",
|
|
289
343
|
"routing_rules_over_plan",
|
|
344
|
+
"run_replay_diverged",
|
|
290
345
|
"runtime_action_forbidden",
|
|
291
346
|
"runtime_api_not_found",
|
|
292
347
|
"runtime_callback_forbidden",
|
|
348
|
+
"runtime_capabilities_pending",
|
|
293
349
|
"runtime_dev_unsupported",
|
|
294
350
|
"runtime_hostname_unassigned",
|
|
295
351
|
"runtime_instance_mismatch",
|
|
@@ -315,8 +371,6 @@ export const ERROR_CODES = [
|
|
|
315
371
|
"service_signature_invalid",
|
|
316
372
|
"session_not_fresh",
|
|
317
373
|
"site_already_deleted",
|
|
318
|
-
"site_has_live_spaces",
|
|
319
|
-
"site_not_static",
|
|
320
374
|
"site_required",
|
|
321
375
|
"site_suspended",
|
|
322
376
|
"slow_down",
|
|
@@ -326,6 +380,41 @@ export const ERROR_CODES = [
|
|
|
326
380
|
"source_archive_decompression_timeout",
|
|
327
381
|
"source_archive_expansion_ratio_exceeded",
|
|
328
382
|
"source_archive_validation_busy",
|
|
383
|
+
"source_branch_changed",
|
|
384
|
+
"source_branch_missing",
|
|
385
|
+
"source_commit_not_saved",
|
|
386
|
+
"source_conflict_content_unavailable",
|
|
387
|
+
"source_conflicts_missing",
|
|
388
|
+
"source_exact_diff_unsupported",
|
|
389
|
+
"source_file_incomplete",
|
|
390
|
+
"source_file_mode_unavailable",
|
|
391
|
+
"source_file_required",
|
|
392
|
+
"source_file_too_large",
|
|
393
|
+
"source_file_unavailable",
|
|
394
|
+
"source_files_too_large",
|
|
395
|
+
"source_hunk_selection_invalid",
|
|
396
|
+
"source_hunk_stale",
|
|
397
|
+
"source_merge_snapshot_changed",
|
|
398
|
+
"source_merge_undo_unsupported",
|
|
399
|
+
"source_nothing_staged",
|
|
400
|
+
"source_operation_pending",
|
|
401
|
+
"source_operation_reused",
|
|
402
|
+
"source_operation_superseded",
|
|
403
|
+
"source_operation_unreconciled",
|
|
404
|
+
"source_patch_unavailable",
|
|
405
|
+
"source_resolution_invalid",
|
|
406
|
+
"source_resolution_pending",
|
|
407
|
+
"source_selection_invalid",
|
|
408
|
+
"source_snapshot_changed",
|
|
409
|
+
"source_tree_too_large",
|
|
410
|
+
"source_workspace_closed",
|
|
411
|
+
"source_workspace_connection_changed",
|
|
412
|
+
"source_workspace_connection_in_use",
|
|
413
|
+
"source_workspace_dirty",
|
|
414
|
+
"source_workspace_initializing",
|
|
415
|
+
"source_workspace_ref_reserved",
|
|
416
|
+
"source_workspace_revision_conflict",
|
|
417
|
+
"source_workspaces_unavailable",
|
|
329
418
|
"space_already_claimed",
|
|
330
419
|
"space_claim_unavailable",
|
|
331
420
|
"space_claimed_credential_available",
|
|
@@ -429,16 +518,24 @@ export const ERROR_CODES = [
|
|
|
429
518
|
"version_not_ready",
|
|
430
519
|
"version_quota_exceeded",
|
|
431
520
|
"version_total_bytes_exceeded",
|
|
521
|
+
"visitor_role_not_bindable",
|
|
522
|
+
"visual_review_context_too_large",
|
|
523
|
+
"visual_review_expired",
|
|
524
|
+
"visual_review_forbidden",
|
|
525
|
+
"visual_review_invalid_image",
|
|
526
|
+
"visual_review_invalid_note",
|
|
527
|
+
"visual_review_submitted",
|
|
528
|
+
"visual_review_too_large",
|
|
432
529
|
"webhook_delivery_budget_exceeded",
|
|
433
530
|
"webhook_managed_by_manifest",
|
|
434
531
|
"whois_unavailable",
|
|
532
|
+
"wp_cli_timeout",
|
|
435
533
|
"wp_cloud_assignment_kind_mismatch",
|
|
436
534
|
"wp_cloud_assignment_space_mismatch",
|
|
437
535
|
"wp_cloud_assignment_team_mismatch",
|
|
438
536
|
"wp_cloud_client_in_use",
|
|
439
537
|
"wp_cloud_client_not_found",
|
|
440
538
|
"wp_cloud_site_still_assigned",
|
|
441
|
-
"wp_cloud_team_shared_site_exists",
|
|
442
539
|
"wp_cloud_webhook_secret_not_configured",
|
|
443
540
|
"zero_ai_unavailable",
|
|
444
541
|
"zero_artifact_abi_mismatch",
|
|
@@ -511,6 +608,7 @@ export const ERROR_CODES = [
|
|
|
511
608
|
"zero_log_query_invalid",
|
|
512
609
|
"zero_method_not_allowed",
|
|
513
610
|
"zero_migration_failed",
|
|
611
|
+
"zero_mutation_origin_invalid",
|
|
514
612
|
"zero_query_name_missing",
|
|
515
613
|
"zero_realtime_forbidden",
|
|
516
614
|
"zero_realtime_message_invalid",
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
export declare const EVENT_PROPERTY_STRING_MAX_LENGTH = 512;
|
|
2
3
|
export declare const eventSourceSchema: z.ZodEnum<{
|
|
3
4
|
www: "www";
|
|
4
5
|
dashboard: "dashboard";
|
|
@@ -32,6 +33,7 @@ export declare const EVENT_CATALOG: {
|
|
|
32
33
|
actors: ("analytics_id" | "anonymous_id")[];
|
|
33
34
|
properties: z.ZodObject<{
|
|
34
35
|
path: z.ZodString;
|
|
36
|
+
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
35
37
|
referrer: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
36
38
|
}, z.core.$strict>;
|
|
37
39
|
};
|
|
@@ -106,6 +108,7 @@ export declare const EVENT_CATALOG: {
|
|
|
106
108
|
actors: ("analytics_id" | "anonymous_id")[];
|
|
107
109
|
properties: z.ZodObject<{
|
|
108
110
|
mode: z.ZodEnum<{
|
|
111
|
+
publish: "publish";
|
|
109
112
|
start: "start";
|
|
110
113
|
"new-space": "new-space";
|
|
111
114
|
}>;
|
|
@@ -118,6 +121,7 @@ export declare const EVENT_CATALOG: {
|
|
|
118
121
|
actors: ("analytics_id" | "anonymous_id")[];
|
|
119
122
|
properties: z.ZodObject<{
|
|
120
123
|
mode: z.ZodEnum<{
|
|
124
|
+
publish: "publish";
|
|
121
125
|
start: "start";
|
|
122
126
|
"new-space": "new-space";
|
|
123
127
|
}>;
|
|
@@ -131,6 +135,7 @@ export declare const EVENT_CATALOG: {
|
|
|
131
135
|
actors: ("analytics_id" | "anonymous_id")[];
|
|
132
136
|
properties: z.ZodObject<{
|
|
133
137
|
mode: z.ZodEnum<{
|
|
138
|
+
publish: "publish";
|
|
134
139
|
start: "start";
|
|
135
140
|
"new-space": "new-space";
|
|
136
141
|
}>;
|
package/dist/contracts/events.js
CHANGED
|
@@ -15,7 +15,13 @@ const pathSchema = z
|
|
|
15
15
|
.min(1)
|
|
16
16
|
.max(2048)
|
|
17
17
|
.describe("Client route or URL path the event happened on, without query strings.");
|
|
18
|
-
const
|
|
18
|
+
export const EVENT_PROPERTY_STRING_MAX_LENGTH = 512;
|
|
19
|
+
const propertyValueSchema = z.union([
|
|
20
|
+
z.string().max(EVENT_PROPERTY_STRING_MAX_LENGTH),
|
|
21
|
+
z.number(),
|
|
22
|
+
z.boolean(),
|
|
23
|
+
z.null(),
|
|
24
|
+
]);
|
|
19
25
|
const propertyBagSchema = z
|
|
20
26
|
.record(z.string().max(64), propertyValueSchema)
|
|
21
27
|
.refine((value) => Object.keys(value).length <= 32, {
|
|
@@ -58,6 +64,9 @@ const eventContextSchema = z
|
|
|
58
64
|
const pageViewedPropertiesSchema = z
|
|
59
65
|
.object({
|
|
60
66
|
path: pathSchema,
|
|
67
|
+
// Full token-scrubbed location.href, so PostHog's $current_url keeps its
|
|
68
|
+
// host. Optional: senders that only know the path fall back to it.
|
|
69
|
+
url: z.string().max(2048).nullable().optional(),
|
|
61
70
|
referrer: z.string().max(2048).nullable().optional(),
|
|
62
71
|
})
|
|
63
72
|
.strict();
|
|
@@ -120,8 +129,8 @@ const browserFunnelPropertiesSchema = propertyBagSchema.default({});
|
|
|
120
129
|
// credential NEVER appear here — every shape
|
|
121
130
|
// below is strict, so a sender that adds one is rejected at ingest.
|
|
122
131
|
const startFunnelModeSchema = z
|
|
123
|
-
.enum(["start", "new-space"])
|
|
124
|
-
.describe("Which entry point the visitor is in: first-run /start,
|
|
132
|
+
.enum(["start", "new-space", "publish"])
|
|
133
|
+
.describe("Which entry point the visitor is in: first-run /start, new-space inside a team, or publishing an existing space.");
|
|
125
134
|
const startFunnelStepSchema = z.string().min(1).max(64);
|
|
126
135
|
const startFunnelAgentIdSchema = z
|
|
127
136
|
.string()
|
|
@@ -103,6 +103,8 @@ export declare const executionCapabilitiesSchema: z.ZodDefault<z.ZodObject<{
|
|
|
103
103
|
spam: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
104
104
|
email: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
105
105
|
content: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
106
|
+
storage: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
107
|
+
connectors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
106
108
|
}, z.core.$strip>>;
|
|
107
109
|
export type ExecutionCapabilities = z.infer<typeof executionCapabilitiesSchema>;
|
|
108
110
|
/**
|
|
@@ -110,7 +112,7 @@ export type ExecutionCapabilities = z.infer<typeof executionCapabilitiesSchema>;
|
|
|
110
112
|
* derived from a response body, so two spaces never list their capabilities
|
|
111
113
|
* differently because JSON came back reshuffled.
|
|
112
114
|
*/
|
|
113
|
-
export declare const EXECUTION_CAPABILITY_ORDER: readonly ["db", "fetch", "auth", "env", "realtime", "logging", "gravatar", "spam", "email", "content"];
|
|
115
|
+
export declare const EXECUTION_CAPABILITY_ORDER: readonly ["db", "fetch", "auth", "env", "realtime", "logging", "gravatar", "spam", "email", "content", "storage", "connectors"];
|
|
114
116
|
/**
|
|
115
117
|
* The portable seam. `db`, `auth` and `realtime` bind a handler to the local
|
|
116
118
|
* tier: `db` because Zero guarantees one parent-owned transaction that an
|
|
@@ -157,6 +159,8 @@ export declare function executionEndpointSourceSchema(routePathSchema: z.ZodType
|
|
|
157
159
|
spam: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
158
160
|
email: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
159
161
|
content: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
162
|
+
storage: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
163
|
+
connectors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
160
164
|
}, z.core.$strip>>;
|
|
161
165
|
}, z.core.$strict>;
|
|
162
166
|
/**
|
|
@@ -186,6 +186,8 @@ export const executionCapabilitiesSchema = z
|
|
|
186
186
|
spam: z.boolean().default(false),
|
|
187
187
|
email: z.boolean().default(false),
|
|
188
188
|
content: z.boolean().default(false),
|
|
189
|
+
storage: z.boolean().default(false),
|
|
190
|
+
connectors: z.boolean().default(false),
|
|
189
191
|
})
|
|
190
192
|
.partial()
|
|
191
193
|
.default({});
|
|
@@ -205,6 +207,8 @@ export const EXECUTION_CAPABILITY_ORDER = [
|
|
|
205
207
|
"spam",
|
|
206
208
|
"email",
|
|
207
209
|
"content",
|
|
210
|
+
"storage",
|
|
211
|
+
"connectors",
|
|
208
212
|
];
|
|
209
213
|
// A capability added to executionCapabilitiesSchema must also be added to the order above.
|
|
210
214
|
true;
|
|
@@ -297,7 +297,7 @@ declare const featureEntries: readonly [{
|
|
|
297
297
|
readonly feedbackUrl: null;
|
|
298
298
|
};
|
|
299
299
|
readonly owner: "team:runtime";
|
|
300
|
-
readonly requires: readonly [
|
|
300
|
+
readonly requires: readonly [];
|
|
301
301
|
readonly lifecycleAdoptedAt: "2026-08-28";
|
|
302
302
|
readonly reviewAfter: "2026-09-11";
|
|
303
303
|
readonly removeAfter: "2026-10-31";
|
|
@@ -318,31 +318,26 @@ declare const featureEntries: readonly [{
|
|
|
318
318
|
};
|
|
319
319
|
}, {
|
|
320
320
|
readonly cohort: "launch";
|
|
321
|
-
readonly key: "sites.
|
|
322
|
-
readonly name: "
|
|
323
|
-
readonly description: "
|
|
324
|
-
readonly stage: "
|
|
325
|
-
readonly surface:
|
|
326
|
-
readonly defaultEnabled:
|
|
321
|
+
readonly key: "sites.jetpack";
|
|
322
|
+
readonly name: "Managed Jetpack";
|
|
323
|
+
readonly description: "Activates Jetpack on managed WordPress sites and attaches configured partner licenses.";
|
|
324
|
+
readonly stage: "internal";
|
|
325
|
+
readonly surface: false;
|
|
326
|
+
readonly defaultEnabled: false;
|
|
327
327
|
readonly runtime: {
|
|
328
|
-
readonly enabledInDevelopment: true;
|
|
329
328
|
readonly enabledForA8c: true;
|
|
330
329
|
readonly planDefaults: {};
|
|
331
330
|
};
|
|
332
|
-
readonly docs:
|
|
333
|
-
readonly channel: "public";
|
|
334
|
-
readonly slug: "/docs/account/plans";
|
|
335
|
-
readonly feedbackUrl: null;
|
|
336
|
-
};
|
|
331
|
+
readonly docs: null;
|
|
337
332
|
readonly owner: "team:runtime";
|
|
338
333
|
readonly requires: readonly [];
|
|
339
|
-
readonly lifecycleAdoptedAt: "2026-
|
|
340
|
-
readonly reviewAfter:
|
|
341
|
-
readonly removeAfter: "2026-
|
|
342
|
-
readonly gaAt:
|
|
334
|
+
readonly lifecycleAdoptedAt: "2026-08-29";
|
|
335
|
+
readonly reviewAfter: "2026-09-12";
|
|
336
|
+
readonly removeAfter: "2026-10-31";
|
|
337
|
+
readonly gaAt: null;
|
|
343
338
|
readonly downRamp: {
|
|
344
|
-
readonly code: "
|
|
345
|
-
readonly summary: "
|
|
339
|
+
readonly code: "managed_jetpack_stop";
|
|
340
|
+
readonly summary: "Stop new plugin and license reconciliation. Leave attached licenses and existing Jetpack connections intact for deliberate cleanup.";
|
|
346
341
|
};
|
|
347
342
|
}, {
|
|
348
343
|
readonly cohort: "launch";
|
|
@@ -478,6 +473,34 @@ declare const featureEntries: readonly [{
|
|
|
478
473
|
readonly code: "slug_rename_stop";
|
|
479
474
|
readonly summary: "Block new slug renames while earlier hostname and runtime updates continue.";
|
|
480
475
|
};
|
|
476
|
+
}, {
|
|
477
|
+
readonly cohort: "launch";
|
|
478
|
+
readonly key: "content.users";
|
|
479
|
+
readonly name: "Space users";
|
|
480
|
+
readonly description: string;
|
|
481
|
+
readonly stage: "internal";
|
|
482
|
+
readonly surface: true;
|
|
483
|
+
readonly defaultEnabled: false;
|
|
484
|
+
readonly runtime: {
|
|
485
|
+
readonly enabledInDevelopment: true;
|
|
486
|
+
readonly enabledForA8c: true;
|
|
487
|
+
readonly planDefaults: {};
|
|
488
|
+
};
|
|
489
|
+
readonly docs: {
|
|
490
|
+
readonly channel: "handbook";
|
|
491
|
+
readonly slug: "/features/content";
|
|
492
|
+
readonly feedbackUrl: null;
|
|
493
|
+
};
|
|
494
|
+
readonly owner: "team:runtime";
|
|
495
|
+
readonly requires: readonly [];
|
|
496
|
+
readonly lifecycleAdoptedAt: "2026-08-29";
|
|
497
|
+
readonly reviewAfter: "2026-09-26";
|
|
498
|
+
readonly removeAfter: "2026-11-01";
|
|
499
|
+
readonly gaAt: null;
|
|
500
|
+
readonly downRamp: {
|
|
501
|
+
readonly code: "space_users_stop";
|
|
502
|
+
readonly summary: string;
|
|
503
|
+
};
|
|
481
504
|
}, {
|
|
482
505
|
readonly key: "pages.templates";
|
|
483
506
|
readonly name: "Custom page templates";
|
|
@@ -496,6 +519,16 @@ declare const featureEntries: readonly [{
|
|
|
496
519
|
readonly enabledForA8c: false;
|
|
497
520
|
readonly planDefaults: {};
|
|
498
521
|
};
|
|
522
|
+
}, {
|
|
523
|
+
readonly key: "connectors";
|
|
524
|
+
readonly name: "Connectors";
|
|
525
|
+
readonly description: "Team-scoped connectors: register tool sources, connect accounts, decide policy, and run tools from agents, the CLI, MCP, and the dashboard.";
|
|
526
|
+
readonly defaultEnabled: true;
|
|
527
|
+
readonly runtime: {
|
|
528
|
+
readonly enabledInDevelopment: true;
|
|
529
|
+
readonly enabledForA8c: true;
|
|
530
|
+
readonly planDefaults: {};
|
|
531
|
+
};
|
|
499
532
|
}];
|
|
500
533
|
type FeatureEntry = (typeof featureEntries)[number];
|
|
501
534
|
type LifecycleFeatureEntry = Extract<FeatureEntry, {
|
|
@@ -512,5 +545,5 @@ type RuntimeDefinitionRecord<K extends string> = {
|
|
|
512
545
|
readonly [Key in K]: RuntimeFeatureDefinitionFields<Key>;
|
|
513
546
|
};
|
|
514
547
|
export declare const FEATURE_RUNTIME_KEYS: readonly RuntimeFeatureKey[];
|
|
515
|
-
export declare const FEATURE_RUNTIME_DEFINITIONS: Readonly<RuntimeDefinitionRecord<"zero" | "plans.paid.available" | "anonymous.publishing" | "beta.enrollment_gate" | "domains.search" | "domains.registration" | "domains.dns_management" | "domains.wpcom_dns" | "domains.domain_connect" | "domains.proxy_bindings" | "collab.notices" | "collab.comments" | "content.managed" | "
|
|
548
|
+
export declare const FEATURE_RUNTIME_DEFINITIONS: Readonly<RuntimeDefinitionRecord<"connectors" | "zero" | "tags" | "functions" | "plans.paid.available" | "anonymous.publishing" | "beta.enrollment_gate" | "domains.search" | "domains.registration" | "domains.dns_management" | "domains.wpcom_dns" | "domains.domain_connect" | "domains.proxy_bindings" | "collab.notices" | "collab.comments" | "content.managed" | "collab.drawing" | "sites.jetpack" | "spaces.slug_rename" | "content.users" | "pages.templates" | "branding.hide">>;
|
|
516
549
|
export declare const FEATURE_LIFECYCLE_BY_KEY: ReadonlyMap<LifecycleFeatureKey, FeatureRegistryEntry<LifecycleFeatureKey>>;
|
|
@@ -302,7 +302,7 @@ const featureEntries = Object.freeze([
|
|
|
302
302
|
feedbackUrl: null,
|
|
303
303
|
},
|
|
304
304
|
owner: "team:runtime",
|
|
305
|
-
requires: [
|
|
305
|
+
requires: [],
|
|
306
306
|
lifecycleAdoptedAt: "2026-08-28",
|
|
307
307
|
reviewAfter: "2026-09-11",
|
|
308
308
|
removeAfter: "2026-10-31",
|
|
@@ -325,33 +325,26 @@ const featureEntries = Object.freeze([
|
|
|
325
325
|
},
|
|
326
326
|
{
|
|
327
327
|
cohort: "launch",
|
|
328
|
-
key: "sites.
|
|
329
|
-
name: "
|
|
330
|
-
description: "
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
surface: true,
|
|
335
|
-
defaultEnabled: true,
|
|
328
|
+
key: "sites.jetpack",
|
|
329
|
+
name: "Managed Jetpack",
|
|
330
|
+
description: "Activates Jetpack on managed WordPress sites and attaches configured partner licenses.",
|
|
331
|
+
stage: "internal",
|
|
332
|
+
surface: false,
|
|
333
|
+
defaultEnabled: false,
|
|
336
334
|
runtime: {
|
|
337
|
-
enabledInDevelopment: true,
|
|
338
335
|
enabledForA8c: true,
|
|
339
336
|
planDefaults: {},
|
|
340
337
|
},
|
|
341
|
-
docs:
|
|
342
|
-
channel: "public",
|
|
343
|
-
slug: "/docs/account/plans",
|
|
344
|
-
feedbackUrl: null,
|
|
345
|
-
},
|
|
338
|
+
docs: null,
|
|
346
339
|
owner: "team:runtime",
|
|
347
340
|
requires: [],
|
|
348
|
-
lifecycleAdoptedAt: "2026-
|
|
349
|
-
reviewAfter:
|
|
350
|
-
removeAfter: "2026-
|
|
351
|
-
gaAt:
|
|
341
|
+
lifecycleAdoptedAt: "2026-08-29",
|
|
342
|
+
reviewAfter: "2026-09-12",
|
|
343
|
+
removeAfter: "2026-10-31",
|
|
344
|
+
gaAt: null,
|
|
352
345
|
downRamp: {
|
|
353
|
-
code: "
|
|
354
|
-
summary: "
|
|
346
|
+
code: "managed_jetpack_stop",
|
|
347
|
+
summary: "Stop new plugin and license reconciliation. Leave attached licenses and existing Jetpack connections intact for deliberate cleanup.",
|
|
355
348
|
},
|
|
356
349
|
},
|
|
357
350
|
{
|
|
@@ -460,8 +453,7 @@ const featureEntries = Object.freeze([
|
|
|
460
453
|
},
|
|
461
454
|
owner: "team:zero",
|
|
462
455
|
// A worker executes on Cloudflare rather than on the space's box and
|
|
463
|
-
// reaches the database only through the broker
|
|
464
|
-
// dedicated-runtime lifecycle dependency.
|
|
456
|
+
// reaches the database only through the broker.
|
|
465
457
|
requires: [],
|
|
466
458
|
lifecycleAdoptedAt: "2026-07-27",
|
|
467
459
|
reviewAfter: null,
|
|
@@ -503,6 +495,45 @@ const featureEntries = Object.freeze([
|
|
|
503
495
|
summary: "Block new slug renames while earlier hostname and runtime updates continue.",
|
|
504
496
|
},
|
|
505
497
|
},
|
|
498
|
+
{
|
|
499
|
+
cohort: "launch",
|
|
500
|
+
key: "content.users",
|
|
501
|
+
name: "Space users",
|
|
502
|
+
description: "Exposes a Space's own WordPress users — list, read, create and update — as zero/wp/users/* Abilities, " +
|
|
503
|
+
"under WordPress's capability rules. It adds no user store: a Space user is the durable WordPress " +
|
|
504
|
+
"principal for an (issuer, subject) authority, and roles stay projected from Grants.",
|
|
505
|
+
stage: "internal",
|
|
506
|
+
// The Space's Users page is the surface, and this key gates it in both
|
|
507
|
+
// places that matter: the dashboard row, and the editor launch that opens
|
|
508
|
+
// the screen. Off by default while internal, opened per team, exactly as
|
|
509
|
+
// content.managed is — the two are turned on together.
|
|
510
|
+
surface: true,
|
|
511
|
+
defaultEnabled: false,
|
|
512
|
+
runtime: {
|
|
513
|
+
enabledInDevelopment: true,
|
|
514
|
+
enabledForA8c: true,
|
|
515
|
+
planDefaults: {},
|
|
516
|
+
},
|
|
517
|
+
docs: {
|
|
518
|
+
channel: "handbook",
|
|
519
|
+
slug: "/features/content",
|
|
520
|
+
feedbackUrl: null,
|
|
521
|
+
},
|
|
522
|
+
owner: "team:runtime",
|
|
523
|
+
// The Abilities register on the Space's WordPress whether or not content
|
|
524
|
+
// is managed. Every Space has that runtime, so it is not a feature dependency.
|
|
525
|
+
requires: [],
|
|
526
|
+
lifecycleAdoptedAt: "2026-08-29",
|
|
527
|
+
reviewAfter: "2026-09-26",
|
|
528
|
+
removeAfter: "2026-11-01",
|
|
529
|
+
gaAt: null,
|
|
530
|
+
downRamp: {
|
|
531
|
+
code: "space_users_stop",
|
|
532
|
+
summary: "Stop registering the zero/wp/users/* Abilities, which denies every user read and write through them. " +
|
|
533
|
+
"WordPress user rows, their Space membership and the durable principal lane that keeps sign-in working " +
|
|
534
|
+
"are untouched.",
|
|
535
|
+
},
|
|
536
|
+
},
|
|
506
537
|
{
|
|
507
538
|
// Partner plan-catalog entitlement dial: a partner plan that grants this key
|
|
508
539
|
// lets its principals' spaces compile `_pages/*.html` full-page takeovers.
|
|
@@ -529,6 +560,17 @@ const featureEntries = Object.freeze([
|
|
|
529
560
|
planDefaults: {},
|
|
530
561
|
},
|
|
531
562
|
},
|
|
563
|
+
{
|
|
564
|
+
key: "connectors",
|
|
565
|
+
name: "Connectors",
|
|
566
|
+
description: "Team-scoped connectors: register tool sources, connect accounts, decide policy, and run tools from agents, the CLI, MCP, and the dashboard.",
|
|
567
|
+
defaultEnabled: true,
|
|
568
|
+
runtime: {
|
|
569
|
+
enabledInDevelopment: true,
|
|
570
|
+
enabledForA8c: true,
|
|
571
|
+
planDefaults: {},
|
|
572
|
+
},
|
|
573
|
+
},
|
|
532
574
|
]);
|
|
533
575
|
function isLifecycleFeatureEntry(entry) {
|
|
534
576
|
return "cohort" in entry;
|