@shipfox/api-workflows-dto 9.3.0 → 10.0.0
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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +12 -0
- package/dist/schemas/job-execution.d.ts +2 -0
- package/dist/schemas/job-execution.d.ts.map +1 -1
- package/dist/schemas/step.d.ts +3 -0
- package/dist/schemas/step.d.ts.map +1 -1
- package/dist/schemas/step.js +8 -6
- package/dist/schemas/step.js.map +1 -1
- package/dist/schemas/workflow-run-detail.d.ts +4 -0
- package/dist/schemas/workflow-run-detail.d.ts.map +1 -1
- package/dist/tsconfig.test.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/schemas/step.test.ts +13 -0
- package/src/schemas/step.ts +7 -5
- package/tsconfig.build.tsbuildinfo +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
$ shipfox-swc
|
|
2
|
-
Successfully compiled: 14 files with swc (
|
|
2
|
+
Successfully compiled: 14 files with swc (211.85ms)
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @shipfox/api-workflows-dto
|
|
2
2
|
|
|
3
|
+
## 10.0.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 22bf8a2: Classifies runner agent harness startup failures separately from user-fixable agent configuration errors.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [43ce975]
|
|
12
|
+
- @shipfox/api-agent-dto@10.0.0
|
|
13
|
+
- @shipfox/inter-module@0.2.2
|
|
14
|
+
|
|
3
15
|
## 9.3.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
|
@@ -33,6 +33,7 @@ export declare const nextStepResponseSchema: z.ZodDiscriminatedUnion<[z.ZodObjec
|
|
|
33
33
|
output_invalid: "output_invalid";
|
|
34
34
|
agent_config_invalid: "agent_config_invalid";
|
|
35
35
|
agent_invocation_failed: "agent_invocation_failed";
|
|
36
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
36
37
|
}>>;
|
|
37
38
|
field: z.ZodOptional<z.ZodString>;
|
|
38
39
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -83,6 +84,7 @@ export declare const reportStepBodySchema: z.ZodObject<{
|
|
|
83
84
|
output_invalid: "output_invalid";
|
|
84
85
|
agent_config_invalid: "agent_config_invalid";
|
|
85
86
|
agent_invocation_failed: "agent_invocation_failed";
|
|
87
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
86
88
|
}>>;
|
|
87
89
|
field: z.ZodOptional<z.ZodString>;
|
|
88
90
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job-execution.d.ts","sourceRoot":"","sources":["../../src/schemas/job-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,wBAAwB,QAAW,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"job-execution.d.ts","sourceRoot":"","sources":["../../src/schemas/job-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,wBAAwB,QAAW,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAwBjC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEzE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwC7B,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAErE,eAAO,MAAM,wBAAwB;;;iBAOnC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
|
package/dist/schemas/step.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export declare const stepErrorReasonSchema: z.ZodEnum<{
|
|
|
10
10
|
output_invalid: "output_invalid";
|
|
11
11
|
agent_config_invalid: "agent_config_invalid";
|
|
12
12
|
agent_invocation_failed: "agent_invocation_failed";
|
|
13
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
13
14
|
}>;
|
|
14
15
|
export type StepErrorReasonDto = z.infer<typeof stepErrorReasonSchema>;
|
|
15
16
|
export declare const agentConfigIssueSchema: z.ZodEnum<{
|
|
@@ -41,6 +42,7 @@ export declare const stepErrorDtoSchema: z.ZodNullable<z.ZodObject<{
|
|
|
41
42
|
output_invalid: "output_invalid";
|
|
42
43
|
agent_config_invalid: "agent_config_invalid";
|
|
43
44
|
agent_invocation_failed: "agent_invocation_failed";
|
|
45
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
44
46
|
}>>;
|
|
45
47
|
field: z.ZodOptional<z.ZodString>;
|
|
46
48
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -89,6 +91,7 @@ export declare const stepDtoSchema: z.ZodObject<{
|
|
|
89
91
|
output_invalid: "output_invalid";
|
|
90
92
|
agent_config_invalid: "agent_config_invalid";
|
|
91
93
|
agent_invocation_failed: "agent_invocation_failed";
|
|
94
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
92
95
|
}>>;
|
|
93
96
|
field: z.ZodOptional<z.ZodString>;
|
|
94
97
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../../src/schemas/step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../../src/schemas/step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAWtB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAYhC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEvE,eAAO,MAAM,sBAAsB;;;;;;EAMjC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAIzE,eAAO,MAAM,uBAAuB;;;EAA4B,CAAC;AAEjE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE3E,eAAO,MAAM,6BAA6B,OAAO,CAAC;AAElD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkBlB,CAAC;AAEd,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;;iBAQjC,CAAC;AAEL,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE7E,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAexB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAqCvB,CAAC;AAEd,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
package/dist/schemas/step.js
CHANGED
|
@@ -2,11 +2,12 @@ import { z } from 'zod';
|
|
|
2
2
|
// Machine-readable cause of a step failure, for DB troubleshooting. The runner
|
|
3
3
|
// reports it and the server stores it as-is. The `checkout_*`, `git_unavailable`,
|
|
4
4
|
// `workspace_prep_failed`, and `setup_aborted` values cover setup-phase failures.
|
|
5
|
-
// For agent steps the cause is split: `agent_config_invalid` is a user-fixable
|
|
6
|
-
// configuration error
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
//
|
|
5
|
+
// For agent steps the cause is split three ways: `agent_config_invalid` is a user-fixable
|
|
6
|
+
// configuration error and carries an `agent_config_issue`; `agent_invocation_failed`
|
|
7
|
+
// covers a provider/API failure once the configuration is valid; and
|
|
8
|
+
// `agent_harness_unavailable` means the runner could not start its harness, so the model
|
|
9
|
+
// was never called. The latter carries no `agent_config_issue`, because every issue code
|
|
10
|
+
// names a user-fixable cause. (Aborts are never reported: the step loop stops before reporting.)
|
|
10
11
|
export const stepErrorReasonSchema = z.enum([
|
|
11
12
|
'checkout_failed',
|
|
12
13
|
'checkout_auth_failed',
|
|
@@ -17,7 +18,8 @@ export const stepErrorReasonSchema = z.enum([
|
|
|
17
18
|
'config_unresolvable',
|
|
18
19
|
'output_invalid',
|
|
19
20
|
'agent_config_invalid',
|
|
20
|
-
'agent_invocation_failed'
|
|
21
|
+
'agent_invocation_failed',
|
|
22
|
+
'agent_harness_unavailable'
|
|
21
23
|
]);
|
|
22
24
|
export const agentConfigIssueSchema = z.enum([
|
|
23
25
|
'step_config_invalid',
|
package/dist/schemas/step.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/schemas/step.ts"],"sourcesContent":["import {z} from 'zod';\n\n// Machine-readable cause of a step failure, for DB troubleshooting. The runner\n// reports it and the server stores it as-is. The `checkout_*`, `git_unavailable`,\n// `workspace_prep_failed`, and `setup_aborted` values cover setup-phase failures.\n// For agent steps the cause is split: `agent_config_invalid` is a user-fixable\n// configuration error (unknown provider, missing provider credentials on the runner,\n// wrong provider/model pair, missing model or prompt), while `agent_invocation_failed`\n// covers a genuine provider/API failure once the config is valid (network, 5xx, auth\n// rejected at call time). (Aborts are never reported: the step loop stops before reporting.)\nexport const stepErrorReasonSchema = z.enum([\n 'checkout_failed',\n 'checkout_auth_failed',\n 'checkout_unavailable',\n 'git_unavailable',\n 'workspace_prep_failed',\n 'setup_aborted',\n 'config_unresolvable',\n 'output_invalid',\n 'agent_config_invalid',\n 'agent_invocation_failed',\n]);\n\nexport type StepErrorReasonDto = z.infer<typeof stepErrorReasonSchema>;\n\nexport const agentConfigIssueSchema = z.enum([\n 'step_config_invalid',\n 'provider_not_configured',\n 'provider_unsupported',\n 'model_unavailable',\n 'credentials_invalid',\n]);\n\nexport type AgentConfigIssueDto = z.infer<typeof agentConfigIssueSchema>;\n\n// Whether a failure is infrastructure (`setup`) or user-code (`user`). Server-derived\n// from the step's type on the read path; the runner never sends it.\nexport const stepErrorCategorySchema = z.enum(['setup', 'user']);\n\nexport type StepErrorCategoryDto = z.infer<typeof stepErrorCategorySchema>;\n\nexport const STEP_ERROR_MESSAGE_MAX_LENGTH = 2048;\n\nexport const stepErrorDtoSchema = z\n .object({\n message: z.string().max(STEP_ERROR_MESSAGE_MAX_LENGTH),\n exit_code: z.number().int().nullable().optional(),\n signal: z.string().optional(),\n reason: stepErrorReasonSchema.optional(),\n field: z.string().optional(),\n source: z.string().optional(),\n agent_config_issue: agentConfigIssueSchema.optional(),\n category: stepErrorCategorySchema.optional(),\n })\n .refine(\n (error) => error.agent_config_issue === undefined || error.reason === 'agent_config_invalid',\n {\n message: 'agent_config_issue requires reason to be agent_config_invalid',\n path: ['agent_config_issue'],\n },\n )\n .nullable();\n\nexport type StepErrorDto = z.infer<typeof stepErrorDtoSchema>;\n\nexport const stepSourceLocationSchema = z\n .object({\n start_line: z.number().int().positive(),\n end_line: z.number().int().positive(),\n })\n .refine((value) => value.end_line >= value.start_line, {\n message: 'end_line must be greater than or equal to start_line',\n path: ['end_line'],\n });\n\nexport type StepSourceLocationDto = z.infer<typeof stepSourceLocationSchema>;\n\nexport const stepDtoSchema = z.object({\n id: z.string().uuid(),\n job_execution_id: z.string().uuid(),\n key: z.string().nullable(),\n name: z.string(),\n source_location: stepSourceLocationSchema.nullable(),\n status: z.string(),\n type: z.string(),\n config: z.record(z.string(), z.unknown()),\n error: stepErrorDtoSchema,\n position: z.number(),\n // Execution-attempt identity of the current projection (>1 after a restart).\n current_attempt: z.number().int(),\n created_at: z.string(),\n updated_at: z.string(),\n});\n\nexport type StepDto = z.infer<typeof stepDtoSchema>;\n\nexport const stepGateResultDtoSchema = z\n .discriminatedUnion('kind', [\n z.object({\n kind: z.literal('none'),\n }),\n z.object({\n kind: z.literal('not_evaluated'),\n }),\n z.object({\n kind: z.literal('passed'),\n passed: z.literal(true),\n source: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('failed'),\n passed: z.literal(false),\n source: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('uncheckable'),\n passed: z.literal(false),\n uncheckable: z.literal(true),\n reason: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('evaluation_error'),\n reason: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('unknown'),\n data: z.record(z.string(), z.unknown()),\n }),\n ])\n .nullable();\n\nexport type StepGateResultDto = z.infer<typeof stepGateResultDtoSchema>;\n\n// One execution attempt of a step (the durable history behind the current\n// projection). Surfaced in run details so a restarted step's attempts are visible.\nexport const stepAttemptDtoSchema = z.object({\n id: z.string().uuid(),\n step_id: z.string().uuid(),\n attempt: z.number().int().positive(),\n execution_order: z.number().int().positive(),\n status: z.string(),\n exit_code: z.number().int().nullable(),\n // `output` and `error` are opaque audit blobs: the raw jsonb persisted for the\n // attempt, NOT snake_case-normalized (their nested keys may be camelCase, e.g.\n // `error.exitCode`). Consume the top-level snake_case `exit_code` for the\n // numeric code; treat these as display/debug payloads.\n output: z.record(z.string(), z.unknown()).nullable(),\n outputs: z.record(z.string(), z.unknown()).nullable(),\n response: z.string().nullable(),\n error: z.record(z.string(), z.unknown()).nullable(),\n // `unknown.data` is the raw jsonb gate payload for legacy or unrecognized\n // rows; nested keys are not snake_case-normalized.\n gate_result: stepGateResultDtoSchema,\n restart_feedback: z.string().nullable(),\n started_at: z.string(),\n finished_at: z.string().nullable(),\n});\n\nexport type StepAttemptDto = z.infer<typeof stepAttemptDtoSchema>;\n"],"names":["z","stepErrorReasonSchema","enum","agentConfigIssueSchema","stepErrorCategorySchema","STEP_ERROR_MESSAGE_MAX_LENGTH","stepErrorDtoSchema","object","message","string","max","exit_code","number","int","nullable","optional","signal","reason","field","source","agent_config_issue","category","refine","error","undefined","path","stepSourceLocationSchema","start_line","positive","end_line","value","stepDtoSchema","id","uuid","job_execution_id","key","name","source_location","status","type","config","record","unknown","position","current_attempt","created_at","updated_at","stepGateResultDtoSchema","discriminatedUnion","kind","literal","passed","uncheckable","data","stepAttemptDtoSchema","step_id","attempt","execution_order","output","outputs","response","gate_result","restart_feedback","started_at","finished_at"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/schemas/step.ts"],"sourcesContent":["import {z} from 'zod';\n\n// Machine-readable cause of a step failure, for DB troubleshooting. The runner\n// reports it and the server stores it as-is. The `checkout_*`, `git_unavailable`,\n// `workspace_prep_failed`, and `setup_aborted` values cover setup-phase failures.\n// For agent steps the cause is split three ways: `agent_config_invalid` is a user-fixable\n// configuration error and carries an `agent_config_issue`; `agent_invocation_failed`\n// covers a provider/API failure once the configuration is valid; and\n// `agent_harness_unavailable` means the runner could not start its harness, so the model\n// was never called. The latter carries no `agent_config_issue`, because every issue code\n// names a user-fixable cause. (Aborts are never reported: the step loop stops before reporting.)\nexport const stepErrorReasonSchema = z.enum([\n 'checkout_failed',\n 'checkout_auth_failed',\n 'checkout_unavailable',\n 'git_unavailable',\n 'workspace_prep_failed',\n 'setup_aborted',\n 'config_unresolvable',\n 'output_invalid',\n 'agent_config_invalid',\n 'agent_invocation_failed',\n 'agent_harness_unavailable',\n]);\n\nexport type StepErrorReasonDto = z.infer<typeof stepErrorReasonSchema>;\n\nexport const agentConfigIssueSchema = z.enum([\n 'step_config_invalid',\n 'provider_not_configured',\n 'provider_unsupported',\n 'model_unavailable',\n 'credentials_invalid',\n]);\n\nexport type AgentConfigIssueDto = z.infer<typeof agentConfigIssueSchema>;\n\n// Whether a failure is infrastructure (`setup`) or user-code (`user`). Server-derived\n// from the step's type on the read path; the runner never sends it.\nexport const stepErrorCategorySchema = z.enum(['setup', 'user']);\n\nexport type StepErrorCategoryDto = z.infer<typeof stepErrorCategorySchema>;\n\nexport const STEP_ERROR_MESSAGE_MAX_LENGTH = 2048;\n\nexport const stepErrorDtoSchema = z\n .object({\n message: z.string().max(STEP_ERROR_MESSAGE_MAX_LENGTH),\n exit_code: z.number().int().nullable().optional(),\n signal: z.string().optional(),\n reason: stepErrorReasonSchema.optional(),\n field: z.string().optional(),\n source: z.string().optional(),\n agent_config_issue: agentConfigIssueSchema.optional(),\n category: stepErrorCategorySchema.optional(),\n })\n .refine(\n (error) => error.agent_config_issue === undefined || error.reason === 'agent_config_invalid',\n {\n message: 'agent_config_issue requires reason to be agent_config_invalid',\n path: ['agent_config_issue'],\n },\n )\n .nullable();\n\nexport type StepErrorDto = z.infer<typeof stepErrorDtoSchema>;\n\nexport const stepSourceLocationSchema = z\n .object({\n start_line: z.number().int().positive(),\n end_line: z.number().int().positive(),\n })\n .refine((value) => value.end_line >= value.start_line, {\n message: 'end_line must be greater than or equal to start_line',\n path: ['end_line'],\n });\n\nexport type StepSourceLocationDto = z.infer<typeof stepSourceLocationSchema>;\n\nexport const stepDtoSchema = z.object({\n id: z.string().uuid(),\n job_execution_id: z.string().uuid(),\n key: z.string().nullable(),\n name: z.string(),\n source_location: stepSourceLocationSchema.nullable(),\n status: z.string(),\n type: z.string(),\n config: z.record(z.string(), z.unknown()),\n error: stepErrorDtoSchema,\n position: z.number(),\n // Execution-attempt identity of the current projection (>1 after a restart).\n current_attempt: z.number().int(),\n created_at: z.string(),\n updated_at: z.string(),\n});\n\nexport type StepDto = z.infer<typeof stepDtoSchema>;\n\nexport const stepGateResultDtoSchema = z\n .discriminatedUnion('kind', [\n z.object({\n kind: z.literal('none'),\n }),\n z.object({\n kind: z.literal('not_evaluated'),\n }),\n z.object({\n kind: z.literal('passed'),\n passed: z.literal(true),\n source: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('failed'),\n passed: z.literal(false),\n source: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('uncheckable'),\n passed: z.literal(false),\n uncheckable: z.literal(true),\n reason: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('evaluation_error'),\n reason: z.string(),\n exit_code: z.number().int().nullable(),\n }),\n z.object({\n kind: z.literal('unknown'),\n data: z.record(z.string(), z.unknown()),\n }),\n ])\n .nullable();\n\nexport type StepGateResultDto = z.infer<typeof stepGateResultDtoSchema>;\n\n// One execution attempt of a step (the durable history behind the current\n// projection). Surfaced in run details so a restarted step's attempts are visible.\nexport const stepAttemptDtoSchema = z.object({\n id: z.string().uuid(),\n step_id: z.string().uuid(),\n attempt: z.number().int().positive(),\n execution_order: z.number().int().positive(),\n status: z.string(),\n exit_code: z.number().int().nullable(),\n // `output` and `error` are opaque audit blobs: the raw jsonb persisted for the\n // attempt, NOT snake_case-normalized (their nested keys may be camelCase, e.g.\n // `error.exitCode`). Consume the top-level snake_case `exit_code` for the\n // numeric code; treat these as display/debug payloads.\n output: z.record(z.string(), z.unknown()).nullable(),\n outputs: z.record(z.string(), z.unknown()).nullable(),\n response: z.string().nullable(),\n error: z.record(z.string(), z.unknown()).nullable(),\n // `unknown.data` is the raw jsonb gate payload for legacy or unrecognized\n // rows; nested keys are not snake_case-normalized.\n gate_result: stepGateResultDtoSchema,\n restart_feedback: z.string().nullable(),\n started_at: z.string(),\n finished_at: z.string().nullable(),\n});\n\nexport type StepAttemptDto = z.infer<typeof stepAttemptDtoSchema>;\n"],"names":["z","stepErrorReasonSchema","enum","agentConfigIssueSchema","stepErrorCategorySchema","STEP_ERROR_MESSAGE_MAX_LENGTH","stepErrorDtoSchema","object","message","string","max","exit_code","number","int","nullable","optional","signal","reason","field","source","agent_config_issue","category","refine","error","undefined","path","stepSourceLocationSchema","start_line","positive","end_line","value","stepDtoSchema","id","uuid","job_execution_id","key","name","source_location","status","type","config","record","unknown","position","current_attempt","created_at","updated_at","stepGateResultDtoSchema","discriminatedUnion","kind","literal","passed","uncheckable","data","stepAttemptDtoSchema","step_id","attempt","execution_order","output","outputs","response","gate_result","restart_feedback","started_at","finished_at"],"mappings":"AAAA,SAAQA,CAAC,QAAO,MAAM;AAEtB,+EAA+E;AAC/E,kFAAkF;AAClF,kFAAkF;AAClF,0FAA0F;AAC1F,qFAAqF;AACrF,qEAAqE;AACrE,yFAAyF;AACzF,yFAAyF;AACzF,iGAAiG;AACjG,OAAO,MAAMC,wBAAwBD,EAAEE,IAAI,CAAC;IAC1C;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD,EAAE;AAIH,OAAO,MAAMC,yBAAyBH,EAAEE,IAAI,CAAC;IAC3C;IACA;IACA;IACA;IACA;CACD,EAAE;AAIH,sFAAsF;AACtF,oEAAoE;AACpE,OAAO,MAAME,0BAA0BJ,EAAEE,IAAI,CAAC;IAAC;IAAS;CAAO,EAAE;AAIjE,OAAO,MAAMG,gCAAgC,KAAK;AAElD,OAAO,MAAMC,qBAAqBN,EAC/BO,MAAM,CAAC;IACNC,SAASR,EAAES,MAAM,GAAGC,GAAG,CAACL;IACxBM,WAAWX,EAAEY,MAAM,GAAGC,GAAG,GAAGC,QAAQ,GAAGC,QAAQ;IAC/CC,QAAQhB,EAAES,MAAM,GAAGM,QAAQ;IAC3BE,QAAQhB,sBAAsBc,QAAQ;IACtCG,OAAOlB,EAAES,MAAM,GAAGM,QAAQ;IAC1BI,QAAQnB,EAAES,MAAM,GAAGM,QAAQ;IAC3BK,oBAAoBjB,uBAAuBY,QAAQ;IACnDM,UAAUjB,wBAAwBW,QAAQ;AAC5C,GACCO,MAAM,CACL,CAACC,QAAUA,MAAMH,kBAAkB,KAAKI,aAAaD,MAAMN,MAAM,KAAK,wBACtE;IACET,SAAS;IACTiB,MAAM;QAAC;KAAqB;AAC9B,GAEDX,QAAQ,GAAG;AAId,OAAO,MAAMY,2BAA2B1B,EACrCO,MAAM,CAAC;IACNoB,YAAY3B,EAAEY,MAAM,GAAGC,GAAG,GAAGe,QAAQ;IACrCC,UAAU7B,EAAEY,MAAM,GAAGC,GAAG,GAAGe,QAAQ;AACrC,GACCN,MAAM,CAAC,CAACQ,QAAUA,MAAMD,QAAQ,IAAIC,MAAMH,UAAU,EAAE;IACrDnB,SAAS;IACTiB,MAAM;QAAC;KAAW;AACpB,GAAG;AAIL,OAAO,MAAMM,gBAAgB/B,EAAEO,MAAM,CAAC;IACpCyB,IAAIhC,EAAES,MAAM,GAAGwB,IAAI;IACnBC,kBAAkBlC,EAAES,MAAM,GAAGwB,IAAI;IACjCE,KAAKnC,EAAES,MAAM,GAAGK,QAAQ;IACxBsB,MAAMpC,EAAES,MAAM;IACd4B,iBAAiBX,yBAAyBZ,QAAQ;IAClDwB,QAAQtC,EAAES,MAAM;IAChB8B,MAAMvC,EAAES,MAAM;IACd+B,QAAQxC,EAAEyC,MAAM,CAACzC,EAAES,MAAM,IAAIT,EAAE0C,OAAO;IACtCnB,OAAOjB;IACPqC,UAAU3C,EAAEY,MAAM;IAClB,6EAA6E;IAC7EgC,iBAAiB5C,EAAEY,MAAM,GAAGC,GAAG;IAC/BgC,YAAY7C,EAAES,MAAM;IACpBqC,YAAY9C,EAAES,MAAM;AACtB,GAAG;AAIH,OAAO,MAAMsC,0BAA0B/C,EACpCgD,kBAAkB,CAAC,QAAQ;IAC1BhD,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;IAClB;IACAlD,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;IAClB;IACAlD,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;QAChBC,QAAQnD,EAAEkD,OAAO,CAAC;QAClB/B,QAAQnB,EAAES,MAAM;QAChBE,WAAWX,EAAEY,MAAM,GAAGC,GAAG,GAAGC,QAAQ;IACtC;IACAd,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;QAChBC,QAAQnD,EAAEkD,OAAO,CAAC;QAClB/B,QAAQnB,EAAES,MAAM;QAChBE,WAAWX,EAAEY,MAAM,GAAGC,GAAG,GAAGC,QAAQ;IACtC;IACAd,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;QAChBC,QAAQnD,EAAEkD,OAAO,CAAC;QAClBE,aAAapD,EAAEkD,OAAO,CAAC;QACvBjC,QAAQjB,EAAES,MAAM;QAChBE,WAAWX,EAAEY,MAAM,GAAGC,GAAG,GAAGC,QAAQ;IACtC;IACAd,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;QAChBjC,QAAQjB,EAAES,MAAM;QAChBE,WAAWX,EAAEY,MAAM,GAAGC,GAAG,GAAGC,QAAQ;IACtC;IACAd,EAAEO,MAAM,CAAC;QACP0C,MAAMjD,EAAEkD,OAAO,CAAC;QAChBG,MAAMrD,EAAEyC,MAAM,CAACzC,EAAES,MAAM,IAAIT,EAAE0C,OAAO;IACtC;CACD,EACA5B,QAAQ,GAAG;AAId,0EAA0E;AAC1E,mFAAmF;AACnF,OAAO,MAAMwC,uBAAuBtD,EAAEO,MAAM,CAAC;IAC3CyB,IAAIhC,EAAES,MAAM,GAAGwB,IAAI;IACnBsB,SAASvD,EAAES,MAAM,GAAGwB,IAAI;IACxBuB,SAASxD,EAAEY,MAAM,GAAGC,GAAG,GAAGe,QAAQ;IAClC6B,iBAAiBzD,EAAEY,MAAM,GAAGC,GAAG,GAAGe,QAAQ;IAC1CU,QAAQtC,EAAES,MAAM;IAChBE,WAAWX,EAAEY,MAAM,GAAGC,GAAG,GAAGC,QAAQ;IACpC,+EAA+E;IAC/E,+EAA+E;IAC/E,0EAA0E;IAC1E,uDAAuD;IACvD4C,QAAQ1D,EAAEyC,MAAM,CAACzC,EAAES,MAAM,IAAIT,EAAE0C,OAAO,IAAI5B,QAAQ;IAClD6C,SAAS3D,EAAEyC,MAAM,CAACzC,EAAES,MAAM,IAAIT,EAAE0C,OAAO,IAAI5B,QAAQ;IACnD8C,UAAU5D,EAAES,MAAM,GAAGK,QAAQ;IAC7BS,OAAOvB,EAAEyC,MAAM,CAACzC,EAAES,MAAM,IAAIT,EAAE0C,OAAO,IAAI5B,QAAQ;IACjD,0EAA0E;IAC1E,mDAAmD;IACnD+C,aAAad;IACbe,kBAAkB9D,EAAES,MAAM,GAAGK,QAAQ;IACrCiD,YAAY/D,EAAES,MAAM;IACpBuD,aAAahE,EAAES,MAAM,GAAGK,QAAQ;AAClC,GAAG"}
|
|
@@ -62,6 +62,7 @@ export declare const workflowRunStepDetailDtoSchema: z.ZodObject<{
|
|
|
62
62
|
output_invalid: "output_invalid";
|
|
63
63
|
agent_config_invalid: "agent_config_invalid";
|
|
64
64
|
agent_invocation_failed: "agent_invocation_failed";
|
|
65
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
65
66
|
}>>;
|
|
66
67
|
field: z.ZodOptional<z.ZodString>;
|
|
67
68
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -211,6 +212,7 @@ export declare const workflowRunJobExecutionDetailDtoSchema: z.ZodObject<{
|
|
|
211
212
|
output_invalid: "output_invalid";
|
|
212
213
|
agent_config_invalid: "agent_config_invalid";
|
|
213
214
|
agent_invocation_failed: "agent_invocation_failed";
|
|
215
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
214
216
|
}>>;
|
|
215
217
|
field: z.ZodOptional<z.ZodString>;
|
|
216
218
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -435,6 +437,7 @@ export declare const workflowRunJobDetailDtoSchema: z.ZodObject<{
|
|
|
435
437
|
output_invalid: "output_invalid";
|
|
436
438
|
agent_config_invalid: "agent_config_invalid";
|
|
437
439
|
agent_invocation_failed: "agent_invocation_failed";
|
|
440
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
438
441
|
}>>;
|
|
439
442
|
field: z.ZodOptional<z.ZodString>;
|
|
440
443
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -706,6 +709,7 @@ export declare const workflowRunDetailResponseSchema: z.ZodObject<{
|
|
|
706
709
|
output_invalid: "output_invalid";
|
|
707
710
|
agent_config_invalid: "agent_config_invalid";
|
|
708
711
|
agent_invocation_failed: "agent_invocation_failed";
|
|
712
|
+
agent_harness_unavailable: "agent_harness_unavailable";
|
|
709
713
|
}>>;
|
|
710
714
|
field: z.ZodOptional<z.ZodString>;
|
|
711
715
|
source: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-run-detail.d.ts","sourceRoot":"","sources":["../../src/schemas/workflow-run-detail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAMtB,eAAO,MAAM,wBAAwB;;;;;;EAMnC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAehC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,8BAA8B
|
|
1
|
+
{"version":3,"file":"workflow-run-detail.d.ts","sourceRoot":"","sources":["../../src/schemas/workflow-run-detail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAMtB,eAAO,MAAM,wBAAwB;;;;;;EAMnC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAehC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEjD,CAAC;AAEH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAExC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAIpF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG1C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
|