@scarn/sdk 0.0.0 → 0.8.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/{chunk-4361gxk0.js → chunk-0y2fy5en.js} +7 -7
- package/dist/{chunk-rq3q8vg7.js → chunk-102vfpw4.js} +74 -69
- package/dist/{chunk-91p9vzcs.js → chunk-3ctaaseb.js} +405 -402
- package/dist/{chunk-9s07v9r1.js → chunk-4ggr8af6.js} +8 -8
- package/dist/chunk-5zsavw98.js +91 -0
- package/dist/chunk-63f90zky.js +39 -0
- package/dist/{chunk-tfm5hjzm.js → chunk-700xe701.js} +9 -9
- package/dist/{chunk-njd6npf0.js → chunk-ar6hcj1r.js} +6 -6
- package/dist/chunk-cdanncng.js +74 -0
- package/dist/chunk-dp86pa6m.js +68 -0
- package/dist/chunk-e1h021kq.js +86 -0
- package/dist/{chunk-ny07ncb9.js → chunk-gds7w7zh.js} +35 -35
- package/dist/chunk-k4y5qt4y.js +14 -0
- package/dist/{chunk-eg1hcvhb.js → chunk-mz53r914.js} +16 -16
- package/dist/{chunk-631ffb6r.js → chunk-ngy1fdcx.js} +10 -10
- package/dist/chunk-p7yrcmqm.js +322 -0
- package/dist/{chunk-h9yxx0hd.js → chunk-rt9tq4j6.js} +7 -7
- package/dist/{chunk-dnn39qt4.js → chunk-skzxcba3.js} +2960 -2217
- package/dist/{chunk-ynk2bjae.js → chunk-vfeytkqx.js} +89 -88
- package/dist/{chunk-56e4kp0a.js → chunk-y2pv8d6a.js} +19 -19
- package/dist/chunk-y64skrwp.js +17 -0
- package/dist/{chunk-qpw5wt1p.js → chunk-zm72ksz0.js} +26 -27
- package/dist/client.js +53 -52
- package/dist/contracts/artifact-markers.js +12 -11
- package/dist/contracts/artifacts.js +23 -21
- package/dist/contracts/pipeline-document/index.js +94 -92
- package/dist/contracts/step-artifact-submissions.js +17 -20
- package/dist/defaults/index.js +140 -139
- package/dist/definitions/pipelines/index.js +22 -20
- package/dist/definitions/steps/index.js +70 -67
- package/dist/definitions/validation/index.js +15 -13
- package/dist/devcontainer-config-path.js +11 -9
- package/dist/env-vars.js +33 -31
- package/dist/eslint.js +2 -0
- package/dist/generated/types.gen.d.ts +7 -0
- package/dist/git-url/git-repo-identity.js +2 -0
- package/dist/health-checks.js +17 -15
- package/dist/index.js +280 -277
- package/dist/jsonc.js +8 -7
- package/dist/managed-runtimes.js +11 -9
- package/dist/opencode-mcp.js +27 -25
- package/dist/pipelines/index.js +78 -75
- package/dist/pipelines/nodes.d.ts +1 -0
- package/dist/push/code-step-lookup.js +8 -7
- package/dist/push/index.js +51 -52
- package/dist/repo-config.js +21 -19
- package/dist/scarn-config-parser.js +6 -5
- package/package.json +1 -1
- package/dist/chunk-4vehh3dq.js +0 -333
- package/dist/chunk-5mmj03ah.js +0 -1074
- package/dist/chunk-b21233rt.js +0 -78
- package/dist/chunk-g0rdnn0r.js +0 -95
- package/dist/chunk-p6kc9wq8.js +0 -97
- package/dist/chunk-s0gap8r8.js +0 -14
- package/dist/chunk-zpqyjgb4.js +0 -49
package/dist/chunk-b21233rt.js
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
string,
|
|
4
|
-
object,
|
|
5
|
-
discriminatedUnion,
|
|
6
|
-
_enum,
|
|
7
|
-
literal
|
|
8
|
-
} from "./chunk-dnn39qt4.js";
|
|
9
|
-
|
|
10
|
-
// src/repo-config.ts
|
|
11
|
-
var MAX_REPO_COMMIT_MESSAGE_LENGTH2 = 500;
|
|
12
|
-
var REPO_COMMIT_MESSAGE_TOKEN_ROOTS2 = [
|
|
13
|
-
"input",
|
|
14
|
-
"result"
|
|
15
|
-
];
|
|
16
|
-
var TOKEN_PATTERN = /\{\{([^}]+)\}\}/g;
|
|
17
|
-
function findDisallowedCommitMessageTokenRoots2(message) {
|
|
18
|
-
const disallowed = [];
|
|
19
|
-
for (const match of message.matchAll(TOKEN_PATTERN)) {
|
|
20
|
-
const root = (match[1] ?? "").split(".")[0] ?? "";
|
|
21
|
-
if (!REPO_COMMIT_MESSAGE_TOKEN_ROOTS2.includes(root))
|
|
22
|
-
disallowed.push(root);
|
|
23
|
-
}
|
|
24
|
-
return disallowed;
|
|
25
|
-
}
|
|
26
|
-
var repoCommitMessageSchema2 = string().max(MAX_REPO_COMMIT_MESSAGE_LENGTH2).refine((message) => !/[\r\n]/.test(message), {
|
|
27
|
-
message: "must be a single line"
|
|
28
|
-
}).refine((message) => findDisallowedCommitMessageTokenRoots2(message).length === 0, {
|
|
29
|
-
message: `may only use {{${REPO_COMMIT_MESSAGE_TOKEN_ROOTS2.join(".\u2026}}, {{")}.\u2026}} tokens`
|
|
30
|
-
});
|
|
31
|
-
var onPushFailureSchema = _enum(["fail", "warn"]);
|
|
32
|
-
var repoConfigInputSchema2 = discriminatedUnion("mode", [
|
|
33
|
-
object({ mode: literal("none") }).strict(),
|
|
34
|
-
object({ mode: literal("readOnly") }).strict(),
|
|
35
|
-
object({
|
|
36
|
-
mode: literal("readWrite"),
|
|
37
|
-
message: repoCommitMessageSchema2.nullish(),
|
|
38
|
-
onPushFailure: onPushFailureSchema.optional()
|
|
39
|
-
}).strict()
|
|
40
|
-
]);
|
|
41
|
-
var repoConfigSchema2 = discriminatedUnion("mode", [
|
|
42
|
-
object({ mode: literal("none") }).strict(),
|
|
43
|
-
object({ mode: literal("readOnly") }).strict(),
|
|
44
|
-
object({
|
|
45
|
-
mode: literal("readWrite"),
|
|
46
|
-
message: repoCommitMessageSchema2.nullable(),
|
|
47
|
-
onPushFailure: onPushFailureSchema
|
|
48
|
-
}).strict()
|
|
49
|
-
]);
|
|
50
|
-
var REPO_RUNTIME_SUPPORT2 = {
|
|
51
|
-
workspace: {
|
|
52
|
-
modes: ["readOnly", "readWrite"],
|
|
53
|
-
default: "readWrite",
|
|
54
|
-
unsupportedBecause: "a devcontainer step reads its config from the clone"
|
|
55
|
-
},
|
|
56
|
-
no_workspace: {
|
|
57
|
-
modes: ["none"],
|
|
58
|
-
default: "none",
|
|
59
|
-
unsupportedBecause: "a host step has no clone"
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
function repoRuntimeMismatch2(executionMode, mode) {
|
|
63
|
-
const support = REPO_RUNTIME_SUPPORT2[executionMode];
|
|
64
|
-
return support.modes.includes(mode) ? null : support.unsupportedBecause;
|
|
65
|
-
}
|
|
66
|
-
function resolveRepoConfig2(executionMode, input) {
|
|
67
|
-
const mode = input?.mode ?? REPO_RUNTIME_SUPPORT2[executionMode].default;
|
|
68
|
-
if (mode !== "readWrite")
|
|
69
|
-
return { mode };
|
|
70
|
-
const readWrite = input?.mode === "readWrite" ? input : undefined;
|
|
71
|
-
return {
|
|
72
|
-
mode,
|
|
73
|
-
message: readWrite?.message ?? null,
|
|
74
|
-
onPushFailure: readWrite?.onPushFailure ?? "fail"
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export { MAX_REPO_COMMIT_MESSAGE_LENGTH2, REPO_COMMIT_MESSAGE_TOKEN_ROOTS2, findDisallowedCommitMessageTokenRoots2, repoCommitMessageSchema2, repoConfigInputSchema2, repoConfigSchema2, REPO_RUNTIME_SUPPORT2, repoRuntimeMismatch2, resolveRepoConfig2 };
|
package/dist/chunk-g0rdnn0r.js
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
string,
|
|
4
|
-
int,
|
|
5
|
-
boolean,
|
|
6
|
-
array,
|
|
7
|
-
object,
|
|
8
|
-
union,
|
|
9
|
-
discriminatedUnion,
|
|
10
|
-
record,
|
|
11
|
-
_enum,
|
|
12
|
-
literal
|
|
13
|
-
} from "./chunk-dnn39qt4.js";
|
|
14
|
-
|
|
15
|
-
// src/opencode-mcp.ts
|
|
16
|
-
var nonEmptyStringSchema = string().trim().min(1);
|
|
17
|
-
var mcpStringMapSchema = record(string(), string());
|
|
18
|
-
var positiveIntSchema = int().gt(0).max(Number.MAX_SAFE_INTEGER);
|
|
19
|
-
var openCodeMcpTimeoutSchema2 = object({
|
|
20
|
-
startup: positiveIntSchema.optional(),
|
|
21
|
-
catalog: positiveIntSchema.optional(),
|
|
22
|
-
execution: positiveIntSchema.optional()
|
|
23
|
-
}).strict();
|
|
24
|
-
var openCodeMcpProtocolSchema2 = _enum([
|
|
25
|
-
"legacy",
|
|
26
|
-
"auto",
|
|
27
|
-
"2026-07-28"
|
|
28
|
-
]);
|
|
29
|
-
var sharedServerFields = {
|
|
30
|
-
disabled: boolean().optional(),
|
|
31
|
-
codemode: boolean().optional(),
|
|
32
|
-
timeout: openCodeMcpTimeoutSchema2.optional(),
|
|
33
|
-
protocol: openCodeMcpProtocolSchema2.optional()
|
|
34
|
-
};
|
|
35
|
-
var openCodeMcpLocalConfigSchema2 = object({
|
|
36
|
-
type: literal("local"),
|
|
37
|
-
command: array(nonEmptyStringSchema).min(1),
|
|
38
|
-
cwd: string().optional(),
|
|
39
|
-
environment: mcpStringMapSchema.optional(),
|
|
40
|
-
...sharedServerFields
|
|
41
|
-
}).strict();
|
|
42
|
-
var openCodeMcpOAuthConfigSchema2 = object({
|
|
43
|
-
client_id: string().optional(),
|
|
44
|
-
client_secret: string().optional(),
|
|
45
|
-
scope: string().optional(),
|
|
46
|
-
callback_port: positiveIntSchema.optional(),
|
|
47
|
-
redirect_uri: string().optional(),
|
|
48
|
-
auth_server_metadata_url: string().optional()
|
|
49
|
-
}).strict();
|
|
50
|
-
var openCodeMcpRemoteConfigSchema2 = object({
|
|
51
|
-
type: literal("remote"),
|
|
52
|
-
url: string(),
|
|
53
|
-
headers: mcpStringMapSchema.optional(),
|
|
54
|
-
oauth: union([openCodeMcpOAuthConfigSchema2, literal(false)]).optional(),
|
|
55
|
-
...sharedServerFields
|
|
56
|
-
}).strict();
|
|
57
|
-
var openCodeMcpRefConfigSchema2 = object({
|
|
58
|
-
type: literal("ref"),
|
|
59
|
-
name: nonEmptyStringSchema.optional(),
|
|
60
|
-
...sharedServerFields
|
|
61
|
-
}).strict();
|
|
62
|
-
var openCodeResolvedMcpServerConfigSchema2 = discriminatedUnion("type", [openCodeMcpLocalConfigSchema2, openCodeMcpRemoteConfigSchema2]);
|
|
63
|
-
var openCodeResolvedMcpServersSchema2 = record(string(), openCodeResolvedMcpServerConfigSchema2);
|
|
64
|
-
var openCodeMcpServerConfigSchema2 = discriminatedUnion("type", [
|
|
65
|
-
openCodeMcpLocalConfigSchema2,
|
|
66
|
-
openCodeMcpRemoteConfigSchema2,
|
|
67
|
-
openCodeMcpRefConfigSchema2
|
|
68
|
-
]);
|
|
69
|
-
var openCodeMcpServersSchema2 = record(string(), openCodeMcpServerConfigSchema2);
|
|
70
|
-
var ENV_PLACEHOLDER_PATTERN = /\{env:[A-Za-z_][A-Za-z0-9_]*\}/gu;
|
|
71
|
-
var ENV_PLACEHOLDER_NAME_PATTERN = /\{env:([^}]+)\}/gu;
|
|
72
|
-
var AUTH_SCHEME_PATTERN = /^(?:bearer|basic|token)\s+/iu;
|
|
73
|
-
function isEnvPlaceholderValue2(value) {
|
|
74
|
-
if (value.match(ENV_PLACEHOLDER_PATTERN) === null)
|
|
75
|
-
return false;
|
|
76
|
-
return value.trim().replace(AUTH_SCHEME_PATTERN, "").replace(ENV_PLACEHOLDER_PATTERN, "").trim() === "";
|
|
77
|
-
}
|
|
78
|
-
function collectEnvPlaceholderNames2(value) {
|
|
79
|
-
const names = new Set;
|
|
80
|
-
const visit = (item) => {
|
|
81
|
-
if (typeof item === "string") {
|
|
82
|
-
for (const match of item.matchAll(ENV_PLACEHOLDER_NAME_PATTERN)) {
|
|
83
|
-
if (match[1] !== undefined)
|
|
84
|
-
names.add(match[1]);
|
|
85
|
-
}
|
|
86
|
-
} else if (typeof item === "object" && item !== null) {
|
|
87
|
-
for (const child of Object.values(item))
|
|
88
|
-
visit(child);
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
visit(value);
|
|
92
|
-
return [...names].sort();
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
export { openCodeMcpTimeoutSchema2, openCodeMcpProtocolSchema2, openCodeMcpLocalConfigSchema2, openCodeMcpOAuthConfigSchema2, openCodeMcpRemoteConfigSchema2, openCodeMcpRefConfigSchema2, openCodeResolvedMcpServerConfigSchema2, openCodeResolvedMcpServersSchema2, openCodeMcpServerConfigSchema2, openCodeMcpServersSchema2, isEnvPlaceholderValue2, collectEnvPlaceholderNames2 };
|
package/dist/chunk-p6kc9wq8.js
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
string,
|
|
4
|
-
boolean,
|
|
5
|
-
array,
|
|
6
|
-
object,
|
|
7
|
-
discriminatedUnion,
|
|
8
|
-
_enum,
|
|
9
|
-
literal
|
|
10
|
-
} from "./chunk-dnn39qt4.js";
|
|
11
|
-
|
|
12
|
-
// src/env-vars.ts
|
|
13
|
-
var ENV_VAR_NAME_PATTERN2 = /^[A-Z_][A-Z0-9_]*$/;
|
|
14
|
-
var RESERVED_ENV_VAR_NAMES2 = [
|
|
15
|
-
"HOME",
|
|
16
|
-
"XDG_CONFIG_HOME",
|
|
17
|
-
"XDG_DATA_HOME",
|
|
18
|
-
"OPENCODE_CONFIG_CONTENT",
|
|
19
|
-
"npm_config_cache"
|
|
20
|
-
];
|
|
21
|
-
var RESERVED_ENV_VAR_PREFIX2 = "SCARN_";
|
|
22
|
-
var MAX_ENV_VARS2 = 64;
|
|
23
|
-
var MAX_ENV_VAR_NAME_LENGTH2 = 128;
|
|
24
|
-
var MAX_ENV_VAR_VALUE_LENGTH2 = 4096;
|
|
25
|
-
var INPUT_TOKEN_PATTERN = /\{\{input\.[^}]+\}\}/;
|
|
26
|
-
function containsInputToken2(value) {
|
|
27
|
-
return INPUT_TOKEN_PATTERN.test(value);
|
|
28
|
-
}
|
|
29
|
-
function isReservedEnvVarName2(name) {
|
|
30
|
-
return name.startsWith(RESERVED_ENV_VAR_PREFIX2) || RESERVED_ENV_VAR_NAMES2.includes(name);
|
|
31
|
-
}
|
|
32
|
-
var envVarNameSchema = string().max(MAX_ENV_VAR_NAME_LENGTH2).regex(ENV_VAR_NAME_PATTERN2, "must match /^[A-Z_][A-Z0-9_]*$/").refine((name) => !isReservedEnvVarName2(name), {
|
|
33
|
-
message: `is reserved (SCARN_*, ${RESERVED_ENV_VAR_NAMES2.join(", ")})`
|
|
34
|
-
});
|
|
35
|
-
var envVarValueSchema = string().max(MAX_ENV_VAR_VALUE_LENGTH2);
|
|
36
|
-
var envVarAppliesValues2 = ["agent", "setup", "both"];
|
|
37
|
-
var envVarAppliesSchema = _enum(envVarAppliesValues2).default("agent");
|
|
38
|
-
function appliesToAgent2(applies) {
|
|
39
|
-
return applies !== "setup";
|
|
40
|
-
}
|
|
41
|
-
function appliesToSetup2(applies) {
|
|
42
|
-
return applies === "setup" || applies === "both";
|
|
43
|
-
}
|
|
44
|
-
function isUninheritableWorkerEnvVarName2(name) {
|
|
45
|
-
return name.toUpperCase().startsWith(RESERVED_ENV_VAR_PREFIX2);
|
|
46
|
-
}
|
|
47
|
-
var valueEnvVarSchema = object({
|
|
48
|
-
name: envVarNameSchema,
|
|
49
|
-
source: literal("value"),
|
|
50
|
-
value: envVarValueSchema,
|
|
51
|
-
secret: boolean(),
|
|
52
|
-
applies: envVarAppliesSchema
|
|
53
|
-
}).strict().refine((entry) => !entry.secret || containsInputToken2(entry.value), {
|
|
54
|
-
path: ["value"],
|
|
55
|
-
message: "a secret value must contain an {{input.\u2026}} token; a static secret would be stored in plaintext. Use Env.inherit({ secret: true }) instead"
|
|
56
|
-
});
|
|
57
|
-
var inheritEnvVarSchema = object({
|
|
58
|
-
name: envVarNameSchema,
|
|
59
|
-
source: literal("inherit"),
|
|
60
|
-
from: string().max(MAX_ENV_VAR_NAME_LENGTH2).regex(/^[A-Za-z_][A-Za-z0-9_]*$/, "must be a valid environment variable name").refine((from) => !isUninheritableWorkerEnvVarName2(from), {
|
|
61
|
-
message: `cannot read worker variables starting with ${RESERVED_ENV_VAR_PREFIX2}`
|
|
62
|
-
}),
|
|
63
|
-
secret: boolean(),
|
|
64
|
-
optional: boolean(),
|
|
65
|
-
default: envVarValueSchema.optional(),
|
|
66
|
-
mcp: string().min(1).optional(),
|
|
67
|
-
applies: envVarAppliesSchema
|
|
68
|
-
}).strict().refine((entry) => !(entry.secret && entry.default !== undefined), {
|
|
69
|
-
path: ["default"],
|
|
70
|
-
message: "a secret cannot carry a default; it would be stored in plaintext"
|
|
71
|
-
});
|
|
72
|
-
var envVarSpecSchema2 = discriminatedUnion("source", [
|
|
73
|
-
valueEnvVarSchema,
|
|
74
|
-
inheritEnvVarSchema
|
|
75
|
-
]);
|
|
76
|
-
var envVarsSchema2 = array(envVarSpecSchema2).max(MAX_ENV_VARS2).refine((entries) => new Set(entries.map((entry) => entry.name)).size === entries.length, { message: "environment variable names must be unique" });
|
|
77
|
-
var storedEnvVarsSchema2 = array(discriminatedUnion("source", [
|
|
78
|
-
object({
|
|
79
|
-
name: string(),
|
|
80
|
-
source: literal("value"),
|
|
81
|
-
value: string(),
|
|
82
|
-
secret: boolean(),
|
|
83
|
-
applies: _enum(envVarAppliesValues2).default("agent")
|
|
84
|
-
}),
|
|
85
|
-
object({
|
|
86
|
-
name: string(),
|
|
87
|
-
source: literal("inherit"),
|
|
88
|
-
from: string(),
|
|
89
|
-
secret: boolean(),
|
|
90
|
-
optional: boolean(),
|
|
91
|
-
default: string().optional(),
|
|
92
|
-
mcp: string().optional(),
|
|
93
|
-
applies: _enum(envVarAppliesValues2).default("agent")
|
|
94
|
-
})
|
|
95
|
-
]));
|
|
96
|
-
|
|
97
|
-
export { ENV_VAR_NAME_PATTERN2, RESERVED_ENV_VAR_NAMES2, RESERVED_ENV_VAR_PREFIX2, MAX_ENV_VARS2, MAX_ENV_VAR_NAME_LENGTH2, MAX_ENV_VAR_VALUE_LENGTH2, containsInputToken2, isReservedEnvVarName2, envVarAppliesValues2, appliesToAgent2, appliesToSetup2, isUninheritableWorkerEnvVarName2, envVarSpecSchema2, envVarsSchema2, storedEnvVarsSchema2 };
|
package/dist/chunk-s0gap8r8.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
_enum
|
|
4
|
-
} from "./chunk-dnn39qt4.js";
|
|
5
|
-
|
|
6
|
-
// src/managed-runtimes.ts
|
|
7
|
-
var MANAGED_RUNTIME_IDS2 = ["bun1", "node24"];
|
|
8
|
-
var DEFAULT_CODE_STEP_RUNTIME_ID2 = "bun1";
|
|
9
|
-
var managedRuntimeIdSchema2 = _enum(MANAGED_RUNTIME_IDS2);
|
|
10
|
-
function isManagedRuntimeId2(value) {
|
|
11
|
-
return MANAGED_RUNTIME_IDS2.includes(value);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export { MANAGED_RUNTIME_IDS2, DEFAULT_CODE_STEP_RUNTIME_ID2, managedRuntimeIdSchema2, isManagedRuntimeId2 };
|
package/dist/chunk-zpqyjgb4.js
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
string,
|
|
4
|
-
number,
|
|
5
|
-
int,
|
|
6
|
-
unknown,
|
|
7
|
-
array,
|
|
8
|
-
object,
|
|
9
|
-
discriminatedUnion,
|
|
10
|
-
record,
|
|
11
|
-
_enum,
|
|
12
|
-
literal,
|
|
13
|
-
preprocess
|
|
14
|
-
} from "./chunk-dnn39qt4.js";
|
|
15
|
-
|
|
16
|
-
// src/health-checks.ts
|
|
17
|
-
var healthCheckSeverityValues2 = ["required", "warn"];
|
|
18
|
-
var healthCheckBaseSchema = object({
|
|
19
|
-
name: string().trim().min(1).optional(),
|
|
20
|
-
severity: _enum(healthCheckSeverityValues2).default("required"),
|
|
21
|
-
timeoutSeconds: number().gt(0).max(3600).default(15),
|
|
22
|
-
serialGroup: string().trim().min(1).optional()
|
|
23
|
-
});
|
|
24
|
-
var toolHealthCheckSchema2 = healthCheckBaseSchema.extend({
|
|
25
|
-
kind: literal("tool").default("tool"),
|
|
26
|
-
tool: string().trim().min(1),
|
|
27
|
-
mcp: string().trim().min(1).optional(),
|
|
28
|
-
args: record(string(), unknown()).optional()
|
|
29
|
-
}).strict();
|
|
30
|
-
var cliHealthCheckSchema2 = healthCheckBaseSchema.extend({
|
|
31
|
-
kind: literal("cli"),
|
|
32
|
-
command: array(string().min(1)).min(1),
|
|
33
|
-
expectExitCode: int().default(0)
|
|
34
|
-
}).strict();
|
|
35
|
-
function injectDefaultKind(value) {
|
|
36
|
-
if (typeof value === "object" && value !== null && !("kind" in value)) {
|
|
37
|
-
return { ...value, kind: "tool" };
|
|
38
|
-
}
|
|
39
|
-
return value;
|
|
40
|
-
}
|
|
41
|
-
var healthCheckSchema2 = preprocess(injectDefaultKind, discriminatedUnion("kind", [toolHealthCheckSchema2, cliHealthCheckSchema2]));
|
|
42
|
-
var healthChecksSchema2 = array(healthCheckSchema2);
|
|
43
|
-
var stepToolHealthCheckSchema2 = toolHealthCheckSchema2.omit({ mcp: true }).strict();
|
|
44
|
-
var stepHealthChecksInputSchema2 = array(preprocess(injectDefaultKind, discriminatedUnion("kind", [
|
|
45
|
-
stepToolHealthCheckSchema2,
|
|
46
|
-
cliHealthCheckSchema2
|
|
47
|
-
])));
|
|
48
|
-
|
|
49
|
-
export { healthCheckSeverityValues2, toolHealthCheckSchema2, cliHealthCheckSchema2, healthCheckSchema2, healthChecksSchema2, stepToolHealthCheckSchema2, stepHealthChecksInputSchema2 };
|