@executioncontrolprotocol/format-eql 0.10.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.
Files changed (110) hide show
  1. package/README.md +67 -0
  2. package/dist/decode/ast.d.ts +138 -0
  3. package/dist/decode/ast.d.ts.map +1 -0
  4. package/dist/decode/ast.js +2 -0
  5. package/dist/decode/ast.js.map +1 -0
  6. package/dist/decode/decode-eql.d.ts +9 -0
  7. package/dist/decode/decode-eql.d.ts.map +1 -0
  8. package/dist/decode/decode-eql.js +260 -0
  9. package/dist/decode/decode-eql.js.map +1 -0
  10. package/dist/decode/diagnostics.d.ts +10 -0
  11. package/dist/decode/diagnostics.d.ts.map +1 -0
  12. package/dist/decode/diagnostics.js +18 -0
  13. package/dist/decode/diagnostics.js.map +1 -0
  14. package/dist/decode/lexer.d.ts +5 -0
  15. package/dist/decode/lexer.d.ts.map +1 -0
  16. package/dist/decode/lexer.js +76 -0
  17. package/dist/decode/lexer.js.map +1 -0
  18. package/dist/decode/normalize-describe.d.ts +4 -0
  19. package/dist/decode/normalize-describe.d.ts.map +1 -0
  20. package/dist/decode/normalize-describe.js +42 -0
  21. package/dist/decode/normalize-describe.js.map +1 -0
  22. package/dist/decode/normalize-environment.d.ts +4 -0
  23. package/dist/decode/normalize-environment.d.ts.map +1 -0
  24. package/dist/decode/normalize-environment.js +43 -0
  25. package/dist/decode/normalize-environment.js.map +1 -0
  26. package/dist/decode/normalize-intent.d.ts +4 -0
  27. package/dist/decode/normalize-intent.d.ts.map +1 -0
  28. package/dist/decode/normalize-intent.js +10 -0
  29. package/dist/decode/normalize-intent.js.map +1 -0
  30. package/dist/decode/normalize-patch.d.ts +4 -0
  31. package/dist/decode/normalize-patch.d.ts.map +1 -0
  32. package/dist/decode/normalize-patch.js +119 -0
  33. package/dist/decode/normalize-patch.js.map +1 -0
  34. package/dist/decode/normalize-reply.d.ts +4 -0
  35. package/dist/decode/normalize-reply.d.ts.map +1 -0
  36. package/dist/decode/normalize-reply.js +18 -0
  37. package/dist/decode/normalize-reply.js.map +1 -0
  38. package/dist/decode/normalize-workflow.d.ts +4 -0
  39. package/dist/decode/normalize-workflow.d.ts.map +1 -0
  40. package/dist/decode/normalize-workflow.js +31 -0
  41. package/dist/decode/normalize-workflow.js.map +1 -0
  42. package/dist/decode/parser-environment.d.ts +9 -0
  43. package/dist/decode/parser-environment.d.ts.map +1 -0
  44. package/dist/decode/parser-environment.js +355 -0
  45. package/dist/decode/parser-environment.js.map +1 -0
  46. package/dist/decode/parser-harness.d.ts +5 -0
  47. package/dist/decode/parser-harness.d.ts.map +1 -0
  48. package/dist/decode/parser-harness.js +140 -0
  49. package/dist/decode/parser-harness.js.map +1 -0
  50. package/dist/decode/parser.d.ts +11 -0
  51. package/dist/decode/parser.d.ts.map +1 -0
  52. package/dist/decode/parser.js +372 -0
  53. package/dist/decode/parser.js.map +1 -0
  54. package/dist/decode/values.d.ts +24 -0
  55. package/dist/decode/values.d.ts.map +1 -0
  56. package/dist/decode/values.js +64 -0
  57. package/dist/decode/values.js.map +1 -0
  58. package/dist/encode/encode-describe.d.ts +5 -0
  59. package/dist/encode/encode-describe.d.ts.map +1 -0
  60. package/dist/encode/encode-describe.js +61 -0
  61. package/dist/encode/encode-describe.js.map +1 -0
  62. package/dist/encode/encode-environment.d.ts +5 -0
  63. package/dist/encode/encode-environment.d.ts.map +1 -0
  64. package/dist/encode/encode-environment.js +41 -0
  65. package/dist/encode/encode-environment.js.map +1 -0
  66. package/dist/encode/encode-eql.d.ts +9 -0
  67. package/dist/encode/encode-eql.d.ts.map +1 -0
  68. package/dist/encode/encode-eql.js +199 -0
  69. package/dist/encode/encode-eql.js.map +1 -0
  70. package/dist/encode/encode-intent.d.ts +5 -0
  71. package/dist/encode/encode-intent.d.ts.map +1 -0
  72. package/dist/encode/encode-intent.js +16 -0
  73. package/dist/encode/encode-intent.js.map +1 -0
  74. package/dist/encode/encode-patch.d.ts +5 -0
  75. package/dist/encode/encode-patch.d.ts.map +1 -0
  76. package/dist/encode/encode-patch.js +146 -0
  77. package/dist/encode/encode-patch.js.map +1 -0
  78. package/dist/encode/encode-reply.d.ts +5 -0
  79. package/dist/encode/encode-reply.d.ts.map +1 -0
  80. package/dist/encode/encode-reply.js +16 -0
  81. package/dist/encode/encode-reply.js.map +1 -0
  82. package/dist/encode/encode-workflow.d.ts +5 -0
  83. package/dist/encode/encode-workflow.d.ts.map +1 -0
  84. package/dist/encode/encode-workflow.js +39 -0
  85. package/dist/encode/encode-workflow.js.map +1 -0
  86. package/dist/encode/writer.d.ts +14 -0
  87. package/dist/encode/writer.d.ts.map +1 -0
  88. package/dist/encode/writer.js +56 -0
  89. package/dist/encode/writer.js.map +1 -0
  90. package/dist/extension.d.ts +3 -0
  91. package/dist/extension.d.ts.map +1 -0
  92. package/dist/extension.js +17 -0
  93. package/dist/extension.js.map +1 -0
  94. package/dist/index.d.ts +12 -0
  95. package/dist/index.d.ts.map +1 -0
  96. package/dist/index.js +17 -0
  97. package/dist/index.js.map +1 -0
  98. package/dist/schemas.d.ts +34 -0
  99. package/dist/schemas.d.ts.map +1 -0
  100. package/dist/schemas.js +22 -0
  101. package/dist/schemas.js.map +1 -0
  102. package/dist/validate-environment.d.ts +323 -0
  103. package/dist/validate-environment.d.ts.map +1 -0
  104. package/dist/validate-environment.js +78 -0
  105. package/dist/validate-environment.js.map +1 -0
  106. package/dist/validate-harness.d.ts +2 -0
  107. package/dist/validate-harness.d.ts.map +1 -0
  108. package/dist/validate-harness.js +2 -0
  109. package/dist/validate-harness.js.map +1 -0
  110. package/package.json +33 -0
@@ -0,0 +1,12 @@
1
+ import { type Registry } from "@executioncontrolprotocol/core";
2
+ export { formatEqlExtension } from "./extension.js";
3
+ export { encodeToEql } from "./encode/encode-eql.js";
4
+ export { decodeFromEql } from "./decode/decode-eql.js";
5
+ export type { EqlFormatOptions, EqlEncodeInput, EqlDecodeInput } from "./schemas.js";
6
+ export { encodeWorkflowToEql } from "./encode/encode-workflow.js";
7
+ export { encodePatchToEql } from "./encode/encode-patch.js";
8
+ export { encodeEnvironmentToEql } from "./encode/encode-environment.js";
9
+ export { encodeDescribeToEql } from "./encode/encode-describe.js";
10
+ /** Register `@executioncontrolprotocol/format-eql` in the global or provided registry. @category Extensions */
11
+ export declare function registerFormatEqlExtension(registry?: Registry): Promise<void>;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAKhG,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE,+GAA+G;AAC/G,wBAAsB,0BAA0B,CAC9C,QAAQ,GAAE,QAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAIf"}
package/dist/index.js ADDED
@@ -0,0 +1,17 @@
1
+ import { catalogExtension, globalRegistry } from "@executioncontrolprotocol/core";
2
+ import { formatEqlExtension } from "./extension.js";
3
+ catalogExtension(formatEqlExtension);
4
+ export { formatEqlExtension } from "./extension.js";
5
+ export { encodeToEql } from "./encode/encode-eql.js";
6
+ export { decodeFromEql } from "./decode/decode-eql.js";
7
+ export { encodeWorkflowToEql } from "./encode/encode-workflow.js";
8
+ export { encodePatchToEql } from "./encode/encode-patch.js";
9
+ export { encodeEnvironmentToEql } from "./encode/encode-environment.js";
10
+ export { encodeDescribeToEql } from "./encode/encode-describe.js";
11
+ /** Register `@executioncontrolprotocol/format-eql` in the global or provided registry. @category Extensions */
12
+ export async function registerFormatEqlExtension(registry = globalRegistry) {
13
+ if (!registry.getExtension("@executioncontrolprotocol/format-eql")) {
14
+ await registry.registerExtension(formatEqlExtension);
15
+ }
16
+ }
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAiB,MAAM,gCAAgC,CAAA;AAChG,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEnD,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE,+GAA+G;AAC/G,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,WAAqB,cAAc;IAEnC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,sCAAsC,CAAC,EAAE,CAAC;QACnE,MAAM,QAAQ,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;IACtD,CAAC;AACH,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { DecodeCapabilityInput, EcpDecodeOptions, EcpFormatOptions, EncodeCapabilityInput } from "@executioncontrolprotocol/types";
2
+ import { z } from "zod";
3
+ /** EQL-specific format options (intersect with {@link EcpFormatOptions}). @category Encoding */
4
+ export interface EqlFormatOptions {
5
+ preserveIds?: boolean;
6
+ quote?: "auto" | "always";
7
+ indent?: number;
8
+ }
9
+ export declare const eqlFormatOptionsSchema: z.ZodObject<{
10
+ headers: z.ZodOptional<z.ZodBoolean>;
11
+ strict: z.ZodOptional<z.ZodBoolean>;
12
+ preserveIds: z.ZodOptional<z.ZodBoolean>;
13
+ quote: z.ZodOptional<z.ZodEnum<["auto", "always"]>>;
14
+ indent: z.ZodOptional<z.ZodNumber>;
15
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
16
+ headers: z.ZodOptional<z.ZodBoolean>;
17
+ strict: z.ZodOptional<z.ZodBoolean>;
18
+ preserveIds: z.ZodOptional<z.ZodBoolean>;
19
+ quote: z.ZodOptional<z.ZodEnum<["auto", "always"]>>;
20
+ indent: z.ZodOptional<z.ZodNumber>;
21
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
22
+ headers: z.ZodOptional<z.ZodBoolean>;
23
+ strict: z.ZodOptional<z.ZodBoolean>;
24
+ preserveIds: z.ZodOptional<z.ZodBoolean>;
25
+ quote: z.ZodOptional<z.ZodEnum<["auto", "always"]>>;
26
+ indent: z.ZodOptional<z.ZodNumber>;
27
+ }, z.ZodTypeAny, "passthrough">>;
28
+ export type EqlEncodeInput<T = unknown> = EncodeCapabilityInput<T, EcpFormatOptions & EqlFormatOptions>;
29
+ export type EqlDecodeInput = DecodeCapabilityInput<EcpDecodeOptions & EqlFormatOptions>;
30
+ export declare function resolveEqlOptions(options?: (EcpFormatOptions | EcpDecodeOptions) & EqlFormatOptions): Required<Pick<EqlFormatOptions, "preserveIds" | "quote" | "indent">> & {
31
+ headers: boolean;
32
+ strict: boolean;
33
+ };
34
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,gGAAgG;AAChG,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;gCAQnB,CAAA;AAEhB,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI,qBAAqB,CAC7D,CAAC,EACD,gBAAgB,GAAG,gBAAgB,CACpC,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,qBAAqB,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,CAAA;AAEvF,wBAAgB,iBAAiB,CAC/B,OAAO,CAAC,EAAE,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,gBAAgB,GACjE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,aAAa,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC,GAAG;IACxE,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;CAChB,CAWA"}
@@ -0,0 +1,22 @@
1
+ import { z } from "zod";
2
+ export const eqlFormatOptionsSchema = z
3
+ .object({
4
+ headers: z.boolean().optional(),
5
+ strict: z.boolean().optional(),
6
+ preserveIds: z.boolean().optional(),
7
+ quote: z.enum(["auto", "always"]).optional(),
8
+ indent: z.number().int().positive().optional(),
9
+ })
10
+ .passthrough();
11
+ export function resolveEqlOptions(options) {
12
+ const headers = options?.headers;
13
+ const includeHeader = headers === undefined || headers === true || headers === "auto";
14
+ return {
15
+ headers: includeHeader,
16
+ strict: options?.strict !== false,
17
+ preserveIds: options?.preserveIds !== false,
18
+ quote: options?.quote ?? "auto",
19
+ indent: options?.indent ?? 2,
20
+ };
21
+ }
22
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AASvB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC/C,CAAC;KACD,WAAW,EAAE,CAAA;AAShB,MAAM,UAAU,iBAAiB,CAC/B,OAAkE;IAKlE,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,CAAA;IAChC,MAAM,aAAa,GACjB,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,MAAM,CAAA;IACjE,OAAO;QACL,OAAO,EAAE,aAAa;QACtB,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,KAAK;QACjC,WAAW,EAAE,OAAO,EAAE,WAAW,KAAK,KAAK;QAC3C,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,MAAM;QAC/B,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;KAC7B,CAAA;AACH,CAAC"}
@@ -0,0 +1,323 @@
1
+ import { z } from "zod";
2
+ /** Zod schema for `@executioncontrolprotocol.environment` manifests. */
3
+ export declare const environmentManifestSchema: z.ZodObject<{
4
+ schema: z.ZodLiteral<"@executioncontrolprotocol.environment">;
5
+ version: z.ZodString;
6
+ environment: z.ZodObject<{
7
+ id: z.ZodString;
8
+ label: z.ZodOptional<z.ZodString>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ id: string;
11
+ label?: string | undefined;
12
+ }, {
13
+ id: string;
14
+ label?: string | undefined;
15
+ }>;
16
+ runtime: z.ZodOptional<z.ZodObject<{
17
+ id: z.ZodString;
18
+ label: z.ZodOptional<z.ZodString>;
19
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ id: string;
22
+ label?: string | undefined;
23
+ config?: Record<string, unknown> | undefined;
24
+ }, {
25
+ id: string;
26
+ label?: string | undefined;
27
+ config?: Record<string, unknown> | undefined;
28
+ }>>;
29
+ extensions: z.ZodOptional<z.ZodArray<z.ZodObject<{
30
+ id: z.ZodString;
31
+ label: z.ZodOptional<z.ZodString>;
32
+ order: z.ZodNumber;
33
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ id: string;
36
+ order: number;
37
+ label?: string | undefined;
38
+ config?: Record<string, unknown> | undefined;
39
+ }, {
40
+ id: string;
41
+ order: number;
42
+ label?: string | undefined;
43
+ config?: Record<string, unknown> | undefined;
44
+ }>, "many">>;
45
+ policies: z.ZodOptional<z.ZodArray<z.ZodObject<{
46
+ id: z.ZodString;
47
+ label: z.ZodOptional<z.ZodString>;
48
+ order: z.ZodNumber;
49
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
50
+ }, "strip", z.ZodTypeAny, {
51
+ id: string;
52
+ order: number;
53
+ label?: string | undefined;
54
+ config?: Record<string, unknown> | undefined;
55
+ }, {
56
+ id: string;
57
+ order: number;
58
+ label?: string | undefined;
59
+ config?: Record<string, unknown> | undefined;
60
+ }>, "many">>;
61
+ }, "strip", z.ZodTypeAny, {
62
+ environment: {
63
+ id: string;
64
+ label?: string | undefined;
65
+ };
66
+ schema: "@executioncontrolprotocol.environment";
67
+ version: string;
68
+ runtime?: {
69
+ id: string;
70
+ label?: string | undefined;
71
+ config?: Record<string, unknown> | undefined;
72
+ } | undefined;
73
+ extensions?: {
74
+ id: string;
75
+ order: number;
76
+ label?: string | undefined;
77
+ config?: Record<string, unknown> | undefined;
78
+ }[] | undefined;
79
+ policies?: {
80
+ id: string;
81
+ order: number;
82
+ label?: string | undefined;
83
+ config?: Record<string, unknown> | undefined;
84
+ }[] | undefined;
85
+ }, {
86
+ environment: {
87
+ id: string;
88
+ label?: string | undefined;
89
+ };
90
+ schema: "@executioncontrolprotocol.environment";
91
+ version: string;
92
+ runtime?: {
93
+ id: string;
94
+ label?: string | undefined;
95
+ config?: Record<string, unknown> | undefined;
96
+ } | undefined;
97
+ extensions?: {
98
+ id: string;
99
+ order: number;
100
+ label?: string | undefined;
101
+ config?: Record<string, unknown> | undefined;
102
+ }[] | undefined;
103
+ policies?: {
104
+ id: string;
105
+ order: number;
106
+ label?: string | undefined;
107
+ config?: Record<string, unknown> | undefined;
108
+ }[] | undefined;
109
+ }>;
110
+ /** Zod schema for `@executioncontrolprotocol.environment.describe` documents. */
111
+ export declare const environmentDescribeSchema: z.ZodObject<{
112
+ schema: z.ZodLiteral<"@executioncontrolprotocol.environment.describe">;
113
+ version: z.ZodString;
114
+ environment: z.ZodObject<{
115
+ id: z.ZodString;
116
+ label: z.ZodOptional<z.ZodString>;
117
+ }, "strip", z.ZodTypeAny, {
118
+ id: string;
119
+ label?: string | undefined;
120
+ }, {
121
+ id: string;
122
+ label?: string | undefined;
123
+ }>;
124
+ runtime: z.ZodObject<{
125
+ id: z.ZodString;
126
+ label: z.ZodOptional<z.ZodString>;
127
+ features: z.ZodObject<{
128
+ durableExecution: z.ZodOptional<z.ZodBoolean>;
129
+ loops: z.ZodOptional<z.ZodBoolean>;
130
+ parallel: z.ZodOptional<z.ZodBoolean>;
131
+ branches: z.ZodOptional<z.ZodBoolean>;
132
+ pauses: z.ZodOptional<z.ZodBoolean>;
133
+ cancellation: z.ZodOptional<z.ZodBoolean>;
134
+ longRunningWorkflows: z.ZodOptional<z.ZodBoolean>;
135
+ }, "strip", z.ZodTypeAny, {
136
+ durableExecution?: boolean | undefined;
137
+ loops?: boolean | undefined;
138
+ parallel?: boolean | undefined;
139
+ branches?: boolean | undefined;
140
+ pauses?: boolean | undefined;
141
+ cancellation?: boolean | undefined;
142
+ longRunningWorkflows?: boolean | undefined;
143
+ }, {
144
+ durableExecution?: boolean | undefined;
145
+ loops?: boolean | undefined;
146
+ parallel?: boolean | undefined;
147
+ branches?: boolean | undefined;
148
+ pauses?: boolean | undefined;
149
+ cancellation?: boolean | undefined;
150
+ longRunningWorkflows?: boolean | undefined;
151
+ }>;
152
+ }, "strip", z.ZodTypeAny, {
153
+ features: {
154
+ durableExecution?: boolean | undefined;
155
+ loops?: boolean | undefined;
156
+ parallel?: boolean | undefined;
157
+ branches?: boolean | undefined;
158
+ pauses?: boolean | undefined;
159
+ cancellation?: boolean | undefined;
160
+ longRunningWorkflows?: boolean | undefined;
161
+ };
162
+ id: string;
163
+ label?: string | undefined;
164
+ }, {
165
+ features: {
166
+ durableExecution?: boolean | undefined;
167
+ loops?: boolean | undefined;
168
+ parallel?: boolean | undefined;
169
+ branches?: boolean | undefined;
170
+ pauses?: boolean | undefined;
171
+ cancellation?: boolean | undefined;
172
+ longRunningWorkflows?: boolean | undefined;
173
+ };
174
+ id: string;
175
+ label?: string | undefined;
176
+ }>;
177
+ extensions: z.ZodArray<z.ZodObject<{
178
+ id: z.ZodString;
179
+ label: z.ZodOptional<z.ZodString>;
180
+ order: z.ZodNumber;
181
+ configSchema: z.ZodOptional<z.ZodUnknown>;
182
+ capabilities: z.ZodArray<z.ZodString, "many">;
183
+ }, "strip", z.ZodTypeAny, {
184
+ id: string;
185
+ order: number;
186
+ capabilities: string[];
187
+ label?: string | undefined;
188
+ configSchema?: unknown;
189
+ }, {
190
+ id: string;
191
+ order: number;
192
+ capabilities: string[];
193
+ label?: string | undefined;
194
+ configSchema?: unknown;
195
+ }>, "many">;
196
+ capabilities: z.ZodArray<z.ZodObject<{
197
+ id: z.ZodString;
198
+ label: z.ZodOptional<z.ZodString>;
199
+ extension: z.ZodString;
200
+ inputSchema: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodString>, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
201
+ outputSchema: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodString>, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
202
+ examples: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
203
+ }, "strip", z.ZodTypeAny, {
204
+ id: string;
205
+ extension: string;
206
+ label?: string | undefined;
207
+ inputSchema?: Record<string, unknown> | Record<string, string> | undefined;
208
+ outputSchema?: Record<string, unknown> | Record<string, string> | undefined;
209
+ examples?: unknown[] | undefined;
210
+ }, {
211
+ id: string;
212
+ extension: string;
213
+ label?: string | undefined;
214
+ inputSchema?: Record<string, unknown> | Record<string, string> | undefined;
215
+ outputSchema?: Record<string, unknown> | Record<string, string> | undefined;
216
+ examples?: unknown[] | undefined;
217
+ }>, "many">;
218
+ policies: z.ZodArray<z.ZodObject<{
219
+ id: z.ZodString;
220
+ label: z.ZodOptional<z.ZodString>;
221
+ summary: z.ZodOptional<z.ZodString>;
222
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
223
+ configSchema: z.ZodOptional<z.ZodUnknown>;
224
+ }, "strip", z.ZodTypeAny, {
225
+ id: string;
226
+ label?: string | undefined;
227
+ config?: Record<string, unknown> | undefined;
228
+ summary?: string | undefined;
229
+ configSchema?: unknown;
230
+ }, {
231
+ id: string;
232
+ label?: string | undefined;
233
+ config?: Record<string, unknown> | undefined;
234
+ summary?: string | undefined;
235
+ configSchema?: unknown;
236
+ }>, "many">;
237
+ }, "strip", z.ZodTypeAny, {
238
+ environment: {
239
+ id: string;
240
+ label?: string | undefined;
241
+ };
242
+ schema: "@executioncontrolprotocol.environment.describe";
243
+ runtime: {
244
+ features: {
245
+ durableExecution?: boolean | undefined;
246
+ loops?: boolean | undefined;
247
+ parallel?: boolean | undefined;
248
+ branches?: boolean | undefined;
249
+ pauses?: boolean | undefined;
250
+ cancellation?: boolean | undefined;
251
+ longRunningWorkflows?: boolean | undefined;
252
+ };
253
+ id: string;
254
+ label?: string | undefined;
255
+ };
256
+ extensions: {
257
+ id: string;
258
+ order: number;
259
+ capabilities: string[];
260
+ label?: string | undefined;
261
+ configSchema?: unknown;
262
+ }[];
263
+ policies: {
264
+ id: string;
265
+ label?: string | undefined;
266
+ config?: Record<string, unknown> | undefined;
267
+ summary?: string | undefined;
268
+ configSchema?: unknown;
269
+ }[];
270
+ version: string;
271
+ capabilities: {
272
+ id: string;
273
+ extension: string;
274
+ label?: string | undefined;
275
+ inputSchema?: Record<string, unknown> | Record<string, string> | undefined;
276
+ outputSchema?: Record<string, unknown> | Record<string, string> | undefined;
277
+ examples?: unknown[] | undefined;
278
+ }[];
279
+ }, {
280
+ environment: {
281
+ id: string;
282
+ label?: string | undefined;
283
+ };
284
+ schema: "@executioncontrolprotocol.environment.describe";
285
+ runtime: {
286
+ features: {
287
+ durableExecution?: boolean | undefined;
288
+ loops?: boolean | undefined;
289
+ parallel?: boolean | undefined;
290
+ branches?: boolean | undefined;
291
+ pauses?: boolean | undefined;
292
+ cancellation?: boolean | undefined;
293
+ longRunningWorkflows?: boolean | undefined;
294
+ };
295
+ id: string;
296
+ label?: string | undefined;
297
+ };
298
+ extensions: {
299
+ id: string;
300
+ order: number;
301
+ capabilities: string[];
302
+ label?: string | undefined;
303
+ configSchema?: unknown;
304
+ }[];
305
+ policies: {
306
+ id: string;
307
+ label?: string | undefined;
308
+ config?: Record<string, unknown> | undefined;
309
+ summary?: string | undefined;
310
+ configSchema?: unknown;
311
+ }[];
312
+ version: string;
313
+ capabilities: {
314
+ id: string;
315
+ extension: string;
316
+ label?: string | undefined;
317
+ inputSchema?: Record<string, unknown> | Record<string, string> | undefined;
318
+ outputSchema?: Record<string, unknown> | Record<string, string> | undefined;
319
+ examples?: unknown[] | undefined;
320
+ }[];
321
+ }>;
322
+ export declare function isEqlTypesRecord(value: unknown): value is Record<string, string>;
323
+ //# sourceMappingURL=validate-environment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-environment.d.ts","sourceRoot":"","sources":["../src/validate-environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AASvB,wEAAwE;AACxE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBpC,CAAA;AAcF,iFAAiF;AACjF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwCpC,CAAA;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAKhF"}
@@ -0,0 +1,78 @@
1
+ import { z } from "zod";
2
+ const bindingSchema = z.object({
3
+ id: z.string().min(1),
4
+ label: z.string().optional(),
5
+ order: z.number().int().nonnegative(),
6
+ config: z.record(z.unknown()).optional(),
7
+ });
8
+ /** Zod schema for `@executioncontrolprotocol.environment` manifests. */
9
+ export const environmentManifestSchema = z.object({
10
+ schema: z.literal("@executioncontrolprotocol.environment"),
11
+ version: z.string(),
12
+ environment: z.object({
13
+ id: z.string().min(1),
14
+ label: z.string().optional(),
15
+ }),
16
+ runtime: z
17
+ .object({
18
+ id: z.string().min(1),
19
+ label: z.string().optional(),
20
+ config: z.record(z.unknown()).optional(),
21
+ })
22
+ .optional(),
23
+ extensions: z.array(bindingSchema).optional(),
24
+ policies: z.array(bindingSchema).optional(),
25
+ });
26
+ const runtimeFeaturesSchema = z.object({
27
+ durableExecution: z.boolean().optional(),
28
+ loops: z.boolean().optional(),
29
+ parallel: z.boolean().optional(),
30
+ branches: z.boolean().optional(),
31
+ pauses: z.boolean().optional(),
32
+ cancellation: z.boolean().optional(),
33
+ longRunningWorkflows: z.boolean().optional(),
34
+ });
35
+ const eqlTypesSchema = z.record(z.string());
36
+ /** Zod schema for `@executioncontrolprotocol.environment.describe` documents. */
37
+ export const environmentDescribeSchema = z.object({
38
+ schema: z.literal("@executioncontrolprotocol.environment.describe"),
39
+ version: z.string(),
40
+ environment: z.object({
41
+ id: z.string().min(1),
42
+ label: z.string().optional(),
43
+ }),
44
+ runtime: z.object({
45
+ id: z.string().min(1),
46
+ label: z.string().optional(),
47
+ features: runtimeFeaturesSchema,
48
+ }),
49
+ extensions: z.array(z.object({
50
+ id: z.string().min(1),
51
+ label: z.string().optional(),
52
+ order: z.number().int().nonnegative(),
53
+ configSchema: z.unknown().optional(),
54
+ capabilities: z.array(z.string()),
55
+ })),
56
+ capabilities: z.array(z.object({
57
+ id: z.string().min(1),
58
+ label: z.string().optional(),
59
+ extension: z.string().min(1),
60
+ inputSchema: z.union([eqlTypesSchema, z.record(z.unknown())]).optional(),
61
+ outputSchema: z.union([eqlTypesSchema, z.record(z.unknown())]).optional(),
62
+ examples: z.array(z.unknown()).optional(),
63
+ })),
64
+ policies: z.array(z.object({
65
+ id: z.string().min(1),
66
+ label: z.string().optional(),
67
+ summary: z.string().optional(),
68
+ config: z.record(z.unknown()).optional(),
69
+ configSchema: z.unknown().optional(),
70
+ })),
71
+ });
72
+ export function isEqlTypesRecord(value) {
73
+ if (value === null || typeof value !== "object" || Array.isArray(value)) {
74
+ return false;
75
+ }
76
+ return Object.values(value).every((v) => typeof v === "string");
77
+ }
78
+ //# sourceMappingURL=validate-environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-environment.js","sourceRoot":"","sources":["../src/validate-environment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { ecpIntentSchema, harnessReplySchema } from "@executioncontrolprotocol/types";
2
+ //# sourceMappingURL=validate-harness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-harness.d.ts","sourceRoot":"","sources":["../src/validate-harness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { ecpIntentSchema, harnessReplySchema } from "@executioncontrolprotocol/types";
2
+ //# sourceMappingURL=validate-harness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-harness.js","sourceRoot":"","sources":["../src/validate-harness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA"}
package/package.json ADDED
@@ -0,0 +1,33 @@
1
+ {
2
+ "name": "@executioncontrolprotocol/format-eql",
3
+ "version": "0.10.0",
4
+ "description": "ECP EQL format extension — SQL-like workflow and patch authoring",
5
+ "license": "Apache-2.0",
6
+ "type": "module",
7
+ "main": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "README.md"
18
+ ],
19
+ "scripts": {
20
+ "build": "tsc -b"
21
+ },
22
+ "peerDependencies": {
23
+ "@executioncontrolprotocol/core": "^0.10.0",
24
+ "@executioncontrolprotocol/types": "^0.10.0",
25
+ "zod": "^3.24.0"
26
+ },
27
+ "devDependencies": {
28
+ "@executioncontrolprotocol/core": "0.10.0",
29
+ "@executioncontrolprotocol/types": "0.10.0",
30
+ "typescript": "^5.7.0",
31
+ "zod": "^3.24.0"
32
+ }
33
+ }