@vm0/runner 3.11.2 → 3.11.3
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/index.js +521 -406
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -2285,6 +2285,20 @@ var VsockClient = class {
|
|
|
2285
2285
|
}
|
|
2286
2286
|
this.cachedExits.clear();
|
|
2287
2287
|
}
|
|
2288
|
+
/**
|
|
2289
|
+
* Send raw bytes directly to the socket (for testing only)
|
|
2290
|
+
*
|
|
2291
|
+
* This allows tests to send malformed messages to verify the agent's
|
|
2292
|
+
* protocol error handling (e.g., oversized messages).
|
|
2293
|
+
*
|
|
2294
|
+
* @internal This method is only for testing purposes
|
|
2295
|
+
*/
|
|
2296
|
+
sendRawForTesting(data) {
|
|
2297
|
+
if (!this.connected || !this.socket) {
|
|
2298
|
+
throw new Error("Not connected - call waitForGuestConnection() first");
|
|
2299
|
+
}
|
|
2300
|
+
this.socket.write(data);
|
|
2301
|
+
}
|
|
2288
2302
|
};
|
|
2289
2303
|
|
|
2290
2304
|
// ../../packages/core/src/contracts/base.ts
|
|
@@ -7705,58 +7719,159 @@ var credentialsByNameContract = c10.router({
|
|
|
7705
7719
|
}
|
|
7706
7720
|
});
|
|
7707
7721
|
|
|
7708
|
-
// ../../packages/core/src/contracts/
|
|
7722
|
+
// ../../packages/core/src/contracts/secrets.ts
|
|
7709
7723
|
import { z as z18 } from "zod";
|
|
7710
7724
|
var c11 = initContract();
|
|
7711
|
-
var
|
|
7725
|
+
var secretNameSchema = z18.string().min(1, "Secret name is required").max(255, "Secret name must be at most 255 characters").regex(
|
|
7726
|
+
/^[A-Z][A-Z0-9_]*$/,
|
|
7727
|
+
"Secret name must contain only uppercase letters, numbers, and underscores, and must start with a letter (e.g., MY_API_KEY)"
|
|
7728
|
+
);
|
|
7729
|
+
var secretTypeSchema = z18.enum(["user", "model-provider"]);
|
|
7730
|
+
var secretResponseSchema = z18.object({
|
|
7731
|
+
id: z18.string().uuid(),
|
|
7732
|
+
name: z18.string(),
|
|
7733
|
+
description: z18.string().nullable(),
|
|
7734
|
+
type: secretTypeSchema,
|
|
7735
|
+
createdAt: z18.string(),
|
|
7736
|
+
updatedAt: z18.string()
|
|
7737
|
+
});
|
|
7738
|
+
var secretListResponseSchema = z18.object({
|
|
7739
|
+
secrets: z18.array(secretResponseSchema)
|
|
7740
|
+
});
|
|
7741
|
+
var setSecretRequestSchema = z18.object({
|
|
7742
|
+
name: secretNameSchema,
|
|
7743
|
+
value: z18.string().min(1, "Secret value is required"),
|
|
7744
|
+
description: z18.string().max(1e3).optional()
|
|
7745
|
+
});
|
|
7746
|
+
var secretsMainContract = c11.router({
|
|
7747
|
+
/**
|
|
7748
|
+
* GET /api/secrets
|
|
7749
|
+
* List all secrets for the current user's scope (metadata only)
|
|
7750
|
+
*/
|
|
7751
|
+
list: {
|
|
7752
|
+
method: "GET",
|
|
7753
|
+
path: "/api/secrets",
|
|
7754
|
+
headers: authHeadersSchema,
|
|
7755
|
+
responses: {
|
|
7756
|
+
200: secretListResponseSchema,
|
|
7757
|
+
401: apiErrorSchema,
|
|
7758
|
+
500: apiErrorSchema
|
|
7759
|
+
},
|
|
7760
|
+
summary: "List all secrets (metadata only)"
|
|
7761
|
+
},
|
|
7762
|
+
/**
|
|
7763
|
+
* PUT /api/secrets
|
|
7764
|
+
* Create or update a secret
|
|
7765
|
+
*/
|
|
7766
|
+
set: {
|
|
7767
|
+
method: "PUT",
|
|
7768
|
+
path: "/api/secrets",
|
|
7769
|
+
headers: authHeadersSchema,
|
|
7770
|
+
body: setSecretRequestSchema,
|
|
7771
|
+
responses: {
|
|
7772
|
+
200: secretResponseSchema,
|
|
7773
|
+
201: secretResponseSchema,
|
|
7774
|
+
400: apiErrorSchema,
|
|
7775
|
+
401: apiErrorSchema,
|
|
7776
|
+
500: apiErrorSchema
|
|
7777
|
+
},
|
|
7778
|
+
summary: "Create or update a secret"
|
|
7779
|
+
}
|
|
7780
|
+
});
|
|
7781
|
+
var secretsByNameContract = c11.router({
|
|
7782
|
+
/**
|
|
7783
|
+
* GET /api/secrets/:name
|
|
7784
|
+
* Get a secret by name (metadata only)
|
|
7785
|
+
*/
|
|
7786
|
+
get: {
|
|
7787
|
+
method: "GET",
|
|
7788
|
+
path: "/api/secrets/:name",
|
|
7789
|
+
headers: authHeadersSchema,
|
|
7790
|
+
pathParams: z18.object({
|
|
7791
|
+
name: secretNameSchema
|
|
7792
|
+
}),
|
|
7793
|
+
responses: {
|
|
7794
|
+
200: secretResponseSchema,
|
|
7795
|
+
401: apiErrorSchema,
|
|
7796
|
+
404: apiErrorSchema,
|
|
7797
|
+
500: apiErrorSchema
|
|
7798
|
+
},
|
|
7799
|
+
summary: "Get secret metadata by name"
|
|
7800
|
+
},
|
|
7801
|
+
/**
|
|
7802
|
+
* DELETE /api/secrets/:name
|
|
7803
|
+
* Delete a secret by name
|
|
7804
|
+
*/
|
|
7805
|
+
delete: {
|
|
7806
|
+
method: "DELETE",
|
|
7807
|
+
path: "/api/secrets/:name",
|
|
7808
|
+
headers: authHeadersSchema,
|
|
7809
|
+
pathParams: z18.object({
|
|
7810
|
+
name: secretNameSchema
|
|
7811
|
+
}),
|
|
7812
|
+
responses: {
|
|
7813
|
+
204: c11.noBody(),
|
|
7814
|
+
401: apiErrorSchema,
|
|
7815
|
+
404: apiErrorSchema,
|
|
7816
|
+
500: apiErrorSchema
|
|
7817
|
+
},
|
|
7818
|
+
summary: "Delete a secret"
|
|
7819
|
+
}
|
|
7820
|
+
});
|
|
7821
|
+
|
|
7822
|
+
// ../../packages/core/src/contracts/model-providers.ts
|
|
7823
|
+
import { z as z19 } from "zod";
|
|
7824
|
+
var c12 = initContract();
|
|
7825
|
+
var modelProviderTypeSchema = z19.enum([
|
|
7712
7826
|
"claude-code-oauth-token",
|
|
7713
7827
|
"anthropic-api-key",
|
|
7714
7828
|
"openrouter-api-key",
|
|
7715
7829
|
"moonshot-api-key",
|
|
7716
7830
|
"minimax-api-key",
|
|
7717
7831
|
"deepseek-api-key",
|
|
7832
|
+
"zai-api-key",
|
|
7718
7833
|
"aws-bedrock"
|
|
7719
7834
|
]);
|
|
7720
|
-
var modelProviderFrameworkSchema =
|
|
7721
|
-
var modelProviderResponseSchema =
|
|
7722
|
-
id:
|
|
7835
|
+
var modelProviderFrameworkSchema = z19.enum(["claude-code", "codex"]);
|
|
7836
|
+
var modelProviderResponseSchema = z19.object({
|
|
7837
|
+
id: z19.string().uuid(),
|
|
7723
7838
|
type: modelProviderTypeSchema,
|
|
7724
7839
|
framework: modelProviderFrameworkSchema,
|
|
7725
|
-
credentialName:
|
|
7840
|
+
credentialName: z19.string().nullable(),
|
|
7726
7841
|
// Legacy single-credential (deprecated for multi-auth)
|
|
7727
|
-
authMethod:
|
|
7842
|
+
authMethod: z19.string().nullable(),
|
|
7728
7843
|
// For multi-auth providers
|
|
7729
|
-
credentialNames:
|
|
7844
|
+
credentialNames: z19.array(z19.string()).nullable(),
|
|
7730
7845
|
// For multi-auth providers
|
|
7731
|
-
isDefault:
|
|
7732
|
-
selectedModel:
|
|
7733
|
-
createdAt:
|
|
7734
|
-
updatedAt:
|
|
7846
|
+
isDefault: z19.boolean(),
|
|
7847
|
+
selectedModel: z19.string().nullable(),
|
|
7848
|
+
createdAt: z19.string(),
|
|
7849
|
+
updatedAt: z19.string()
|
|
7735
7850
|
});
|
|
7736
|
-
var modelProviderListResponseSchema =
|
|
7737
|
-
modelProviders:
|
|
7851
|
+
var modelProviderListResponseSchema = z19.object({
|
|
7852
|
+
modelProviders: z19.array(modelProviderResponseSchema)
|
|
7738
7853
|
});
|
|
7739
|
-
var upsertModelProviderRequestSchema =
|
|
7854
|
+
var upsertModelProviderRequestSchema = z19.object({
|
|
7740
7855
|
type: modelProviderTypeSchema,
|
|
7741
|
-
credential:
|
|
7856
|
+
credential: z19.string().min(1).optional(),
|
|
7742
7857
|
// Legacy single credential
|
|
7743
|
-
authMethod:
|
|
7858
|
+
authMethod: z19.string().optional(),
|
|
7744
7859
|
// For multi-auth providers
|
|
7745
|
-
credentials:
|
|
7860
|
+
credentials: z19.record(z19.string(), z19.string()).optional(),
|
|
7746
7861
|
// For multi-auth providers
|
|
7747
|
-
convert:
|
|
7748
|
-
selectedModel:
|
|
7862
|
+
convert: z19.boolean().optional(),
|
|
7863
|
+
selectedModel: z19.string().optional()
|
|
7749
7864
|
});
|
|
7750
|
-
var upsertModelProviderResponseSchema =
|
|
7865
|
+
var upsertModelProviderResponseSchema = z19.object({
|
|
7751
7866
|
provider: modelProviderResponseSchema,
|
|
7752
|
-
created:
|
|
7867
|
+
created: z19.boolean()
|
|
7753
7868
|
});
|
|
7754
|
-
var checkCredentialResponseSchema =
|
|
7755
|
-
exists:
|
|
7756
|
-
credentialName:
|
|
7757
|
-
currentType:
|
|
7869
|
+
var checkCredentialResponseSchema = z19.object({
|
|
7870
|
+
exists: z19.boolean(),
|
|
7871
|
+
credentialName: z19.string(),
|
|
7872
|
+
currentType: z19.enum(["user", "model-provider"]).optional()
|
|
7758
7873
|
});
|
|
7759
|
-
var modelProvidersMainContract =
|
|
7874
|
+
var modelProvidersMainContract = c12.router({
|
|
7760
7875
|
list: {
|
|
7761
7876
|
method: "GET",
|
|
7762
7877
|
path: "/api/model-providers",
|
|
@@ -7784,12 +7899,12 @@ var modelProvidersMainContract = c11.router({
|
|
|
7784
7899
|
summary: "Create or update a model provider"
|
|
7785
7900
|
}
|
|
7786
7901
|
});
|
|
7787
|
-
var modelProvidersCheckContract =
|
|
7902
|
+
var modelProvidersCheckContract = c12.router({
|
|
7788
7903
|
check: {
|
|
7789
7904
|
method: "GET",
|
|
7790
7905
|
path: "/api/model-providers/check/:type",
|
|
7791
7906
|
headers: authHeadersSchema,
|
|
7792
|
-
pathParams:
|
|
7907
|
+
pathParams: z19.object({
|
|
7793
7908
|
type: modelProviderTypeSchema
|
|
7794
7909
|
}),
|
|
7795
7910
|
responses: {
|
|
@@ -7800,16 +7915,16 @@ var modelProvidersCheckContract = c11.router({
|
|
|
7800
7915
|
summary: "Check if credential exists for a model provider type"
|
|
7801
7916
|
}
|
|
7802
7917
|
});
|
|
7803
|
-
var modelProvidersByTypeContract =
|
|
7918
|
+
var modelProvidersByTypeContract = c12.router({
|
|
7804
7919
|
delete: {
|
|
7805
7920
|
method: "DELETE",
|
|
7806
7921
|
path: "/api/model-providers/:type",
|
|
7807
7922
|
headers: authHeadersSchema,
|
|
7808
|
-
pathParams:
|
|
7923
|
+
pathParams: z19.object({
|
|
7809
7924
|
type: modelProviderTypeSchema
|
|
7810
7925
|
}),
|
|
7811
7926
|
responses: {
|
|
7812
|
-
204:
|
|
7927
|
+
204: c12.noBody(),
|
|
7813
7928
|
401: apiErrorSchema,
|
|
7814
7929
|
404: apiErrorSchema,
|
|
7815
7930
|
500: apiErrorSchema
|
|
@@ -7817,15 +7932,15 @@ var modelProvidersByTypeContract = c11.router({
|
|
|
7817
7932
|
summary: "Delete a model provider"
|
|
7818
7933
|
}
|
|
7819
7934
|
});
|
|
7820
|
-
var modelProvidersConvertContract =
|
|
7935
|
+
var modelProvidersConvertContract = c12.router({
|
|
7821
7936
|
convert: {
|
|
7822
7937
|
method: "POST",
|
|
7823
7938
|
path: "/api/model-providers/:type/convert",
|
|
7824
7939
|
headers: authHeadersSchema,
|
|
7825
|
-
pathParams:
|
|
7940
|
+
pathParams: z19.object({
|
|
7826
7941
|
type: modelProviderTypeSchema
|
|
7827
7942
|
}),
|
|
7828
|
-
body:
|
|
7943
|
+
body: z19.undefined(),
|
|
7829
7944
|
responses: {
|
|
7830
7945
|
200: modelProviderResponseSchema,
|
|
7831
7946
|
400: apiErrorSchema,
|
|
@@ -7836,15 +7951,15 @@ var modelProvidersConvertContract = c11.router({
|
|
|
7836
7951
|
summary: "Convert existing user credential to model provider"
|
|
7837
7952
|
}
|
|
7838
7953
|
});
|
|
7839
|
-
var modelProvidersSetDefaultContract =
|
|
7954
|
+
var modelProvidersSetDefaultContract = c12.router({
|
|
7840
7955
|
setDefault: {
|
|
7841
7956
|
method: "POST",
|
|
7842
7957
|
path: "/api/model-providers/:type/set-default",
|
|
7843
7958
|
headers: authHeadersSchema,
|
|
7844
|
-
pathParams:
|
|
7959
|
+
pathParams: z19.object({
|
|
7845
7960
|
type: modelProviderTypeSchema
|
|
7846
7961
|
}),
|
|
7847
|
-
body:
|
|
7962
|
+
body: z19.undefined(),
|
|
7848
7963
|
responses: {
|
|
7849
7964
|
200: modelProviderResponseSchema,
|
|
7850
7965
|
401: apiErrorSchema,
|
|
@@ -7854,15 +7969,15 @@ var modelProvidersSetDefaultContract = c11.router({
|
|
|
7854
7969
|
summary: "Set a model provider as default for its framework"
|
|
7855
7970
|
}
|
|
7856
7971
|
});
|
|
7857
|
-
var updateModelRequestSchema =
|
|
7858
|
-
selectedModel:
|
|
7972
|
+
var updateModelRequestSchema = z19.object({
|
|
7973
|
+
selectedModel: z19.string().optional()
|
|
7859
7974
|
});
|
|
7860
|
-
var modelProvidersUpdateModelContract =
|
|
7975
|
+
var modelProvidersUpdateModelContract = c12.router({
|
|
7861
7976
|
updateModel: {
|
|
7862
7977
|
method: "PATCH",
|
|
7863
7978
|
path: "/api/model-providers/:type/model",
|
|
7864
7979
|
headers: authHeadersSchema,
|
|
7865
|
-
pathParams:
|
|
7980
|
+
pathParams: z19.object({
|
|
7866
7981
|
type: modelProviderTypeSchema
|
|
7867
7982
|
}),
|
|
7868
7983
|
body: updateModelRequestSchema,
|
|
@@ -7877,42 +7992,42 @@ var modelProvidersUpdateModelContract = c11.router({
|
|
|
7877
7992
|
});
|
|
7878
7993
|
|
|
7879
7994
|
// ../../packages/core/src/contracts/sessions.ts
|
|
7880
|
-
import { z as
|
|
7881
|
-
var
|
|
7882
|
-
var sessionResponseSchema =
|
|
7883
|
-
id:
|
|
7884
|
-
agentComposeId:
|
|
7885
|
-
agentComposeVersionId:
|
|
7886
|
-
conversationId:
|
|
7887
|
-
artifactName:
|
|
7888
|
-
vars:
|
|
7889
|
-
secretNames:
|
|
7890
|
-
volumeVersions:
|
|
7891
|
-
createdAt:
|
|
7892
|
-
updatedAt:
|
|
7995
|
+
import { z as z20 } from "zod";
|
|
7996
|
+
var c13 = initContract();
|
|
7997
|
+
var sessionResponseSchema = z20.object({
|
|
7998
|
+
id: z20.string(),
|
|
7999
|
+
agentComposeId: z20.string(),
|
|
8000
|
+
agentComposeVersionId: z20.string().nullable(),
|
|
8001
|
+
conversationId: z20.string().nullable(),
|
|
8002
|
+
artifactName: z20.string().nullable(),
|
|
8003
|
+
vars: z20.record(z20.string(), z20.string()).nullable(),
|
|
8004
|
+
secretNames: z20.array(z20.string()).nullable(),
|
|
8005
|
+
volumeVersions: z20.record(z20.string(), z20.string()).nullable(),
|
|
8006
|
+
createdAt: z20.string(),
|
|
8007
|
+
updatedAt: z20.string()
|
|
7893
8008
|
});
|
|
7894
|
-
var agentComposeSnapshotSchema =
|
|
7895
|
-
agentComposeVersionId:
|
|
7896
|
-
vars:
|
|
7897
|
-
secretNames:
|
|
8009
|
+
var agentComposeSnapshotSchema = z20.object({
|
|
8010
|
+
agentComposeVersionId: z20.string(),
|
|
8011
|
+
vars: z20.record(z20.string(), z20.string()).optional(),
|
|
8012
|
+
secretNames: z20.array(z20.string()).optional()
|
|
7898
8013
|
});
|
|
7899
|
-
var artifactSnapshotSchema2 =
|
|
7900
|
-
artifactName:
|
|
7901
|
-
artifactVersion:
|
|
8014
|
+
var artifactSnapshotSchema2 = z20.object({
|
|
8015
|
+
artifactName: z20.string(),
|
|
8016
|
+
artifactVersion: z20.string()
|
|
7902
8017
|
});
|
|
7903
|
-
var volumeVersionsSnapshotSchema2 =
|
|
7904
|
-
versions:
|
|
8018
|
+
var volumeVersionsSnapshotSchema2 = z20.object({
|
|
8019
|
+
versions: z20.record(z20.string(), z20.string())
|
|
7905
8020
|
});
|
|
7906
|
-
var checkpointResponseSchema =
|
|
7907
|
-
id:
|
|
7908
|
-
runId:
|
|
7909
|
-
conversationId:
|
|
8021
|
+
var checkpointResponseSchema = z20.object({
|
|
8022
|
+
id: z20.string(),
|
|
8023
|
+
runId: z20.string(),
|
|
8024
|
+
conversationId: z20.string(),
|
|
7910
8025
|
agentComposeSnapshot: agentComposeSnapshotSchema,
|
|
7911
8026
|
artifactSnapshot: artifactSnapshotSchema2.nullable(),
|
|
7912
8027
|
volumeVersionsSnapshot: volumeVersionsSnapshotSchema2.nullable(),
|
|
7913
|
-
createdAt:
|
|
8028
|
+
createdAt: z20.string()
|
|
7914
8029
|
});
|
|
7915
|
-
var sessionsByIdContract =
|
|
8030
|
+
var sessionsByIdContract = c13.router({
|
|
7916
8031
|
/**
|
|
7917
8032
|
* GET /api/agent/sessions/:id
|
|
7918
8033
|
* Get session by ID
|
|
@@ -7921,8 +8036,8 @@ var sessionsByIdContract = c12.router({
|
|
|
7921
8036
|
method: "GET",
|
|
7922
8037
|
path: "/api/agent/sessions/:id",
|
|
7923
8038
|
headers: authHeadersSchema,
|
|
7924
|
-
pathParams:
|
|
7925
|
-
id:
|
|
8039
|
+
pathParams: z20.object({
|
|
8040
|
+
id: z20.string().min(1, "Session ID is required")
|
|
7926
8041
|
}),
|
|
7927
8042
|
responses: {
|
|
7928
8043
|
200: sessionResponseSchema,
|
|
@@ -7933,7 +8048,7 @@ var sessionsByIdContract = c12.router({
|
|
|
7933
8048
|
summary: "Get session by ID"
|
|
7934
8049
|
}
|
|
7935
8050
|
});
|
|
7936
|
-
var checkpointsByIdContract =
|
|
8051
|
+
var checkpointsByIdContract = c13.router({
|
|
7937
8052
|
/**
|
|
7938
8053
|
* GET /api/agent/checkpoints/:id
|
|
7939
8054
|
* Get checkpoint by ID
|
|
@@ -7942,8 +8057,8 @@ var checkpointsByIdContract = c12.router({
|
|
|
7942
8057
|
method: "GET",
|
|
7943
8058
|
path: "/api/agent/checkpoints/:id",
|
|
7944
8059
|
headers: authHeadersSchema,
|
|
7945
|
-
pathParams:
|
|
7946
|
-
id:
|
|
8060
|
+
pathParams: z20.object({
|
|
8061
|
+
id: z20.string().min(1, "Checkpoint ID is required")
|
|
7947
8062
|
}),
|
|
7948
8063
|
responses: {
|
|
7949
8064
|
200: checkpointResponseSchema,
|
|
@@ -7956,93 +8071,93 @@ var checkpointsByIdContract = c12.router({
|
|
|
7956
8071
|
});
|
|
7957
8072
|
|
|
7958
8073
|
// ../../packages/core/src/contracts/schedules.ts
|
|
7959
|
-
import { z as
|
|
7960
|
-
var
|
|
7961
|
-
var scheduleTriggerSchema =
|
|
7962
|
-
cron:
|
|
7963
|
-
at:
|
|
7964
|
-
timezone:
|
|
8074
|
+
import { z as z21 } from "zod";
|
|
8075
|
+
var c14 = initContract();
|
|
8076
|
+
var scheduleTriggerSchema = z21.object({
|
|
8077
|
+
cron: z21.string().optional(),
|
|
8078
|
+
at: z21.string().optional(),
|
|
8079
|
+
timezone: z21.string().default("UTC")
|
|
7965
8080
|
}).refine((data) => data.cron && !data.at || !data.cron && data.at, {
|
|
7966
8081
|
message: "Exactly one of 'cron' or 'at' must be specified"
|
|
7967
8082
|
});
|
|
7968
|
-
var scheduleRunConfigSchema =
|
|
7969
|
-
agent:
|
|
7970
|
-
prompt:
|
|
7971
|
-
vars:
|
|
7972
|
-
secrets:
|
|
7973
|
-
artifactName:
|
|
7974
|
-
artifactVersion:
|
|
7975
|
-
volumeVersions:
|
|
8083
|
+
var scheduleRunConfigSchema = z21.object({
|
|
8084
|
+
agent: z21.string().min(1, "Agent reference required"),
|
|
8085
|
+
prompt: z21.string().min(1, "Prompt required"),
|
|
8086
|
+
vars: z21.record(z21.string(), z21.string()).optional(),
|
|
8087
|
+
secrets: z21.record(z21.string(), z21.string()).optional(),
|
|
8088
|
+
artifactName: z21.string().optional(),
|
|
8089
|
+
artifactVersion: z21.string().optional(),
|
|
8090
|
+
volumeVersions: z21.record(z21.string(), z21.string()).optional()
|
|
7976
8091
|
});
|
|
7977
|
-
var scheduleDefinitionSchema =
|
|
8092
|
+
var scheduleDefinitionSchema = z21.object({
|
|
7978
8093
|
on: scheduleTriggerSchema,
|
|
7979
8094
|
run: scheduleRunConfigSchema
|
|
7980
8095
|
});
|
|
7981
|
-
var scheduleYamlSchema =
|
|
7982
|
-
version:
|
|
7983
|
-
schedules:
|
|
7984
|
-
});
|
|
7985
|
-
var deployScheduleRequestSchema =
|
|
7986
|
-
name:
|
|
7987
|
-
cronExpression:
|
|
7988
|
-
atTime:
|
|
7989
|
-
timezone:
|
|
7990
|
-
prompt:
|
|
7991
|
-
vars:
|
|
7992
|
-
secrets:
|
|
7993
|
-
artifactName:
|
|
7994
|
-
artifactVersion:
|
|
7995
|
-
volumeVersions:
|
|
8096
|
+
var scheduleYamlSchema = z21.object({
|
|
8097
|
+
version: z21.literal("1.0"),
|
|
8098
|
+
schedules: z21.record(z21.string(), scheduleDefinitionSchema)
|
|
8099
|
+
});
|
|
8100
|
+
var deployScheduleRequestSchema = z21.object({
|
|
8101
|
+
name: z21.string().min(1).max(64, "Schedule name max 64 chars"),
|
|
8102
|
+
cronExpression: z21.string().optional(),
|
|
8103
|
+
atTime: z21.string().optional(),
|
|
8104
|
+
timezone: z21.string().default("UTC"),
|
|
8105
|
+
prompt: z21.string().min(1, "Prompt required"),
|
|
8106
|
+
vars: z21.record(z21.string(), z21.string()).optional(),
|
|
8107
|
+
secrets: z21.record(z21.string(), z21.string()).optional(),
|
|
8108
|
+
artifactName: z21.string().optional(),
|
|
8109
|
+
artifactVersion: z21.string().optional(),
|
|
8110
|
+
volumeVersions: z21.record(z21.string(), z21.string()).optional(),
|
|
7996
8111
|
// Resolved agent compose ID (CLI resolves scope/name:version → composeId)
|
|
7997
|
-
composeId:
|
|
8112
|
+
composeId: z21.string().uuid("Invalid compose ID")
|
|
7998
8113
|
}).refine(
|
|
7999
8114
|
(data) => data.cronExpression && !data.atTime || !data.cronExpression && data.atTime,
|
|
8000
8115
|
{
|
|
8001
8116
|
message: "Exactly one of 'cronExpression' or 'atTime' must be specified"
|
|
8002
8117
|
}
|
|
8003
8118
|
);
|
|
8004
|
-
var scheduleResponseSchema =
|
|
8005
|
-
id:
|
|
8006
|
-
composeId:
|
|
8007
|
-
composeName:
|
|
8008
|
-
scopeSlug:
|
|
8009
|
-
name:
|
|
8010
|
-
cronExpression:
|
|
8011
|
-
atTime:
|
|
8012
|
-
timezone:
|
|
8013
|
-
prompt:
|
|
8014
|
-
vars:
|
|
8119
|
+
var scheduleResponseSchema = z21.object({
|
|
8120
|
+
id: z21.string().uuid(),
|
|
8121
|
+
composeId: z21.string().uuid(),
|
|
8122
|
+
composeName: z21.string(),
|
|
8123
|
+
scopeSlug: z21.string(),
|
|
8124
|
+
name: z21.string(),
|
|
8125
|
+
cronExpression: z21.string().nullable(),
|
|
8126
|
+
atTime: z21.string().nullable(),
|
|
8127
|
+
timezone: z21.string(),
|
|
8128
|
+
prompt: z21.string(),
|
|
8129
|
+
vars: z21.record(z21.string(), z21.string()).nullable(),
|
|
8015
8130
|
// Secret names only (values are never returned)
|
|
8016
|
-
secretNames:
|
|
8017
|
-
artifactName:
|
|
8018
|
-
artifactVersion:
|
|
8019
|
-
volumeVersions:
|
|
8020
|
-
enabled:
|
|
8021
|
-
nextRunAt:
|
|
8022
|
-
lastRunAt:
|
|
8023
|
-
retryStartedAt:
|
|
8024
|
-
createdAt:
|
|
8025
|
-
updatedAt:
|
|
8026
|
-
});
|
|
8027
|
-
var runSummarySchema =
|
|
8028
|
-
id:
|
|
8029
|
-
status:
|
|
8030
|
-
createdAt:
|
|
8031
|
-
completedAt:
|
|
8032
|
-
error:
|
|
8033
|
-
});
|
|
8034
|
-
var scheduleRunsResponseSchema =
|
|
8035
|
-
runs:
|
|
8036
|
-
});
|
|
8037
|
-
var scheduleListResponseSchema =
|
|
8038
|
-
schedules:
|
|
8039
|
-
});
|
|
8040
|
-
var deployScheduleResponseSchema =
|
|
8131
|
+
secretNames: z21.array(z21.string()).nullable(),
|
|
8132
|
+
artifactName: z21.string().nullable(),
|
|
8133
|
+
artifactVersion: z21.string().nullable(),
|
|
8134
|
+
volumeVersions: z21.record(z21.string(), z21.string()).nullable(),
|
|
8135
|
+
enabled: z21.boolean(),
|
|
8136
|
+
nextRunAt: z21.string().nullable(),
|
|
8137
|
+
lastRunAt: z21.string().nullable(),
|
|
8138
|
+
retryStartedAt: z21.string().nullable(),
|
|
8139
|
+
createdAt: z21.string(),
|
|
8140
|
+
updatedAt: z21.string()
|
|
8141
|
+
});
|
|
8142
|
+
var runSummarySchema = z21.object({
|
|
8143
|
+
id: z21.string().uuid(),
|
|
8144
|
+
status: z21.enum(["pending", "running", "completed", "failed", "timeout"]),
|
|
8145
|
+
createdAt: z21.string(),
|
|
8146
|
+
completedAt: z21.string().nullable(),
|
|
8147
|
+
error: z21.string().nullable()
|
|
8148
|
+
});
|
|
8149
|
+
var scheduleRunsResponseSchema = z21.object({
|
|
8150
|
+
runs: z21.array(runSummarySchema)
|
|
8151
|
+
});
|
|
8152
|
+
var scheduleListResponseSchema = z21.object({
|
|
8153
|
+
schedules: z21.array(scheduleResponseSchema)
|
|
8154
|
+
});
|
|
8155
|
+
var deployScheduleResponseSchema = z21.object({
|
|
8041
8156
|
schedule: scheduleResponseSchema,
|
|
8042
|
-
created:
|
|
8157
|
+
created: z21.boolean()
|
|
8043
8158
|
// true if created, false if updated
|
|
8044
8159
|
});
|
|
8045
|
-
var schedulesMainContract =
|
|
8160
|
+
var schedulesMainContract = c14.router({
|
|
8046
8161
|
/**
|
|
8047
8162
|
* POST /api/agent/schedules
|
|
8048
8163
|
* Deploy (create or update) a schedule
|
|
@@ -8080,7 +8195,7 @@ var schedulesMainContract = c13.router({
|
|
|
8080
8195
|
summary: "List all schedules"
|
|
8081
8196
|
}
|
|
8082
8197
|
});
|
|
8083
|
-
var schedulesByNameContract =
|
|
8198
|
+
var schedulesByNameContract = c14.router({
|
|
8084
8199
|
/**
|
|
8085
8200
|
* GET /api/agent/schedules/:name
|
|
8086
8201
|
* Get schedule by name
|
|
@@ -8089,11 +8204,11 @@ var schedulesByNameContract = c13.router({
|
|
|
8089
8204
|
method: "GET",
|
|
8090
8205
|
path: "/api/agent/schedules/:name",
|
|
8091
8206
|
headers: authHeadersSchema,
|
|
8092
|
-
pathParams:
|
|
8093
|
-
name:
|
|
8207
|
+
pathParams: z21.object({
|
|
8208
|
+
name: z21.string().min(1, "Schedule name required")
|
|
8094
8209
|
}),
|
|
8095
|
-
query:
|
|
8096
|
-
composeId:
|
|
8210
|
+
query: z21.object({
|
|
8211
|
+
composeId: z21.string().uuid("Compose ID required")
|
|
8097
8212
|
}),
|
|
8098
8213
|
responses: {
|
|
8099
8214
|
200: scheduleResponseSchema,
|
|
@@ -8110,21 +8225,21 @@ var schedulesByNameContract = c13.router({
|
|
|
8110
8225
|
method: "DELETE",
|
|
8111
8226
|
path: "/api/agent/schedules/:name",
|
|
8112
8227
|
headers: authHeadersSchema,
|
|
8113
|
-
pathParams:
|
|
8114
|
-
name:
|
|
8228
|
+
pathParams: z21.object({
|
|
8229
|
+
name: z21.string().min(1, "Schedule name required")
|
|
8115
8230
|
}),
|
|
8116
|
-
query:
|
|
8117
|
-
composeId:
|
|
8231
|
+
query: z21.object({
|
|
8232
|
+
composeId: z21.string().uuid("Compose ID required")
|
|
8118
8233
|
}),
|
|
8119
8234
|
responses: {
|
|
8120
|
-
204:
|
|
8235
|
+
204: c14.noBody(),
|
|
8121
8236
|
401: apiErrorSchema,
|
|
8122
8237
|
404: apiErrorSchema
|
|
8123
8238
|
},
|
|
8124
8239
|
summary: "Delete schedule"
|
|
8125
8240
|
}
|
|
8126
8241
|
});
|
|
8127
|
-
var schedulesEnableContract =
|
|
8242
|
+
var schedulesEnableContract = c14.router({
|
|
8128
8243
|
/**
|
|
8129
8244
|
* POST /api/agent/schedules/:name/enable
|
|
8130
8245
|
* Enable a disabled schedule
|
|
@@ -8133,11 +8248,11 @@ var schedulesEnableContract = c13.router({
|
|
|
8133
8248
|
method: "POST",
|
|
8134
8249
|
path: "/api/agent/schedules/:name/enable",
|
|
8135
8250
|
headers: authHeadersSchema,
|
|
8136
|
-
pathParams:
|
|
8137
|
-
name:
|
|
8251
|
+
pathParams: z21.object({
|
|
8252
|
+
name: z21.string().min(1, "Schedule name required")
|
|
8138
8253
|
}),
|
|
8139
|
-
body:
|
|
8140
|
-
composeId:
|
|
8254
|
+
body: z21.object({
|
|
8255
|
+
composeId: z21.string().uuid("Compose ID required")
|
|
8141
8256
|
}),
|
|
8142
8257
|
responses: {
|
|
8143
8258
|
200: scheduleResponseSchema,
|
|
@@ -8154,11 +8269,11 @@ var schedulesEnableContract = c13.router({
|
|
|
8154
8269
|
method: "POST",
|
|
8155
8270
|
path: "/api/agent/schedules/:name/disable",
|
|
8156
8271
|
headers: authHeadersSchema,
|
|
8157
|
-
pathParams:
|
|
8158
|
-
name:
|
|
8272
|
+
pathParams: z21.object({
|
|
8273
|
+
name: z21.string().min(1, "Schedule name required")
|
|
8159
8274
|
}),
|
|
8160
|
-
body:
|
|
8161
|
-
composeId:
|
|
8275
|
+
body: z21.object({
|
|
8276
|
+
composeId: z21.string().uuid("Compose ID required")
|
|
8162
8277
|
}),
|
|
8163
8278
|
responses: {
|
|
8164
8279
|
200: scheduleResponseSchema,
|
|
@@ -8168,7 +8283,7 @@ var schedulesEnableContract = c13.router({
|
|
|
8168
8283
|
summary: "Disable schedule"
|
|
8169
8284
|
}
|
|
8170
8285
|
});
|
|
8171
|
-
var scheduleRunsContract =
|
|
8286
|
+
var scheduleRunsContract = c14.router({
|
|
8172
8287
|
/**
|
|
8173
8288
|
* GET /api/agent/schedules/:name/runs
|
|
8174
8289
|
* List recent runs for a schedule
|
|
@@ -8177,12 +8292,12 @@ var scheduleRunsContract = c13.router({
|
|
|
8177
8292
|
method: "GET",
|
|
8178
8293
|
path: "/api/agent/schedules/:name/runs",
|
|
8179
8294
|
headers: authHeadersSchema,
|
|
8180
|
-
pathParams:
|
|
8181
|
-
name:
|
|
8295
|
+
pathParams: z21.object({
|
|
8296
|
+
name: z21.string().min(1, "Schedule name required")
|
|
8182
8297
|
}),
|
|
8183
|
-
query:
|
|
8184
|
-
composeId:
|
|
8185
|
-
limit:
|
|
8298
|
+
query: z21.object({
|
|
8299
|
+
composeId: z21.string().uuid("Compose ID required"),
|
|
8300
|
+
limit: z21.coerce.number().min(0).max(100).default(5)
|
|
8186
8301
|
}),
|
|
8187
8302
|
responses: {
|
|
8188
8303
|
200: scheduleRunsResponseSchema,
|
|
@@ -8194,18 +8309,18 @@ var scheduleRunsContract = c13.router({
|
|
|
8194
8309
|
});
|
|
8195
8310
|
|
|
8196
8311
|
// ../../packages/core/src/contracts/realtime.ts
|
|
8197
|
-
import { z as
|
|
8198
|
-
var
|
|
8199
|
-
var ablyTokenRequestSchema =
|
|
8200
|
-
keyName:
|
|
8201
|
-
ttl:
|
|
8202
|
-
timestamp:
|
|
8203
|
-
capability:
|
|
8204
|
-
clientId:
|
|
8205
|
-
nonce:
|
|
8206
|
-
mac:
|
|
8312
|
+
import { z as z22 } from "zod";
|
|
8313
|
+
var c15 = initContract();
|
|
8314
|
+
var ablyTokenRequestSchema = z22.object({
|
|
8315
|
+
keyName: z22.string(),
|
|
8316
|
+
ttl: z22.number().optional(),
|
|
8317
|
+
timestamp: z22.number(),
|
|
8318
|
+
capability: z22.string(),
|
|
8319
|
+
clientId: z22.string().optional(),
|
|
8320
|
+
nonce: z22.string(),
|
|
8321
|
+
mac: z22.string()
|
|
8207
8322
|
});
|
|
8208
|
-
var realtimeTokenContract =
|
|
8323
|
+
var realtimeTokenContract = c15.router({
|
|
8209
8324
|
/**
|
|
8210
8325
|
* POST /api/realtime/token
|
|
8211
8326
|
* Get an Ably token to subscribe to a run's events channel
|
|
@@ -8214,8 +8329,8 @@ var realtimeTokenContract = c14.router({
|
|
|
8214
8329
|
method: "POST",
|
|
8215
8330
|
path: "/api/realtime/token",
|
|
8216
8331
|
headers: authHeadersSchema,
|
|
8217
|
-
body:
|
|
8218
|
-
runId:
|
|
8332
|
+
body: z22.object({
|
|
8333
|
+
runId: z22.string().uuid("runId must be a valid UUID")
|
|
8219
8334
|
}),
|
|
8220
8335
|
responses: {
|
|
8221
8336
|
200: ablyTokenRequestSchema,
|
|
@@ -8227,7 +8342,7 @@ var realtimeTokenContract = c14.router({
|
|
|
8227
8342
|
summary: "Get Ably token for run event subscription"
|
|
8228
8343
|
}
|
|
8229
8344
|
});
|
|
8230
|
-
var runnerRealtimeTokenContract =
|
|
8345
|
+
var runnerRealtimeTokenContract = c15.router({
|
|
8231
8346
|
/**
|
|
8232
8347
|
* POST /api/runners/realtime/token
|
|
8233
8348
|
* Get an Ably token to subscribe to a runner group's job notification channel
|
|
@@ -8236,7 +8351,7 @@ var runnerRealtimeTokenContract = c14.router({
|
|
|
8236
8351
|
method: "POST",
|
|
8237
8352
|
path: "/api/runners/realtime/token",
|
|
8238
8353
|
headers: authHeadersSchema,
|
|
8239
|
-
body:
|
|
8354
|
+
body: z22.object({
|
|
8240
8355
|
group: runnerGroupSchema
|
|
8241
8356
|
}),
|
|
8242
8357
|
responses: {
|
|
@@ -8250,11 +8365,11 @@ var runnerRealtimeTokenContract = c14.router({
|
|
|
8250
8365
|
});
|
|
8251
8366
|
|
|
8252
8367
|
// ../../packages/core/src/contracts/platform.ts
|
|
8253
|
-
import { z as
|
|
8368
|
+
import { z as z24 } from "zod";
|
|
8254
8369
|
|
|
8255
8370
|
// ../../packages/core/src/contracts/public/common.ts
|
|
8256
|
-
import { z as
|
|
8257
|
-
var publicApiErrorTypeSchema =
|
|
8371
|
+
import { z as z23 } from "zod";
|
|
8372
|
+
var publicApiErrorTypeSchema = z23.enum([
|
|
8258
8373
|
"api_error",
|
|
8259
8374
|
// Internal server error (5xx)
|
|
8260
8375
|
"invalid_request_error",
|
|
@@ -8268,40 +8383,40 @@ var publicApiErrorTypeSchema = z22.enum([
|
|
|
8268
8383
|
"rate_limit_error"
|
|
8269
8384
|
// Rate limit exceeded (429)
|
|
8270
8385
|
]);
|
|
8271
|
-
var publicApiErrorSchema =
|
|
8272
|
-
error:
|
|
8386
|
+
var publicApiErrorSchema = z23.object({
|
|
8387
|
+
error: z23.object({
|
|
8273
8388
|
type: publicApiErrorTypeSchema,
|
|
8274
|
-
code:
|
|
8275
|
-
message:
|
|
8276
|
-
param:
|
|
8277
|
-
docUrl:
|
|
8389
|
+
code: z23.string(),
|
|
8390
|
+
message: z23.string(),
|
|
8391
|
+
param: z23.string().optional(),
|
|
8392
|
+
docUrl: z23.string().url().optional()
|
|
8278
8393
|
})
|
|
8279
8394
|
});
|
|
8280
|
-
var paginationSchema =
|
|
8281
|
-
hasMore:
|
|
8282
|
-
nextCursor:
|
|
8395
|
+
var paginationSchema = z23.object({
|
|
8396
|
+
hasMore: z23.boolean(),
|
|
8397
|
+
nextCursor: z23.string().nullable()
|
|
8283
8398
|
});
|
|
8284
8399
|
function createPaginatedResponseSchema(dataSchema) {
|
|
8285
|
-
return
|
|
8286
|
-
data:
|
|
8400
|
+
return z23.object({
|
|
8401
|
+
data: z23.array(dataSchema),
|
|
8287
8402
|
pagination: paginationSchema
|
|
8288
8403
|
});
|
|
8289
8404
|
}
|
|
8290
|
-
var listQuerySchema =
|
|
8291
|
-
cursor:
|
|
8292
|
-
limit:
|
|
8405
|
+
var listQuerySchema = z23.object({
|
|
8406
|
+
cursor: z23.string().optional(),
|
|
8407
|
+
limit: z23.coerce.number().min(1).max(100).default(20)
|
|
8293
8408
|
});
|
|
8294
|
-
var requestIdSchema =
|
|
8295
|
-
var timestampSchema =
|
|
8409
|
+
var requestIdSchema = z23.string().uuid();
|
|
8410
|
+
var timestampSchema = z23.string().datetime();
|
|
8296
8411
|
|
|
8297
8412
|
// ../../packages/core/src/contracts/platform.ts
|
|
8298
|
-
var
|
|
8299
|
-
var platformPaginationSchema =
|
|
8300
|
-
hasMore:
|
|
8301
|
-
nextCursor:
|
|
8302
|
-
totalPages:
|
|
8413
|
+
var c16 = initContract();
|
|
8414
|
+
var platformPaginationSchema = z24.object({
|
|
8415
|
+
hasMore: z24.boolean(),
|
|
8416
|
+
nextCursor: z24.string().nullable(),
|
|
8417
|
+
totalPages: z24.number()
|
|
8303
8418
|
});
|
|
8304
|
-
var platformLogStatusSchema =
|
|
8419
|
+
var platformLogStatusSchema = z24.enum([
|
|
8305
8420
|
"pending",
|
|
8306
8421
|
"running",
|
|
8307
8422
|
"completed",
|
|
@@ -8309,41 +8424,41 @@ var platformLogStatusSchema = z23.enum([
|
|
|
8309
8424
|
"timeout",
|
|
8310
8425
|
"cancelled"
|
|
8311
8426
|
]);
|
|
8312
|
-
var platformLogEntrySchema =
|
|
8313
|
-
id:
|
|
8314
|
-
sessionId:
|
|
8315
|
-
agentName:
|
|
8316
|
-
framework:
|
|
8427
|
+
var platformLogEntrySchema = z24.object({
|
|
8428
|
+
id: z24.string().uuid(),
|
|
8429
|
+
sessionId: z24.string().nullable(),
|
|
8430
|
+
agentName: z24.string(),
|
|
8431
|
+
framework: z24.string().nullable(),
|
|
8317
8432
|
status: platformLogStatusSchema,
|
|
8318
|
-
createdAt:
|
|
8433
|
+
createdAt: z24.string()
|
|
8319
8434
|
});
|
|
8320
|
-
var platformLogsListResponseSchema =
|
|
8321
|
-
data:
|
|
8435
|
+
var platformLogsListResponseSchema = z24.object({
|
|
8436
|
+
data: z24.array(platformLogEntrySchema),
|
|
8322
8437
|
pagination: platformPaginationSchema
|
|
8323
8438
|
});
|
|
8324
|
-
var artifactSchema =
|
|
8325
|
-
name:
|
|
8326
|
-
version:
|
|
8439
|
+
var artifactSchema = z24.object({
|
|
8440
|
+
name: z24.string().nullable(),
|
|
8441
|
+
version: z24.string().nullable()
|
|
8327
8442
|
});
|
|
8328
|
-
var platformLogDetailSchema =
|
|
8329
|
-
id:
|
|
8330
|
-
sessionId:
|
|
8331
|
-
agentName:
|
|
8332
|
-
framework:
|
|
8443
|
+
var platformLogDetailSchema = z24.object({
|
|
8444
|
+
id: z24.string().uuid(),
|
|
8445
|
+
sessionId: z24.string().nullable(),
|
|
8446
|
+
agentName: z24.string(),
|
|
8447
|
+
framework: z24.string().nullable(),
|
|
8333
8448
|
status: platformLogStatusSchema,
|
|
8334
|
-
prompt:
|
|
8335
|
-
error:
|
|
8336
|
-
createdAt:
|
|
8337
|
-
startedAt:
|
|
8338
|
-
completedAt:
|
|
8449
|
+
prompt: z24.string(),
|
|
8450
|
+
error: z24.string().nullable(),
|
|
8451
|
+
createdAt: z24.string(),
|
|
8452
|
+
startedAt: z24.string().nullable(),
|
|
8453
|
+
completedAt: z24.string().nullable(),
|
|
8339
8454
|
artifact: artifactSchema
|
|
8340
8455
|
});
|
|
8341
|
-
var platformLogsListContract =
|
|
8456
|
+
var platformLogsListContract = c16.router({
|
|
8342
8457
|
list: {
|
|
8343
8458
|
method: "GET",
|
|
8344
8459
|
path: "/api/platform/logs",
|
|
8345
8460
|
query: listQuerySchema.extend({
|
|
8346
|
-
search:
|
|
8461
|
+
search: z24.string().optional()
|
|
8347
8462
|
}),
|
|
8348
8463
|
responses: {
|
|
8349
8464
|
200: platformLogsListResponseSchema,
|
|
@@ -8352,12 +8467,12 @@ var platformLogsListContract = c15.router({
|
|
|
8352
8467
|
summary: "List agent run logs with pagination"
|
|
8353
8468
|
}
|
|
8354
8469
|
});
|
|
8355
|
-
var platformLogsByIdContract =
|
|
8470
|
+
var platformLogsByIdContract = c16.router({
|
|
8356
8471
|
getById: {
|
|
8357
8472
|
method: "GET",
|
|
8358
8473
|
path: "/api/platform/logs/:id",
|
|
8359
|
-
pathParams:
|
|
8360
|
-
id:
|
|
8474
|
+
pathParams: z24.object({
|
|
8475
|
+
id: z24.string().uuid("Invalid log ID")
|
|
8361
8476
|
}),
|
|
8362
8477
|
responses: {
|
|
8363
8478
|
200: platformLogDetailSchema,
|
|
@@ -8367,17 +8482,17 @@ var platformLogsByIdContract = c15.router({
|
|
|
8367
8482
|
summary: "Get agent run log details by ID"
|
|
8368
8483
|
}
|
|
8369
8484
|
});
|
|
8370
|
-
var artifactDownloadResponseSchema =
|
|
8371
|
-
url:
|
|
8372
|
-
expiresAt:
|
|
8485
|
+
var artifactDownloadResponseSchema = z24.object({
|
|
8486
|
+
url: z24.string().url(),
|
|
8487
|
+
expiresAt: z24.string()
|
|
8373
8488
|
});
|
|
8374
|
-
var platformArtifactDownloadContract =
|
|
8489
|
+
var platformArtifactDownloadContract = c16.router({
|
|
8375
8490
|
getDownloadUrl: {
|
|
8376
8491
|
method: "GET",
|
|
8377
8492
|
path: "/api/platform/artifacts/download",
|
|
8378
|
-
query:
|
|
8379
|
-
name:
|
|
8380
|
-
version:
|
|
8493
|
+
query: z24.object({
|
|
8494
|
+
name: z24.string().min(1, "Artifact name is required"),
|
|
8495
|
+
version: z24.string().optional()
|
|
8381
8496
|
}),
|
|
8382
8497
|
responses: {
|
|
8383
8498
|
200: artifactDownloadResponseSchema,
|
|
@@ -8389,29 +8504,29 @@ var platformArtifactDownloadContract = c15.router({
|
|
|
8389
8504
|
});
|
|
8390
8505
|
|
|
8391
8506
|
// ../../packages/core/src/contracts/llm.ts
|
|
8392
|
-
import { z as
|
|
8393
|
-
var
|
|
8394
|
-
var messageRoleSchema =
|
|
8395
|
-
var chatMessageSchema =
|
|
8507
|
+
import { z as z25 } from "zod";
|
|
8508
|
+
var c17 = initContract();
|
|
8509
|
+
var messageRoleSchema = z25.enum(["user", "assistant", "system"]);
|
|
8510
|
+
var chatMessageSchema = z25.object({
|
|
8396
8511
|
role: messageRoleSchema,
|
|
8397
|
-
content:
|
|
8512
|
+
content: z25.string()
|
|
8398
8513
|
});
|
|
8399
|
-
var tokenUsageSchema =
|
|
8400
|
-
promptTokens:
|
|
8401
|
-
completionTokens:
|
|
8402
|
-
totalTokens:
|
|
8514
|
+
var tokenUsageSchema = z25.object({
|
|
8515
|
+
promptTokens: z25.number(),
|
|
8516
|
+
completionTokens: z25.number(),
|
|
8517
|
+
totalTokens: z25.number()
|
|
8403
8518
|
});
|
|
8404
|
-
var llmChatRequestSchema =
|
|
8405
|
-
model:
|
|
8406
|
-
messages:
|
|
8407
|
-
stream:
|
|
8519
|
+
var llmChatRequestSchema = z25.object({
|
|
8520
|
+
model: z25.string().min(1).optional(),
|
|
8521
|
+
messages: z25.array(chatMessageSchema).min(1, "At least one message is required"),
|
|
8522
|
+
stream: z25.boolean().optional().default(false)
|
|
8408
8523
|
});
|
|
8409
|
-
var llmChatResponseSchema =
|
|
8410
|
-
content:
|
|
8411
|
-
model:
|
|
8524
|
+
var llmChatResponseSchema = z25.object({
|
|
8525
|
+
content: z25.string(),
|
|
8526
|
+
model: z25.string(),
|
|
8412
8527
|
usage: tokenUsageSchema
|
|
8413
8528
|
});
|
|
8414
|
-
var llmChatContract =
|
|
8529
|
+
var llmChatContract = c17.router({
|
|
8415
8530
|
chat: {
|
|
8416
8531
|
method: "POST",
|
|
8417
8532
|
path: "/api/llm/chat",
|
|
@@ -8427,28 +8542,28 @@ var llmChatContract = c16.router({
|
|
|
8427
8542
|
});
|
|
8428
8543
|
|
|
8429
8544
|
// ../../packages/core/src/contracts/public/agents.ts
|
|
8430
|
-
import { z as
|
|
8431
|
-
var
|
|
8432
|
-
var publicAgentSchema =
|
|
8433
|
-
id:
|
|
8434
|
-
name:
|
|
8435
|
-
currentVersionId:
|
|
8545
|
+
import { z as z26 } from "zod";
|
|
8546
|
+
var c18 = initContract();
|
|
8547
|
+
var publicAgentSchema = z26.object({
|
|
8548
|
+
id: z26.string(),
|
|
8549
|
+
name: z26.string(),
|
|
8550
|
+
currentVersionId: z26.string().nullable(),
|
|
8436
8551
|
createdAt: timestampSchema,
|
|
8437
8552
|
updatedAt: timestampSchema
|
|
8438
8553
|
});
|
|
8439
|
-
var agentVersionSchema =
|
|
8440
|
-
id:
|
|
8441
|
-
agentId:
|
|
8442
|
-
versionNumber:
|
|
8554
|
+
var agentVersionSchema = z26.object({
|
|
8555
|
+
id: z26.string(),
|
|
8556
|
+
agentId: z26.string(),
|
|
8557
|
+
versionNumber: z26.number(),
|
|
8443
8558
|
createdAt: timestampSchema
|
|
8444
8559
|
});
|
|
8445
8560
|
var publicAgentDetailSchema = publicAgentSchema;
|
|
8446
8561
|
var paginatedAgentsSchema = createPaginatedResponseSchema(publicAgentSchema);
|
|
8447
8562
|
var paginatedAgentVersionsSchema = createPaginatedResponseSchema(agentVersionSchema);
|
|
8448
8563
|
var agentListQuerySchema = listQuerySchema.extend({
|
|
8449
|
-
name:
|
|
8564
|
+
name: z26.string().optional()
|
|
8450
8565
|
});
|
|
8451
|
-
var publicAgentsListContract =
|
|
8566
|
+
var publicAgentsListContract = c18.router({
|
|
8452
8567
|
list: {
|
|
8453
8568
|
method: "GET",
|
|
8454
8569
|
path: "/v1/agents",
|
|
@@ -8463,13 +8578,13 @@ var publicAgentsListContract = c17.router({
|
|
|
8463
8578
|
description: "List all agents in the current scope with pagination. Use the `name` query parameter to filter by agent name."
|
|
8464
8579
|
}
|
|
8465
8580
|
});
|
|
8466
|
-
var publicAgentByIdContract =
|
|
8581
|
+
var publicAgentByIdContract = c18.router({
|
|
8467
8582
|
get: {
|
|
8468
8583
|
method: "GET",
|
|
8469
8584
|
path: "/v1/agents/:id",
|
|
8470
8585
|
headers: authHeadersSchema,
|
|
8471
|
-
pathParams:
|
|
8472
|
-
id:
|
|
8586
|
+
pathParams: z26.object({
|
|
8587
|
+
id: z26.string().min(1, "Agent ID is required")
|
|
8473
8588
|
}),
|
|
8474
8589
|
responses: {
|
|
8475
8590
|
200: publicAgentDetailSchema,
|
|
@@ -8481,13 +8596,13 @@ var publicAgentByIdContract = c17.router({
|
|
|
8481
8596
|
description: "Get agent details by ID"
|
|
8482
8597
|
}
|
|
8483
8598
|
});
|
|
8484
|
-
var publicAgentVersionsContract =
|
|
8599
|
+
var publicAgentVersionsContract = c18.router({
|
|
8485
8600
|
list: {
|
|
8486
8601
|
method: "GET",
|
|
8487
8602
|
path: "/v1/agents/:id/versions",
|
|
8488
8603
|
headers: authHeadersSchema,
|
|
8489
|
-
pathParams:
|
|
8490
|
-
id:
|
|
8604
|
+
pathParams: z26.object({
|
|
8605
|
+
id: z26.string().min(1, "Agent ID is required")
|
|
8491
8606
|
}),
|
|
8492
8607
|
query: listQuerySchema,
|
|
8493
8608
|
responses: {
|
|
@@ -8502,9 +8617,9 @@ var publicAgentVersionsContract = c17.router({
|
|
|
8502
8617
|
});
|
|
8503
8618
|
|
|
8504
8619
|
// ../../packages/core/src/contracts/public/runs.ts
|
|
8505
|
-
import { z as
|
|
8506
|
-
var
|
|
8507
|
-
var publicRunStatusSchema =
|
|
8620
|
+
import { z as z27 } from "zod";
|
|
8621
|
+
var c19 = initContract();
|
|
8622
|
+
var publicRunStatusSchema = z27.enum([
|
|
8508
8623
|
"pending",
|
|
8509
8624
|
"running",
|
|
8510
8625
|
"completed",
|
|
@@ -8512,54 +8627,54 @@ var publicRunStatusSchema = z26.enum([
|
|
|
8512
8627
|
"timeout",
|
|
8513
8628
|
"cancelled"
|
|
8514
8629
|
]);
|
|
8515
|
-
var publicRunSchema =
|
|
8516
|
-
id:
|
|
8517
|
-
agentId:
|
|
8518
|
-
agentName:
|
|
8630
|
+
var publicRunSchema = z27.object({
|
|
8631
|
+
id: z27.string(),
|
|
8632
|
+
agentId: z27.string(),
|
|
8633
|
+
agentName: z27.string(),
|
|
8519
8634
|
status: publicRunStatusSchema,
|
|
8520
|
-
prompt:
|
|
8635
|
+
prompt: z27.string(),
|
|
8521
8636
|
createdAt: timestampSchema,
|
|
8522
8637
|
startedAt: timestampSchema.nullable(),
|
|
8523
8638
|
completedAt: timestampSchema.nullable()
|
|
8524
8639
|
});
|
|
8525
8640
|
var publicRunDetailSchema = publicRunSchema.extend({
|
|
8526
|
-
error:
|
|
8527
|
-
executionTimeMs:
|
|
8528
|
-
checkpointId:
|
|
8529
|
-
sessionId:
|
|
8530
|
-
artifactName:
|
|
8531
|
-
artifactVersion:
|
|
8532
|
-
volumes:
|
|
8641
|
+
error: z27.string().nullable(),
|
|
8642
|
+
executionTimeMs: z27.number().nullable(),
|
|
8643
|
+
checkpointId: z27.string().nullable(),
|
|
8644
|
+
sessionId: z27.string().nullable(),
|
|
8645
|
+
artifactName: z27.string().nullable(),
|
|
8646
|
+
artifactVersion: z27.string().nullable(),
|
|
8647
|
+
volumes: z27.record(z27.string(), z27.string()).optional()
|
|
8533
8648
|
});
|
|
8534
8649
|
var paginatedRunsSchema = createPaginatedResponseSchema(publicRunSchema);
|
|
8535
|
-
var createRunRequestSchema =
|
|
8650
|
+
var createRunRequestSchema = z27.object({
|
|
8536
8651
|
// Agent identification (one of: agent, agentId, sessionId, checkpointId)
|
|
8537
|
-
agent:
|
|
8652
|
+
agent: z27.string().optional(),
|
|
8538
8653
|
// Agent name
|
|
8539
|
-
agentId:
|
|
8654
|
+
agentId: z27.string().optional(),
|
|
8540
8655
|
// Agent ID
|
|
8541
|
-
agentVersion:
|
|
8656
|
+
agentVersion: z27.string().optional(),
|
|
8542
8657
|
// Version specifier (e.g., "latest", "v1", specific ID)
|
|
8543
8658
|
// Continue session
|
|
8544
|
-
sessionId:
|
|
8659
|
+
sessionId: z27.string().optional(),
|
|
8545
8660
|
// Resume from checkpoint
|
|
8546
|
-
checkpointId:
|
|
8661
|
+
checkpointId: z27.string().optional(),
|
|
8547
8662
|
// Required
|
|
8548
|
-
prompt:
|
|
8663
|
+
prompt: z27.string().min(1, "Prompt is required"),
|
|
8549
8664
|
// Optional configuration
|
|
8550
|
-
variables:
|
|
8551
|
-
secrets:
|
|
8552
|
-
artifactName:
|
|
8665
|
+
variables: z27.record(z27.string(), z27.string()).optional(),
|
|
8666
|
+
secrets: z27.record(z27.string(), z27.string()).optional(),
|
|
8667
|
+
artifactName: z27.string().optional(),
|
|
8553
8668
|
// Artifact name to mount
|
|
8554
|
-
artifactVersion:
|
|
8669
|
+
artifactVersion: z27.string().optional(),
|
|
8555
8670
|
// Artifact version (defaults to latest)
|
|
8556
|
-
volumes:
|
|
8671
|
+
volumes: z27.record(z27.string(), z27.string()).optional()
|
|
8557
8672
|
// volume_name -> version
|
|
8558
8673
|
});
|
|
8559
8674
|
var runListQuerySchema = listQuerySchema.extend({
|
|
8560
8675
|
status: publicRunStatusSchema.optional()
|
|
8561
8676
|
});
|
|
8562
|
-
var publicRunsListContract =
|
|
8677
|
+
var publicRunsListContract = c19.router({
|
|
8563
8678
|
list: {
|
|
8564
8679
|
method: "GET",
|
|
8565
8680
|
path: "/v1/runs",
|
|
@@ -8591,13 +8706,13 @@ var publicRunsListContract = c18.router({
|
|
|
8591
8706
|
description: "Create and execute a new agent run. Returns 202 Accepted as runs execute asynchronously."
|
|
8592
8707
|
}
|
|
8593
8708
|
});
|
|
8594
|
-
var publicRunByIdContract =
|
|
8709
|
+
var publicRunByIdContract = c19.router({
|
|
8595
8710
|
get: {
|
|
8596
8711
|
method: "GET",
|
|
8597
8712
|
path: "/v1/runs/:id",
|
|
8598
8713
|
headers: authHeadersSchema,
|
|
8599
|
-
pathParams:
|
|
8600
|
-
id:
|
|
8714
|
+
pathParams: z27.object({
|
|
8715
|
+
id: z27.string().min(1, "Run ID is required")
|
|
8601
8716
|
}),
|
|
8602
8717
|
responses: {
|
|
8603
8718
|
200: publicRunDetailSchema,
|
|
@@ -8609,15 +8724,15 @@ var publicRunByIdContract = c18.router({
|
|
|
8609
8724
|
description: "Get run details by ID"
|
|
8610
8725
|
}
|
|
8611
8726
|
});
|
|
8612
|
-
var publicRunCancelContract =
|
|
8727
|
+
var publicRunCancelContract = c19.router({
|
|
8613
8728
|
cancel: {
|
|
8614
8729
|
method: "POST",
|
|
8615
8730
|
path: "/v1/runs/:id/cancel",
|
|
8616
8731
|
headers: authHeadersSchema,
|
|
8617
|
-
pathParams:
|
|
8618
|
-
id:
|
|
8732
|
+
pathParams: z27.object({
|
|
8733
|
+
id: z27.string().min(1, "Run ID is required")
|
|
8619
8734
|
}),
|
|
8620
|
-
body:
|
|
8735
|
+
body: z27.undefined(),
|
|
8621
8736
|
responses: {
|
|
8622
8737
|
200: publicRunDetailSchema,
|
|
8623
8738
|
400: publicApiErrorSchema,
|
|
@@ -8630,27 +8745,27 @@ var publicRunCancelContract = c18.router({
|
|
|
8630
8745
|
description: "Cancel a pending or running execution"
|
|
8631
8746
|
}
|
|
8632
8747
|
});
|
|
8633
|
-
var logEntrySchema =
|
|
8748
|
+
var logEntrySchema = z27.object({
|
|
8634
8749
|
timestamp: timestampSchema,
|
|
8635
|
-
type:
|
|
8636
|
-
level:
|
|
8637
|
-
message:
|
|
8638
|
-
metadata:
|
|
8750
|
+
type: z27.enum(["agent", "system", "network"]),
|
|
8751
|
+
level: z27.enum(["debug", "info", "warn", "error"]),
|
|
8752
|
+
message: z27.string(),
|
|
8753
|
+
metadata: z27.record(z27.string(), z27.unknown()).optional()
|
|
8639
8754
|
});
|
|
8640
8755
|
var paginatedLogsSchema = createPaginatedResponseSchema(logEntrySchema);
|
|
8641
8756
|
var logsQuerySchema = listQuerySchema.extend({
|
|
8642
|
-
type:
|
|
8757
|
+
type: z27.enum(["agent", "system", "network", "all"]).default("all"),
|
|
8643
8758
|
since: timestampSchema.optional(),
|
|
8644
8759
|
until: timestampSchema.optional(),
|
|
8645
|
-
order:
|
|
8760
|
+
order: z27.enum(["asc", "desc"]).default("asc")
|
|
8646
8761
|
});
|
|
8647
|
-
var publicRunLogsContract =
|
|
8762
|
+
var publicRunLogsContract = c19.router({
|
|
8648
8763
|
getLogs: {
|
|
8649
8764
|
method: "GET",
|
|
8650
8765
|
path: "/v1/runs/:id/logs",
|
|
8651
8766
|
headers: authHeadersSchema,
|
|
8652
|
-
pathParams:
|
|
8653
|
-
id:
|
|
8767
|
+
pathParams: z27.object({
|
|
8768
|
+
id: z27.string().min(1, "Run ID is required")
|
|
8654
8769
|
}),
|
|
8655
8770
|
query: logsQuerySchema,
|
|
8656
8771
|
responses: {
|
|
@@ -8663,30 +8778,30 @@ var publicRunLogsContract = c18.router({
|
|
|
8663
8778
|
description: "Get unified logs for a run. Combines agent, system, and network logs."
|
|
8664
8779
|
}
|
|
8665
8780
|
});
|
|
8666
|
-
var metricPointSchema =
|
|
8781
|
+
var metricPointSchema = z27.object({
|
|
8667
8782
|
timestamp: timestampSchema,
|
|
8668
|
-
cpuPercent:
|
|
8669
|
-
memoryUsedMb:
|
|
8670
|
-
memoryTotalMb:
|
|
8671
|
-
diskUsedMb:
|
|
8672
|
-
diskTotalMb:
|
|
8673
|
-
});
|
|
8674
|
-
var metricsSummarySchema =
|
|
8675
|
-
avgCpuPercent:
|
|
8676
|
-
maxMemoryUsedMb:
|
|
8677
|
-
totalDurationMs:
|
|
8678
|
-
});
|
|
8679
|
-
var metricsResponseSchema2 =
|
|
8680
|
-
data:
|
|
8783
|
+
cpuPercent: z27.number(),
|
|
8784
|
+
memoryUsedMb: z27.number(),
|
|
8785
|
+
memoryTotalMb: z27.number(),
|
|
8786
|
+
diskUsedMb: z27.number(),
|
|
8787
|
+
diskTotalMb: z27.number()
|
|
8788
|
+
});
|
|
8789
|
+
var metricsSummarySchema = z27.object({
|
|
8790
|
+
avgCpuPercent: z27.number(),
|
|
8791
|
+
maxMemoryUsedMb: z27.number(),
|
|
8792
|
+
totalDurationMs: z27.number().nullable()
|
|
8793
|
+
});
|
|
8794
|
+
var metricsResponseSchema2 = z27.object({
|
|
8795
|
+
data: z27.array(metricPointSchema),
|
|
8681
8796
|
summary: metricsSummarySchema
|
|
8682
8797
|
});
|
|
8683
|
-
var publicRunMetricsContract =
|
|
8798
|
+
var publicRunMetricsContract = c19.router({
|
|
8684
8799
|
getMetrics: {
|
|
8685
8800
|
method: "GET",
|
|
8686
8801
|
path: "/v1/runs/:id/metrics",
|
|
8687
8802
|
headers: authHeadersSchema,
|
|
8688
|
-
pathParams:
|
|
8689
|
-
id:
|
|
8803
|
+
pathParams: z27.object({
|
|
8804
|
+
id: z27.string().min(1, "Run ID is required")
|
|
8690
8805
|
}),
|
|
8691
8806
|
responses: {
|
|
8692
8807
|
200: metricsResponseSchema2,
|
|
@@ -8698,7 +8813,7 @@ var publicRunMetricsContract = c18.router({
|
|
|
8698
8813
|
description: "Get CPU, memory, and disk metrics for a run"
|
|
8699
8814
|
}
|
|
8700
8815
|
});
|
|
8701
|
-
var sseEventTypeSchema =
|
|
8816
|
+
var sseEventTypeSchema = z27.enum([
|
|
8702
8817
|
"status",
|
|
8703
8818
|
// Run status change
|
|
8704
8819
|
"output",
|
|
@@ -8710,26 +8825,26 @@ var sseEventTypeSchema = z26.enum([
|
|
|
8710
8825
|
"heartbeat"
|
|
8711
8826
|
// Keep-alive
|
|
8712
8827
|
]);
|
|
8713
|
-
var sseEventSchema =
|
|
8828
|
+
var sseEventSchema = z27.object({
|
|
8714
8829
|
event: sseEventTypeSchema,
|
|
8715
|
-
data:
|
|
8716
|
-
id:
|
|
8830
|
+
data: z27.unknown(),
|
|
8831
|
+
id: z27.string().optional()
|
|
8717
8832
|
// For Last-Event-ID reconnection
|
|
8718
8833
|
});
|
|
8719
|
-
var publicRunEventsContract =
|
|
8834
|
+
var publicRunEventsContract = c19.router({
|
|
8720
8835
|
streamEvents: {
|
|
8721
8836
|
method: "GET",
|
|
8722
8837
|
path: "/v1/runs/:id/events",
|
|
8723
8838
|
headers: authHeadersSchema,
|
|
8724
|
-
pathParams:
|
|
8725
|
-
id:
|
|
8839
|
+
pathParams: z27.object({
|
|
8840
|
+
id: z27.string().min(1, "Run ID is required")
|
|
8726
8841
|
}),
|
|
8727
|
-
query:
|
|
8728
|
-
lastEventId:
|
|
8842
|
+
query: z27.object({
|
|
8843
|
+
lastEventId: z27.string().optional()
|
|
8729
8844
|
// For reconnection
|
|
8730
8845
|
}),
|
|
8731
8846
|
responses: {
|
|
8732
|
-
200:
|
|
8847
|
+
200: z27.any(),
|
|
8733
8848
|
// SSE stream - actual content is text/event-stream
|
|
8734
8849
|
401: publicApiErrorSchema,
|
|
8735
8850
|
404: publicApiErrorSchema,
|
|
@@ -8741,28 +8856,28 @@ var publicRunEventsContract = c18.router({
|
|
|
8741
8856
|
});
|
|
8742
8857
|
|
|
8743
8858
|
// ../../packages/core/src/contracts/public/artifacts.ts
|
|
8744
|
-
import { z as
|
|
8745
|
-
var
|
|
8746
|
-
var publicArtifactSchema =
|
|
8747
|
-
id:
|
|
8748
|
-
name:
|
|
8749
|
-
currentVersionId:
|
|
8750
|
-
size:
|
|
8859
|
+
import { z as z28 } from "zod";
|
|
8860
|
+
var c20 = initContract();
|
|
8861
|
+
var publicArtifactSchema = z28.object({
|
|
8862
|
+
id: z28.string(),
|
|
8863
|
+
name: z28.string(),
|
|
8864
|
+
currentVersionId: z28.string().nullable(),
|
|
8865
|
+
size: z28.number(),
|
|
8751
8866
|
// Total size in bytes
|
|
8752
|
-
fileCount:
|
|
8867
|
+
fileCount: z28.number(),
|
|
8753
8868
|
createdAt: timestampSchema,
|
|
8754
8869
|
updatedAt: timestampSchema
|
|
8755
8870
|
});
|
|
8756
|
-
var artifactVersionSchema =
|
|
8757
|
-
id:
|
|
8871
|
+
var artifactVersionSchema = z28.object({
|
|
8872
|
+
id: z28.string(),
|
|
8758
8873
|
// SHA-256 content hash
|
|
8759
|
-
artifactId:
|
|
8760
|
-
size:
|
|
8874
|
+
artifactId: z28.string(),
|
|
8875
|
+
size: z28.number(),
|
|
8761
8876
|
// Size in bytes
|
|
8762
|
-
fileCount:
|
|
8763
|
-
message:
|
|
8877
|
+
fileCount: z28.number(),
|
|
8878
|
+
message: z28.string().nullable(),
|
|
8764
8879
|
// Optional commit message
|
|
8765
|
-
createdBy:
|
|
8880
|
+
createdBy: z28.string(),
|
|
8766
8881
|
createdAt: timestampSchema
|
|
8767
8882
|
});
|
|
8768
8883
|
var publicArtifactDetailSchema = publicArtifactSchema.extend({
|
|
@@ -8772,7 +8887,7 @@ var paginatedArtifactsSchema = createPaginatedResponseSchema(publicArtifactSchem
|
|
|
8772
8887
|
var paginatedArtifactVersionsSchema = createPaginatedResponseSchema(
|
|
8773
8888
|
artifactVersionSchema
|
|
8774
8889
|
);
|
|
8775
|
-
var publicArtifactsListContract =
|
|
8890
|
+
var publicArtifactsListContract = c20.router({
|
|
8776
8891
|
list: {
|
|
8777
8892
|
method: "GET",
|
|
8778
8893
|
path: "/v1/artifacts",
|
|
@@ -8787,13 +8902,13 @@ var publicArtifactsListContract = c19.router({
|
|
|
8787
8902
|
description: "List all artifacts in the current scope with pagination"
|
|
8788
8903
|
}
|
|
8789
8904
|
});
|
|
8790
|
-
var publicArtifactByIdContract =
|
|
8905
|
+
var publicArtifactByIdContract = c20.router({
|
|
8791
8906
|
get: {
|
|
8792
8907
|
method: "GET",
|
|
8793
8908
|
path: "/v1/artifacts/:id",
|
|
8794
8909
|
headers: authHeadersSchema,
|
|
8795
|
-
pathParams:
|
|
8796
|
-
id:
|
|
8910
|
+
pathParams: z28.object({
|
|
8911
|
+
id: z28.string().min(1, "Artifact ID is required")
|
|
8797
8912
|
}),
|
|
8798
8913
|
responses: {
|
|
8799
8914
|
200: publicArtifactDetailSchema,
|
|
@@ -8805,13 +8920,13 @@ var publicArtifactByIdContract = c19.router({
|
|
|
8805
8920
|
description: "Get artifact details by ID"
|
|
8806
8921
|
}
|
|
8807
8922
|
});
|
|
8808
|
-
var publicArtifactVersionsContract =
|
|
8923
|
+
var publicArtifactVersionsContract = c20.router({
|
|
8809
8924
|
list: {
|
|
8810
8925
|
method: "GET",
|
|
8811
8926
|
path: "/v1/artifacts/:id/versions",
|
|
8812
8927
|
headers: authHeadersSchema,
|
|
8813
|
-
pathParams:
|
|
8814
|
-
id:
|
|
8928
|
+
pathParams: z28.object({
|
|
8929
|
+
id: z28.string().min(1, "Artifact ID is required")
|
|
8815
8930
|
}),
|
|
8816
8931
|
query: listQuerySchema,
|
|
8817
8932
|
responses: {
|
|
@@ -8824,20 +8939,20 @@ var publicArtifactVersionsContract = c19.router({
|
|
|
8824
8939
|
description: "List all versions of an artifact with pagination"
|
|
8825
8940
|
}
|
|
8826
8941
|
});
|
|
8827
|
-
var publicArtifactDownloadContract =
|
|
8942
|
+
var publicArtifactDownloadContract = c20.router({
|
|
8828
8943
|
download: {
|
|
8829
8944
|
method: "GET",
|
|
8830
8945
|
path: "/v1/artifacts/:id/download",
|
|
8831
8946
|
headers: authHeadersSchema,
|
|
8832
|
-
pathParams:
|
|
8833
|
-
id:
|
|
8947
|
+
pathParams: z28.object({
|
|
8948
|
+
id: z28.string().min(1, "Artifact ID is required")
|
|
8834
8949
|
}),
|
|
8835
|
-
query:
|
|
8836
|
-
versionId:
|
|
8950
|
+
query: z28.object({
|
|
8951
|
+
versionId: z28.string().optional()
|
|
8837
8952
|
// Defaults to current version
|
|
8838
8953
|
}),
|
|
8839
8954
|
responses: {
|
|
8840
|
-
302:
|
|
8955
|
+
302: z28.undefined(),
|
|
8841
8956
|
// Redirect to presigned URL
|
|
8842
8957
|
401: publicApiErrorSchema,
|
|
8843
8958
|
404: publicApiErrorSchema,
|
|
@@ -8849,28 +8964,28 @@ var publicArtifactDownloadContract = c19.router({
|
|
|
8849
8964
|
});
|
|
8850
8965
|
|
|
8851
8966
|
// ../../packages/core/src/contracts/public/volumes.ts
|
|
8852
|
-
import { z as
|
|
8853
|
-
var
|
|
8854
|
-
var publicVolumeSchema =
|
|
8855
|
-
id:
|
|
8856
|
-
name:
|
|
8857
|
-
currentVersionId:
|
|
8858
|
-
size:
|
|
8967
|
+
import { z as z29 } from "zod";
|
|
8968
|
+
var c21 = initContract();
|
|
8969
|
+
var publicVolumeSchema = z29.object({
|
|
8970
|
+
id: z29.string(),
|
|
8971
|
+
name: z29.string(),
|
|
8972
|
+
currentVersionId: z29.string().nullable(),
|
|
8973
|
+
size: z29.number(),
|
|
8859
8974
|
// Total size in bytes
|
|
8860
|
-
fileCount:
|
|
8975
|
+
fileCount: z29.number(),
|
|
8861
8976
|
createdAt: timestampSchema,
|
|
8862
8977
|
updatedAt: timestampSchema
|
|
8863
8978
|
});
|
|
8864
|
-
var volumeVersionSchema =
|
|
8865
|
-
id:
|
|
8979
|
+
var volumeVersionSchema = z29.object({
|
|
8980
|
+
id: z29.string(),
|
|
8866
8981
|
// SHA-256 content hash
|
|
8867
|
-
volumeId:
|
|
8868
|
-
size:
|
|
8982
|
+
volumeId: z29.string(),
|
|
8983
|
+
size: z29.number(),
|
|
8869
8984
|
// Size in bytes
|
|
8870
|
-
fileCount:
|
|
8871
|
-
message:
|
|
8985
|
+
fileCount: z29.number(),
|
|
8986
|
+
message: z29.string().nullable(),
|
|
8872
8987
|
// Optional commit message
|
|
8873
|
-
createdBy:
|
|
8988
|
+
createdBy: z29.string(),
|
|
8874
8989
|
createdAt: timestampSchema
|
|
8875
8990
|
});
|
|
8876
8991
|
var publicVolumeDetailSchema = publicVolumeSchema.extend({
|
|
@@ -8878,7 +8993,7 @@ var publicVolumeDetailSchema = publicVolumeSchema.extend({
|
|
|
8878
8993
|
});
|
|
8879
8994
|
var paginatedVolumesSchema = createPaginatedResponseSchema(publicVolumeSchema);
|
|
8880
8995
|
var paginatedVolumeVersionsSchema = createPaginatedResponseSchema(volumeVersionSchema);
|
|
8881
|
-
var publicVolumesListContract =
|
|
8996
|
+
var publicVolumesListContract = c21.router({
|
|
8882
8997
|
list: {
|
|
8883
8998
|
method: "GET",
|
|
8884
8999
|
path: "/v1/volumes",
|
|
@@ -8893,13 +9008,13 @@ var publicVolumesListContract = c20.router({
|
|
|
8893
9008
|
description: "List all volumes in the current scope with pagination"
|
|
8894
9009
|
}
|
|
8895
9010
|
});
|
|
8896
|
-
var publicVolumeByIdContract =
|
|
9011
|
+
var publicVolumeByIdContract = c21.router({
|
|
8897
9012
|
get: {
|
|
8898
9013
|
method: "GET",
|
|
8899
9014
|
path: "/v1/volumes/:id",
|
|
8900
9015
|
headers: authHeadersSchema,
|
|
8901
|
-
pathParams:
|
|
8902
|
-
id:
|
|
9016
|
+
pathParams: z29.object({
|
|
9017
|
+
id: z29.string().min(1, "Volume ID is required")
|
|
8903
9018
|
}),
|
|
8904
9019
|
responses: {
|
|
8905
9020
|
200: publicVolumeDetailSchema,
|
|
@@ -8911,13 +9026,13 @@ var publicVolumeByIdContract = c20.router({
|
|
|
8911
9026
|
description: "Get volume details by ID"
|
|
8912
9027
|
}
|
|
8913
9028
|
});
|
|
8914
|
-
var publicVolumeVersionsContract =
|
|
9029
|
+
var publicVolumeVersionsContract = c21.router({
|
|
8915
9030
|
list: {
|
|
8916
9031
|
method: "GET",
|
|
8917
9032
|
path: "/v1/volumes/:id/versions",
|
|
8918
9033
|
headers: authHeadersSchema,
|
|
8919
|
-
pathParams:
|
|
8920
|
-
id:
|
|
9034
|
+
pathParams: z29.object({
|
|
9035
|
+
id: z29.string().min(1, "Volume ID is required")
|
|
8921
9036
|
}),
|
|
8922
9037
|
query: listQuerySchema,
|
|
8923
9038
|
responses: {
|
|
@@ -8930,20 +9045,20 @@ var publicVolumeVersionsContract = c20.router({
|
|
|
8930
9045
|
description: "List all versions of a volume with pagination"
|
|
8931
9046
|
}
|
|
8932
9047
|
});
|
|
8933
|
-
var publicVolumeDownloadContract =
|
|
9048
|
+
var publicVolumeDownloadContract = c21.router({
|
|
8934
9049
|
download: {
|
|
8935
9050
|
method: "GET",
|
|
8936
9051
|
path: "/v1/volumes/:id/download",
|
|
8937
9052
|
headers: authHeadersSchema,
|
|
8938
|
-
pathParams:
|
|
8939
|
-
id:
|
|
9053
|
+
pathParams: z29.object({
|
|
9054
|
+
id: z29.string().min(1, "Volume ID is required")
|
|
8940
9055
|
}),
|
|
8941
|
-
query:
|
|
8942
|
-
versionId:
|
|
9056
|
+
query: z29.object({
|
|
9057
|
+
versionId: z29.string().optional()
|
|
8943
9058
|
// Defaults to current version
|
|
8944
9059
|
}),
|
|
8945
9060
|
responses: {
|
|
8946
|
-
302:
|
|
9061
|
+
302: z29.undefined(),
|
|
8947
9062
|
// Redirect to presigned URL
|
|
8948
9063
|
401: publicApiErrorSchema,
|
|
8949
9064
|
404: publicApiErrorSchema,
|
|
@@ -11240,7 +11355,7 @@ var benchmarkCommand = new Command4("benchmark").description(
|
|
|
11240
11355
|
});
|
|
11241
11356
|
|
|
11242
11357
|
// src/index.ts
|
|
11243
|
-
var version = true ? "3.11.
|
|
11358
|
+
var version = true ? "3.11.3" : "0.1.0";
|
|
11244
11359
|
program.name("vm0-runner").version(version).description("Self-hosted runner for VM0 agents");
|
|
11245
11360
|
program.addCommand(startCommand);
|
|
11246
11361
|
program.addCommand(doctorCommand);
|