@spacefast/common 0.0.13 → 0.0.17
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/client-registry.d.ts +22 -0
- package/dist/agents/client-registry.js +41 -0
- package/dist/agents/connect-targets.d.ts +51 -6
- package/dist/agents/connect-targets.js +93 -28
- package/dist/brand.d.ts +0 -11
- package/dist/brand.js +0 -20
- package/dist/config/domains.d.ts +15 -6
- package/dist/config/domains.js +24 -10
- package/dist/config/postgres-budget.d.ts +3 -0
- package/dist/config/postgres-budget.js +6 -1
- package/dist/config/postgres-budget.json +2 -1
- package/dist/contracts/abuse.js +1 -1
- package/dist/contracts/access.d.ts +149 -44
- package/dist/contracts/access.js +94 -8
- package/dist/contracts/activity.js +5 -1
- package/dist/contracts/api-keys.js +9 -9
- package/dist/contracts/archives.js +11 -11
- package/dist/contracts/beta.js +1 -1
- package/dist/contracts/builds.js +14 -14
- package/dist/contracts/channels.js +2 -2
- package/dist/contracts/comments.d.ts +86 -15
- package/dist/contracts/comments.js +116 -20
- package/dist/contracts/common.d.ts +12 -12
- package/dist/contracts/common.js +33 -30
- package/dist/contracts/continuation.js +5 -5
- package/dist/contracts/data-source-routes.js +1 -1
- package/dist/contracts/device-auth.d.ts +6 -6
- package/dist/contracts/device-auth.js +12 -12
- package/dist/contracts/docs.d.ts +10 -10
- package/dist/contracts/domains.js +39 -33
- package/dist/contracts/enums.d.ts +2 -10
- package/dist/contracts/enums.js +0 -2
- package/dist/contracts/error-code-meta.d.ts +116 -47
- package/dist/contracts/error-code-meta.js +37 -16
- package/dist/contracts/error-codes.d.ts +7 -4
- package/dist/contracts/error-codes.js +46 -21
- package/dist/contracts/events.d.ts +10 -3
- package/dist/contracts/events.js +33 -5
- package/dist/contracts/execution.d.ts +26 -0
- package/dist/contracts/execution.js +21 -0
- package/dist/contracts/feature-lifecycle.d.ts +21 -24
- package/dist/contracts/feature-lifecycle.js +28 -26
- package/dist/contracts/features.js +4 -4
- package/dist/contracts/functions.d.ts +8 -140
- package/dist/contracts/functions.js +9 -19
- package/dist/contracts/git.d.ts +1 -1
- package/dist/contracts/grants.d.ts +96 -79
- package/dist/contracts/grants.js +130 -43
- package/dist/contracts/ids.d.ts +2 -2
- package/dist/contracts/ids.js +2 -4
- package/dist/contracts/internal.js +2 -2
- package/dist/contracts/mcp.d.ts +17 -556
- package/dist/contracts/mcp.js +9 -103
- package/dist/contracts/me.js +3 -4
- package/dist/contracts/notifications.d.ts +108 -0
- package/dist/contracts/notifications.js +54 -0
- package/dist/contracts/oauth-resources.d.ts +18 -1
- package/dist/contracts/oauth-resources.js +22 -2
- package/dist/contracts/operations.d.ts +2 -50
- package/dist/contracts/operations.js +0 -19
- package/dist/contracts/pages.d.ts +8 -4
- package/dist/contracts/pages.js +16 -3
- package/dist/contracts/platform.js +10 -8
- package/dist/contracts/problem-document.d.ts +14 -0
- package/dist/contracts/problem-document.js +35 -0
- package/dist/contracts/push-new.d.ts +21 -6
- package/dist/contracts/push-new.js +3 -7
- package/dist/contracts/resources.d.ts +8 -7
- package/dist/contracts/resources.js +9 -6
- package/dist/contracts/runtime-api.d.ts +162 -92
- package/dist/contracts/runtime-api.js +99 -27
- package/dist/contracts/runtime-app.d.ts +41 -11
- package/dist/contracts/runtime-app.js +22 -1
- package/dist/contracts/runtime-db.d.ts +424 -0
- package/dist/contracts/runtime-db.js +108 -0
- package/dist/contracts/runtime-storage.d.ts +120 -0
- package/dist/contracts/runtime-storage.js +40 -0
- package/dist/contracts/sf-config-v1.d.ts +49 -1
- package/dist/contracts/sf-config-v1.js +2 -2
- package/dist/contracts/sites.d.ts +1 -0
- package/dist/contracts/sites.js +20 -12
- package/dist/contracts/space-config.d.ts +62 -22
- package/dist/contracts/space-config.js +173 -47
- package/dist/contracts/spaces.d.ts +79 -45
- package/dist/contracts/spaces.js +66 -50
- package/dist/contracts/superadmin-spaces.d.ts +13 -2
- package/dist/contracts/superadmin-spaces.js +15 -0
- package/dist/contracts/superadmin-tenants.js +4 -4
- package/dist/contracts/superadmin.d.ts +4 -0
- package/dist/contracts/superadmin.js +14 -1
- package/dist/contracts/tags.d.ts +17 -17
- package/dist/contracts/tags.js +1 -1
- package/dist/contracts/teams.js +25 -16
- package/dist/contracts/theme-json.js +1 -1
- package/dist/contracts/transfers.js +4 -4
- package/dist/contracts/variables.js +3 -3
- package/dist/contracts/zero.d.ts +204 -338
- package/dist/contracts/zero.js +94 -98
- package/dist/dashboard-paths/index.d.ts +16 -1
- package/dist/dashboard-paths/index.js +18 -0
- package/dist/docs/agent-handoff-document.d.ts +2 -2
- package/dist/docs/agent-handoff-document.js +8 -7
- package/dist/docs/agent-prose.d.ts +22 -3
- package/dist/docs/agent-prose.js +221 -51
- package/dist/docs/agent-setup.d.ts +13 -10
- package/dist/docs/agent-setup.js +279 -53
- package/dist/docs/agent-solutions.d.ts +6 -6
- package/dist/docs/agent-solutions.js +23 -21
- package/dist/docs/catalog.d.ts +29 -74
- package/dist/docs/catalog.js +65 -92
- package/dist/docs/error-docs.js +293 -221
- package/dist/docs/skill-distribution.d.ts +2 -0
- package/dist/docs/skill-distribution.js +7 -4
- package/dist/docs/skills.d.ts +546 -0
- package/dist/docs/skills.js +340 -0
- package/dist/utils/browser-credential.d.ts +19 -0
- package/dist/utils/browser-credential.js +62 -0
- package/dist/utils/comment-avatars.d.ts +7 -0
- package/dist/utils/comment-avatars.js +42 -0
- package/dist/utils/content-type.d.ts +3 -3
- package/dist/utils/content-type.js +38 -61
- package/dist/utils/domain-diagnostics.d.ts +5 -5
- package/dist/utils/domain-diagnostics.js +21 -10
- package/dist/utils/local-space-state.d.ts +78 -4
- package/dist/utils/local-space-state.js +383 -82
- package/dist/utils/one-shot-replay.d.ts +14 -0
- package/dist/utils/one-shot-replay.js +21 -0
- package/dist/utils/page-preview.d.ts +7 -0
- package/dist/utils/page-preview.js +9 -0
- package/dist/utils/pages.d.ts +2 -11
- package/dist/utils/pages.js +58 -14
- package/dist/utils/publish-form-data.d.ts +22 -0
- package/dist/utils/publish-form-data.js +26 -0
- package/dist/utils/publish-policy.js +20 -4
- package/dist/utils/query-keys.d.ts +7 -4
- package/dist/utils/query-keys.js +13 -4
- package/dist/utils/runtime-paths.d.ts +3 -0
- package/dist/utils/runtime-paths.js +7 -0
- package/dist/utils/secure-local-file.d.ts +73 -0
- package/dist/utils/secure-local-file.js +1373 -0
- package/dist/utils/space-config.d.ts +13 -4
- package/dist/utils/space-config.js +123 -15
- package/dist/utils/storage-policy.d.ts +20 -0
- package/dist/utils/storage-policy.fixtures.json +174 -0
- package/dist/utils/storage-policy.js +193 -0
- package/dist/utils/upload-session.d.ts +12 -1
- package/dist/utils/upload-session.js +37 -2
- package/dist/utils/version-file-browser.d.ts +13 -0
- package/dist/utils/version-file-browser.js +59 -0
- package/package.json +19 -1
- package/dist/contracts/mounts.d.ts +0 -142
- package/dist/contracts/mounts.js +0 -56
- package/dist/utils/asset-fingerprint.d.ts +0 -64
- package/dist/utils/asset-fingerprint.js +0 -620
|
@@ -103,9 +103,9 @@ export const analyticsQuerySchema = z.object({
|
|
|
103
103
|
window: z
|
|
104
104
|
.enum(["48h", "7d", "30d", "custom"])
|
|
105
105
|
.optional()
|
|
106
|
-
.describe('Analytics summary window
|
|
107
|
-
since: z.string().datetime().optional().describe("
|
|
108
|
-
until: z.string().datetime().optional().describe("
|
|
106
|
+
.describe('Analytics summary window. Defaults to "7d". "custom" requires since/until.'),
|
|
107
|
+
since: z.string().datetime().optional().describe("Start of the custom analytics window."),
|
|
108
|
+
until: z.string().datetime().optional().describe("End of the custom analytics window."),
|
|
109
109
|
});
|
|
110
110
|
// Served by `GET /v1/spaces/{spaceId}/analytics`: traffic summary over the
|
|
111
111
|
// requested window, read from Spacefast's own per-space rollups (ingested on
|
|
@@ -113,7 +113,7 @@ export const analyticsQuerySchema = z.object({
|
|
|
113
113
|
// Counts cover main hostnames only: default, custom-domain, and channel.
|
|
114
114
|
// Immutable version-URL traffic is ingested but never surfaced here.
|
|
115
115
|
export const analyticsResponseSchema = z.object({
|
|
116
|
-
spaceId: z.string().describe("
|
|
116
|
+
spaceId: z.string().describe("The space id the traffic was aggregated for."),
|
|
117
117
|
window: z.enum(["48h", "7d", "30d", "custom"]).describe("Resolved summary window."),
|
|
118
118
|
since: z.string().describe("Resolved window start (ISO 8601), after retention clamping."),
|
|
119
119
|
until: z.string().describe("Resolved window end (ISO 8601)."),
|
|
@@ -121,15 +121,17 @@ export const analyticsResponseSchema = z.object({
|
|
|
121
121
|
dataAsOf: z
|
|
122
122
|
.string()
|
|
123
123
|
.nullable()
|
|
124
|
-
.describe("End of the last fully-ingested hour; null
|
|
125
|
-
refreshing: z
|
|
124
|
+
.describe("End of the last fully-ingested hour; null until the first ingest starts."),
|
|
125
|
+
refreshing: z
|
|
126
|
+
.boolean()
|
|
127
|
+
.describe("Whether an ingest run is active or the server just triggered one."),
|
|
126
128
|
views: z
|
|
127
129
|
.number()
|
|
128
130
|
.describe("Successful non-crawler requests (status < 400, assets included) summed across main hostnames over the window."),
|
|
129
131
|
visitors: z
|
|
130
132
|
.number()
|
|
131
133
|
.nullable()
|
|
132
|
-
.describe("Unique-visitor estimate.
|
|
134
|
+
.describe("Unique-visitor estimate. Always null because per-hostname unique-visitor data is not yet available from the hosting provider."),
|
|
133
135
|
bandwidthBytes: z.number().describe("Total response bytes in the window."),
|
|
134
136
|
visitorsByHost: z
|
|
135
137
|
.array(z.object({
|
|
@@ -140,7 +142,7 @@ export const analyticsResponseSchema = z.object({
|
|
|
140
142
|
views: z.number(),
|
|
141
143
|
})),
|
|
142
144
|
}))
|
|
143
|
-
.describe("Per-hostname daily visitor estimates.
|
|
145
|
+
.describe("Per-hostname daily visitor estimates. Always empty because per-hostname unique-visitor data is not yet available from the hosting provider."),
|
|
144
146
|
topPaths: z
|
|
145
147
|
.array(z.object({ path: z.string(), views: z.number() }))
|
|
146
148
|
.describe("Most-viewed paths, capped at 10."),
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface ProblemDocument {
|
|
2
|
+
code: string | undefined;
|
|
3
|
+
detail: string | undefined;
|
|
4
|
+
type: string | undefined;
|
|
5
|
+
title: string | undefined;
|
|
6
|
+
pointer: string | undefined;
|
|
7
|
+
/** Raw, unnarrowed: each caller decides what shape it accepts. */
|
|
8
|
+
details: unknown;
|
|
9
|
+
suggestions: string[];
|
|
10
|
+
next: string[];
|
|
11
|
+
requestId: string | undefined;
|
|
12
|
+
}
|
|
13
|
+
/** Returns undefined when the payload cannot be a problem document at all. */
|
|
14
|
+
export declare function parseProblemDocument(payload: unknown): ProblemDocument | undefined;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// Reader for the RFC 9457 problem document every 4xx/5xx response carries, so the
|
|
2
|
+
// client surfaces (CLI, MCP, SDK) share one definition of which members exist and
|
|
3
|
+
// which values are trusted. Callers keep their own entry guards, message fallbacks
|
|
4
|
+
// and public field names — this only extracts the wire members.
|
|
5
|
+
/** Returns undefined when the payload cannot be a problem document at all. */
|
|
6
|
+
export function parseProblemDocument(payload) {
|
|
7
|
+
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
8
|
+
return undefined;
|
|
9
|
+
}
|
|
10
|
+
const problem = payload;
|
|
11
|
+
if (!("code" in problem) && !("detail" in problem)) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
const stringField = (name) => {
|
|
15
|
+
const value = problem[name];
|
|
16
|
+
return typeof value === "string" ? value : undefined;
|
|
17
|
+
};
|
|
18
|
+
const stringArray = (name) => {
|
|
19
|
+
const value = problem[name];
|
|
20
|
+
return Array.isArray(value)
|
|
21
|
+
? value.filter((entry) => typeof entry === "string")
|
|
22
|
+
: [];
|
|
23
|
+
};
|
|
24
|
+
return {
|
|
25
|
+
code: stringField("code"),
|
|
26
|
+
detail: stringField("detail"),
|
|
27
|
+
type: stringField("type"),
|
|
28
|
+
title: stringField("title"),
|
|
29
|
+
pointer: stringField("pointer"),
|
|
30
|
+
details: problem.details,
|
|
31
|
+
suggestions: stringArray("suggestions"),
|
|
32
|
+
next: stringArray("next"),
|
|
33
|
+
requestId: stringField("requestId"),
|
|
34
|
+
};
|
|
35
|
+
}
|
|
@@ -50,14 +50,19 @@ export declare const PushNewSessionSchema: z.ZodObject<{
|
|
|
50
50
|
reusedVersionId: z.ZodNullable<z.ZodString>;
|
|
51
51
|
webhookDeliveryId: z.ZodNullable<z.ZodString>;
|
|
52
52
|
liveUrl: z.ZodString;
|
|
53
|
-
open: z.ZodNullable<z.ZodObject<{
|
|
53
|
+
open: z.ZodNullable<z.ZodUnion<readonly [z.ZodObject<{
|
|
54
|
+
url: z.ZodString;
|
|
55
|
+
expiresAt: z.ZodNullable<z.ZodString>;
|
|
56
|
+
kind: z.ZodLiteral<"link">;
|
|
57
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
54
58
|
url: z.ZodString;
|
|
55
59
|
expiresAt: z.ZodString;
|
|
56
60
|
kind: z.ZodEnum<{
|
|
57
61
|
management: "management";
|
|
62
|
+
person: "person";
|
|
58
63
|
claim_preview: "claim_preview";
|
|
59
64
|
}>;
|
|
60
|
-
}, z.core.$strip>>;
|
|
65
|
+
}, z.core.$strip>]>>;
|
|
61
66
|
sessionUrl: z.ZodString;
|
|
62
67
|
logsUrl: z.ZodNullable<z.ZodString>;
|
|
63
68
|
claimUrl: z.ZodString;
|
|
@@ -103,14 +108,19 @@ export declare const PushNewCreateSessionResponseSchema: z.ZodObject<{
|
|
|
103
108
|
reusedVersionId: z.ZodNullable<z.ZodString>;
|
|
104
109
|
webhookDeliveryId: z.ZodNullable<z.ZodString>;
|
|
105
110
|
liveUrl: z.ZodString;
|
|
106
|
-
open: z.ZodNullable<z.ZodObject<{
|
|
111
|
+
open: z.ZodNullable<z.ZodUnion<readonly [z.ZodObject<{
|
|
112
|
+
url: z.ZodString;
|
|
113
|
+
expiresAt: z.ZodNullable<z.ZodString>;
|
|
114
|
+
kind: z.ZodLiteral<"link">;
|
|
115
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
107
116
|
url: z.ZodString;
|
|
108
117
|
expiresAt: z.ZodString;
|
|
109
118
|
kind: z.ZodEnum<{
|
|
110
119
|
management: "management";
|
|
120
|
+
person: "person";
|
|
111
121
|
claim_preview: "claim_preview";
|
|
112
122
|
}>;
|
|
113
|
-
}, z.core.$strip>>;
|
|
123
|
+
}, z.core.$strip>]>>;
|
|
114
124
|
sessionUrl: z.ZodString;
|
|
115
125
|
logsUrl: z.ZodNullable<z.ZodString>;
|
|
116
126
|
claimUrl: z.ZodString;
|
|
@@ -124,14 +134,19 @@ export declare const PushNewCreateSessionResponseSchema: z.ZodObject<{
|
|
|
124
134
|
}, z.core.$strip>;
|
|
125
135
|
export declare const PushNewStatusResponseSchema: z.ZodObject<{
|
|
126
136
|
id: z.ZodString;
|
|
127
|
-
open: z.ZodNullable<z.ZodObject<{
|
|
137
|
+
open: z.ZodNullable<z.ZodUnion<readonly [z.ZodObject<{
|
|
138
|
+
url: z.ZodString;
|
|
139
|
+
expiresAt: z.ZodNullable<z.ZodString>;
|
|
140
|
+
kind: z.ZodLiteral<"link">;
|
|
141
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
128
142
|
url: z.ZodString;
|
|
129
143
|
expiresAt: z.ZodString;
|
|
130
144
|
kind: z.ZodEnum<{
|
|
131
145
|
management: "management";
|
|
146
|
+
person: "person";
|
|
132
147
|
claim_preview: "claim_preview";
|
|
133
148
|
}>;
|
|
134
|
-
}, z.core.$strip>>;
|
|
149
|
+
}, z.core.$strip>]>>;
|
|
135
150
|
status: z.ZodEnum<{
|
|
136
151
|
live: "live";
|
|
137
152
|
failed: "failed";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { privateOpenSchema } from "./access.js";
|
|
2
3
|
export const pushNewSessionStatusSchema = z.enum([
|
|
3
4
|
"waiting_for_push",
|
|
4
5
|
"waiting_for_upload",
|
|
@@ -31,14 +32,9 @@ export const PushNewSessionSchema = z.object({
|
|
|
31
32
|
reusedVersionId: z.string().nullable(),
|
|
32
33
|
webhookDeliveryId: z.string().nullable(),
|
|
33
34
|
liveUrl: z.string().url(),
|
|
34
|
-
open:
|
|
35
|
-
.object({
|
|
36
|
-
url: z.string().url(),
|
|
37
|
-
expiresAt: z.string().datetime(),
|
|
38
|
-
kind: z.enum(["management", "claim_preview"]),
|
|
39
|
-
})
|
|
35
|
+
open: privateOpenSchema
|
|
40
36
|
.nullable()
|
|
41
|
-
.describe("
|
|
37
|
+
.describe("Reusable Open link for the private space at live `/`. A null expiry means it remains valid until revoked."),
|
|
42
38
|
sessionUrl: z.string().url(),
|
|
43
39
|
logsUrl: z.string().url().nullable(),
|
|
44
40
|
claimUrl: z.string().url(),
|
|
@@ -105,6 +105,7 @@ export declare const SpaceSchema: z.ZodObject<{
|
|
|
105
105
|
always_hot: "always_hot";
|
|
106
106
|
}>;
|
|
107
107
|
moving: z.ZodBoolean;
|
|
108
|
+
hasRuntime: z.ZodBoolean;
|
|
108
109
|
channels: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
109
110
|
versionId: z.ZodString;
|
|
110
111
|
updatedAt: z.ZodString;
|
|
@@ -187,7 +188,7 @@ export declare const SpaceSchema: z.ZodObject<{
|
|
|
187
188
|
bodyEnd: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
188
189
|
noscript: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
189
190
|
}, z.core.$strip>>;
|
|
190
|
-
dataSources: z.ZodOptional<z.
|
|
191
|
+
dataSources: z.ZodOptional<z.ZodPipe<z.ZodUnknown, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
191
192
|
kind: z.ZodLiteral<"wordpress">;
|
|
192
193
|
url: z.ZodString;
|
|
193
194
|
}, z.core.$strict>>>>;
|
|
@@ -241,10 +242,10 @@ export declare const SpaceSchema: z.ZodObject<{
|
|
|
241
242
|
}, z.core.$strip>;
|
|
242
243
|
export declare const PublishSourceSchema: z.ZodObject<{
|
|
243
244
|
kind: z.ZodEnum<{
|
|
244
|
-
api: "api";
|
|
245
|
-
dashboard: "dashboard";
|
|
246
245
|
build: "build";
|
|
247
246
|
agent: "agent";
|
|
247
|
+
api: "api";
|
|
248
|
+
dashboard: "dashboard";
|
|
248
249
|
direct_upload: "direct_upload";
|
|
249
250
|
cli: "cli";
|
|
250
251
|
git: "git";
|
|
@@ -278,10 +279,10 @@ export declare const VersionSchema: z.ZodObject<{
|
|
|
278
279
|
spaceId: z.ZodString;
|
|
279
280
|
source: z.ZodNullable<z.ZodObject<{
|
|
280
281
|
kind: z.ZodEnum<{
|
|
281
|
-
api: "api";
|
|
282
|
-
dashboard: "dashboard";
|
|
283
282
|
build: "build";
|
|
284
283
|
agent: "agent";
|
|
284
|
+
api: "api";
|
|
285
|
+
dashboard: "dashboard";
|
|
285
286
|
direct_upload: "direct_upload";
|
|
286
287
|
cli: "cli";
|
|
287
288
|
git: "git";
|
|
@@ -420,7 +421,7 @@ export declare const VersionSchema: z.ZodObject<{
|
|
|
420
421
|
bodyEnd: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
421
422
|
noscript: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
422
423
|
}, z.core.$strip>>;
|
|
423
|
-
dataSources: z.ZodOptional<z.
|
|
424
|
+
dataSources: z.ZodOptional<z.ZodPipe<z.ZodUnknown, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
424
425
|
kind: z.ZodLiteral<"wordpress">;
|
|
425
426
|
url: z.ZodString;
|
|
426
427
|
}, z.core.$strict>>>>;
|
|
@@ -470,7 +471,7 @@ export declare const VersionSchema: z.ZodObject<{
|
|
|
470
471
|
headersRuleCount: z.ZodNumber;
|
|
471
472
|
redirectsRuleCount: z.ZodNumber;
|
|
472
473
|
proxyRouteCount: z.ZodNumber;
|
|
473
|
-
|
|
474
|
+
runtimeCodeDetected: z.ZodBoolean;
|
|
474
475
|
buildLog: z.ZodNullable<z.ZodString>;
|
|
475
476
|
diagnostics: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
476
477
|
code: z.ZodString;
|
|
@@ -63,7 +63,7 @@ export const SpaceSchema = z.object({
|
|
|
63
63
|
defaultHostname: z
|
|
64
64
|
.string()
|
|
65
65
|
.describe("Current Spacefast-owned managed hostname under view.fast. Renaming the space changes this hostname; previously managed hostnames temporarily redirect to the current one."),
|
|
66
|
-
publicName: z.string().describe("Public
|
|
66
|
+
publicName: z.string().describe("Public space label used in the managed view.fast hostname."),
|
|
67
67
|
liveUrl: z
|
|
68
68
|
.string()
|
|
69
69
|
.describe("Live space URL: the primary bound domain when one exists, else the default hostname. Always present on non-deleted spaces."),
|
|
@@ -86,17 +86,20 @@ export const SpaceSchema = z.object({
|
|
|
86
86
|
burstable: z
|
|
87
87
|
.boolean()
|
|
88
88
|
.nullable()
|
|
89
|
-
.describe("Whether a dedicated placement
|
|
89
|
+
.describe("Whether a dedicated placement can burst provider PHP workers."),
|
|
90
90
|
archivedBytes: z
|
|
91
91
|
.number()
|
|
92
92
|
.int()
|
|
93
93
|
.nonnegative()
|
|
94
94
|
.describe("Bytes currently archived out of the hot runtime store."),
|
|
95
95
|
tierPolicy: z.enum(["auto", "always_hot"]).describe("Storage tiering policy for this space."),
|
|
96
|
-
moving: z.boolean().describe("
|
|
96
|
+
moving: z.boolean().describe("Whether a placement or transfer move is queued or running."),
|
|
97
|
+
hasRuntime: z
|
|
98
|
+
.boolean()
|
|
99
|
+
.describe("Whether this space's live version runs code and therefore has a Runtime surface. Feature eligibility alone does not make the surface visible."),
|
|
97
100
|
channels: z
|
|
98
101
|
.record(z.string(), ChannelPointerSchema)
|
|
99
|
-
.describe('Channel pointers by name
|
|
102
|
+
.describe('Channel pointers by name. "live" is present after a version is promoted.'),
|
|
100
103
|
config: spaceConfigSchema
|
|
101
104
|
.nullable()
|
|
102
105
|
.describe("Stored SpaceConfig overlay applied over the live version's sf.jsonc; null when nothing is overridden."),
|
|
@@ -129,7 +132,7 @@ export const PublishSourceSchema = z.object({
|
|
|
129
132
|
dirty: z
|
|
130
133
|
.boolean()
|
|
131
134
|
.optional()
|
|
132
|
-
.describe("
|
|
135
|
+
.describe("Whether the working tree had uncommitted changes at publish time."),
|
|
133
136
|
metadata: z
|
|
134
137
|
.record(z.string(), z.string())
|
|
135
138
|
.optional()
|
|
@@ -193,7 +196,7 @@ export const VersionSchema = z.object({
|
|
|
193
196
|
headersRuleCount: z.number().int(),
|
|
194
197
|
redirectsRuleCount: z.number().int(),
|
|
195
198
|
proxyRouteCount: z.number().int(),
|
|
196
|
-
|
|
199
|
+
runtimeCodeDetected: z.boolean(),
|
|
197
200
|
buildLog: z.string().nullable(),
|
|
198
201
|
diagnostics: z.array(DiagnosticSchema).default([]),
|
|
199
202
|
createdAt: z.string().datetime(),
|