@smartergpt/lexrunner 2.1.0 → 2.3.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/CHANGELOG.md +44 -0
- package/README.mcp.md +5 -1
- package/README.md +40 -33
- package/dist/{autopilot-JWIOXBCZ.js → autopilot-7PX6YG55.js} +1 -1
- package/dist/{chunk-SHSL643G.js → chunk-M6AAYMHH.js} +361 -291
- package/dist/cli.cjs +10463 -9961
- package/dist/cli.d.ts +231 -18
- package/dist/cli.js +9190 -8772
- package/dist/sdk/index.d.ts +5 -5
- package/mcp-server.mjs +7 -0
- package/package.json +3 -3
- package/schemas/plan.schema.json +203 -73
package/dist/sdk/index.d.ts
CHANGED
|
@@ -62,8 +62,8 @@ type GateStatus = z.infer<typeof GateStatus>;
|
|
|
62
62
|
* Merge status
|
|
63
63
|
*/
|
|
64
64
|
declare const MergeStatus: z.ZodEnum<{
|
|
65
|
-
success: "success";
|
|
66
65
|
error: "error";
|
|
66
|
+
success: "success";
|
|
67
67
|
conflict: "conflict";
|
|
68
68
|
}>;
|
|
69
69
|
type MergeStatus = z.infer<typeof MergeStatus>;
|
|
@@ -167,8 +167,8 @@ type MergeDryRunStartedPayload = z.infer<typeof MergeDryRunStartedPayload>;
|
|
|
167
167
|
declare const MergeDryRunFinishedPayload: z.ZodObject<{
|
|
168
168
|
item: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
|
|
169
169
|
status: z.ZodEnum<{
|
|
170
|
-
success: "success";
|
|
171
170
|
error: "error";
|
|
171
|
+
success: "success";
|
|
172
172
|
conflict: "conflict";
|
|
173
173
|
}>;
|
|
174
174
|
conflicts: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
@@ -188,8 +188,8 @@ type MergeConflictDetectedPayload = z.infer<typeof MergeConflictDetectedPayload>
|
|
|
188
188
|
declare const MergeFinishedPayload: z.ZodObject<{
|
|
189
189
|
item: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
|
|
190
190
|
status: z.ZodEnum<{
|
|
191
|
-
success: "success";
|
|
192
191
|
error: "error";
|
|
192
|
+
success: "success";
|
|
193
193
|
conflict: "conflict";
|
|
194
194
|
}>;
|
|
195
195
|
commit: z.ZodOptional<z.ZodString>;
|
|
@@ -595,8 +595,8 @@ declare const MergeDryRunFinishedEvent: z.ZodObject<{
|
|
|
595
595
|
payload: z.ZodObject<{
|
|
596
596
|
item: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
|
|
597
597
|
status: z.ZodEnum<{
|
|
598
|
-
success: "success";
|
|
599
598
|
error: "error";
|
|
599
|
+
success: "success";
|
|
600
600
|
conflict: "conflict";
|
|
601
601
|
}>;
|
|
602
602
|
conflicts: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
@@ -718,8 +718,8 @@ declare const MergeFinishedEvent: z.ZodObject<{
|
|
|
718
718
|
payload: z.ZodObject<{
|
|
719
719
|
item: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
|
|
720
720
|
status: z.ZodEnum<{
|
|
721
|
-
success: "success";
|
|
722
721
|
error: "error";
|
|
722
|
+
success: "success";
|
|
723
723
|
conflict: "conflict";
|
|
724
724
|
}>;
|
|
725
725
|
commit: z.ZodOptional<z.ZodString>;
|
package/mcp-server.mjs
CHANGED
|
@@ -190,6 +190,13 @@ const tools = {
|
|
|
190
190
|
},
|
|
191
191
|
},
|
|
192
192
|
|
|
193
|
+
materialize_attempt_input: {
|
|
194
|
+
description:
|
|
195
|
+
"Construct selected-work preparation input and correspondence without resources, network or dispatch",
|
|
196
|
+
inputSchema: core.SelectedWorkInputJsonSchema,
|
|
197
|
+
call: async (args) => canonicalToolResult(core.materializeAttemptInput(args)),
|
|
198
|
+
},
|
|
199
|
+
|
|
193
200
|
prepare_attempt: {
|
|
194
201
|
description:
|
|
195
202
|
"Prepare an ADR-010 assisted launch packet and envelope (requires ALLOW_MUTATIONS=true)",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smartergpt/lexrunner",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=24"
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"description": "Fan-out tasks as multiple PRs in parallel, then build a merge pyramid from the blocks. Compute dependency order, run gates locally, and merge cleanly.",
|
|
11
11
|
"repository": {
|
|
12
12
|
"type": "git",
|
|
13
|
-
"url": "git+https://github.com/
|
|
13
|
+
"url": "git+https://github.com/SmarterGPT/lexrunner.git"
|
|
14
14
|
},
|
|
15
15
|
"publishConfig": {
|
|
16
16
|
"access": "public",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"docs:surface:check": "node scripts/render-doc-surfaces.mjs --check",
|
|
104
104
|
"dogfood:ecosystem": "tsx scripts/dogfood-ecosystem.ts",
|
|
105
105
|
"test": "vitest run",
|
|
106
|
-
"test:git": "vitest run -c vitest.git.config.ts tests/release-prepare.spec.ts tests/promptsResolver.spec.ts tests/e2e-comprehensive.test.ts tests/autopilot-e2e-level3-4.spec.ts tests/deterministic-build.test.ts tests/e2e-merge-resume.spec.ts",
|
|
106
|
+
"test:git": "vitest run -c vitest.git.config.ts tests/release-prepare.spec.ts tests/promptsResolver.spec.ts tests/e2e-comprehensive.test.ts tests/autopilot-e2e-level3-4.spec.ts tests/deterministic-build.test.ts tests/e2e-merge-resume.spec.ts tests/e2e-frozen-git-inputs.spec.ts",
|
|
107
107
|
"test:isolation": "node scripts/verify-parallel-isolation.mjs",
|
|
108
108
|
"test:cli:slow": "vitest run -c vitest.slow-cli.config.ts",
|
|
109
109
|
"benchmark": "vitest bench -c vitest.benchmark.config.ts",
|
package/schemas/plan.schema.json
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
"$ref": "#/definitions/Plan",
|
|
7
7
|
"definitions": {
|
|
8
8
|
"Plan": {
|
|
9
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
9
10
|
"type": "object",
|
|
10
11
|
"properties": {
|
|
11
12
|
"schemaVersion": {
|
|
@@ -13,52 +14,57 @@
|
|
|
13
14
|
"pattern": "^1\\.\\d+\\.\\d+$"
|
|
14
15
|
},
|
|
15
16
|
"target": {
|
|
16
|
-
"
|
|
17
|
-
"
|
|
17
|
+
"default": "main",
|
|
18
|
+
"type": "string"
|
|
18
19
|
},
|
|
19
20
|
"policy": {
|
|
20
21
|
"type": "object",
|
|
21
22
|
"properties": {
|
|
22
23
|
"requiredGates": {
|
|
24
|
+
"default": [],
|
|
23
25
|
"type": "array",
|
|
24
26
|
"items": {
|
|
25
27
|
"type": "string"
|
|
26
|
-
}
|
|
27
|
-
"default": []
|
|
28
|
+
}
|
|
28
29
|
},
|
|
29
30
|
"optionalGates": {
|
|
31
|
+
"default": [],
|
|
30
32
|
"type": "array",
|
|
31
33
|
"items": {
|
|
32
34
|
"type": "string"
|
|
33
|
-
}
|
|
34
|
-
"default": []
|
|
35
|
+
}
|
|
35
36
|
},
|
|
36
37
|
"maxWorkers": {
|
|
38
|
+
"default": 1,
|
|
37
39
|
"type": "integer",
|
|
38
40
|
"minimum": 1,
|
|
39
|
-
"
|
|
41
|
+
"maximum": 9007199254740991
|
|
40
42
|
},
|
|
41
43
|
"retries": {
|
|
44
|
+
"default": {},
|
|
42
45
|
"type": "object",
|
|
46
|
+
"propertyNames": {
|
|
47
|
+
"type": "string"
|
|
48
|
+
},
|
|
43
49
|
"additionalProperties": {
|
|
44
50
|
"type": "object",
|
|
45
51
|
"properties": {
|
|
46
52
|
"maxAttempts": {
|
|
53
|
+
"default": 1,
|
|
47
54
|
"type": "integer",
|
|
48
55
|
"minimum": 1,
|
|
49
|
-
"
|
|
56
|
+
"maximum": 9007199254740991
|
|
50
57
|
},
|
|
51
58
|
"backoffSeconds": {
|
|
59
|
+
"default": 0,
|
|
52
60
|
"type": "number",
|
|
53
|
-
"minimum": 0
|
|
54
|
-
"default": 0
|
|
61
|
+
"minimum": 0
|
|
55
62
|
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
},
|
|
59
|
-
"default": {}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
60
65
|
},
|
|
61
66
|
"overrides": {
|
|
67
|
+
"default": {},
|
|
62
68
|
"type": "object",
|
|
63
69
|
"properties": {
|
|
64
70
|
"adminGreen": {
|
|
@@ -71,108 +77,113 @@
|
|
|
71
77
|
}
|
|
72
78
|
},
|
|
73
79
|
"requireReason": {
|
|
74
|
-
"
|
|
75
|
-
"
|
|
80
|
+
"default": false,
|
|
81
|
+
"type": "boolean"
|
|
76
82
|
}
|
|
77
|
-
}
|
|
78
|
-
"additionalProperties": false
|
|
83
|
+
}
|
|
79
84
|
}
|
|
80
|
-
}
|
|
81
|
-
"additionalProperties": false,
|
|
82
|
-
"default": {}
|
|
85
|
+
}
|
|
83
86
|
},
|
|
84
87
|
"blockOn": {
|
|
88
|
+
"default": [],
|
|
85
89
|
"type": "array",
|
|
86
90
|
"items": {
|
|
87
91
|
"type": "string"
|
|
88
|
-
}
|
|
89
|
-
"default": []
|
|
92
|
+
}
|
|
90
93
|
},
|
|
91
94
|
"mergeRule": {
|
|
95
|
+
"default": {
|
|
96
|
+
"type": "strict-required"
|
|
97
|
+
},
|
|
92
98
|
"type": "object",
|
|
93
99
|
"properties": {
|
|
94
100
|
"type": {
|
|
101
|
+
"default": "strict-required",
|
|
95
102
|
"type": "string",
|
|
96
103
|
"enum": [
|
|
97
104
|
"strict-required"
|
|
98
|
-
]
|
|
99
|
-
"default": "strict-required"
|
|
105
|
+
]
|
|
100
106
|
}
|
|
101
|
-
},
|
|
102
|
-
"additionalProperties": false,
|
|
103
|
-
"default": {
|
|
104
|
-
"type": "strict-required"
|
|
105
107
|
}
|
|
106
108
|
},
|
|
107
109
|
"performance": {
|
|
110
|
+
"default": {
|
|
111
|
+
"batchSize": 50,
|
|
112
|
+
"cacheTTLSeconds": 3600,
|
|
113
|
+
"enableCaching": true,
|
|
114
|
+
"throttleOnMemory": true,
|
|
115
|
+
"memoryThresholdPercent": 80
|
|
116
|
+
},
|
|
108
117
|
"type": "object",
|
|
109
118
|
"properties": {
|
|
110
119
|
"maxMemoryMB": {
|
|
111
120
|
"type": "integer",
|
|
112
|
-
"minimum": 128
|
|
121
|
+
"minimum": 128,
|
|
122
|
+
"maximum": 9007199254740991
|
|
113
123
|
},
|
|
114
124
|
"batchSize": {
|
|
125
|
+
"default": 50,
|
|
115
126
|
"type": "integer",
|
|
116
127
|
"minimum": 1,
|
|
117
|
-
"
|
|
128
|
+
"maximum": 9007199254740991
|
|
118
129
|
},
|
|
119
130
|
"cacheTTLSeconds": {
|
|
131
|
+
"default": 3600,
|
|
120
132
|
"type": "integer",
|
|
121
133
|
"minimum": 0,
|
|
122
|
-
"
|
|
134
|
+
"maximum": 9007199254740991
|
|
123
135
|
},
|
|
124
136
|
"enableCaching": {
|
|
125
|
-
"
|
|
126
|
-
"
|
|
137
|
+
"default": true,
|
|
138
|
+
"type": "boolean"
|
|
127
139
|
},
|
|
128
140
|
"throttleOnMemory": {
|
|
129
|
-
"
|
|
130
|
-
"
|
|
141
|
+
"default": true,
|
|
142
|
+
"type": "boolean"
|
|
131
143
|
},
|
|
132
144
|
"memoryThresholdPercent": {
|
|
145
|
+
"default": 80,
|
|
133
146
|
"type": "number",
|
|
134
147
|
"minimum": 0,
|
|
135
|
-
"maximum": 100
|
|
136
|
-
"default": 80
|
|
148
|
+
"maximum": 100
|
|
137
149
|
}
|
|
138
|
-
}
|
|
139
|
-
"additionalProperties": false,
|
|
140
|
-
"default": {}
|
|
150
|
+
}
|
|
141
151
|
},
|
|
142
|
-
|
|
152
|
+
"security": {
|
|
153
|
+
"default": {
|
|
154
|
+
"blockCritical": true,
|
|
155
|
+
"blockHigh": true,
|
|
156
|
+
"maxMedium": 5,
|
|
157
|
+
"maxLow": 10
|
|
158
|
+
},
|
|
143
159
|
"type": "object",
|
|
144
160
|
"properties": {
|
|
145
161
|
"blockCritical": {
|
|
146
|
-
"
|
|
147
|
-
"
|
|
162
|
+
"default": true,
|
|
163
|
+
"type": "boolean"
|
|
148
164
|
},
|
|
149
165
|
"blockHigh": {
|
|
150
|
-
"
|
|
151
|
-
"
|
|
166
|
+
"default": true,
|
|
167
|
+
"type": "boolean"
|
|
152
168
|
},
|
|
153
169
|
"maxMedium": {
|
|
170
|
+
"default": 5,
|
|
154
171
|
"type": "integer",
|
|
155
172
|
"minimum": 0,
|
|
156
|
-
"
|
|
173
|
+
"maximum": 9007199254740991
|
|
157
174
|
},
|
|
158
175
|
"maxLow": {
|
|
176
|
+
"default": 10,
|
|
159
177
|
"type": "integer",
|
|
160
178
|
"minimum": 0,
|
|
161
|
-
"
|
|
179
|
+
"maximum": 9007199254740991
|
|
162
180
|
}
|
|
163
|
-
},
|
|
164
|
-
"additionalProperties": false,
|
|
165
|
-
"default": {
|
|
166
|
-
"blockCritical": true,
|
|
167
|
-
"blockHigh": true,
|
|
168
|
-
"maxMedium": 5,
|
|
169
|
-
"maxLow": 10
|
|
170
181
|
}
|
|
171
182
|
}
|
|
172
|
-
}
|
|
173
|
-
"additionalProperties": false
|
|
183
|
+
}
|
|
174
184
|
},
|
|
175
185
|
"items": {
|
|
186
|
+
"default": [],
|
|
176
187
|
"type": "array",
|
|
177
188
|
"items": {
|
|
178
189
|
"type": "object",
|
|
@@ -181,13 +192,14 @@
|
|
|
181
192
|
"type": "string"
|
|
182
193
|
},
|
|
183
194
|
"deps": {
|
|
195
|
+
"default": [],
|
|
184
196
|
"type": "array",
|
|
185
197
|
"items": {
|
|
186
198
|
"type": "string"
|
|
187
|
-
}
|
|
188
|
-
"default": []
|
|
199
|
+
}
|
|
189
200
|
},
|
|
190
201
|
"gates": {
|
|
202
|
+
"default": [],
|
|
191
203
|
"type": "array",
|
|
192
204
|
"items": {
|
|
193
205
|
"type": "object",
|
|
@@ -202,20 +214,23 @@
|
|
|
202
214
|
"type": "string"
|
|
203
215
|
},
|
|
204
216
|
"env": {
|
|
217
|
+
"default": {},
|
|
205
218
|
"type": "object",
|
|
206
|
-
"
|
|
219
|
+
"propertyNames": {
|
|
207
220
|
"type": "string"
|
|
208
221
|
},
|
|
209
|
-
"
|
|
222
|
+
"additionalProperties": {
|
|
223
|
+
"type": "string"
|
|
224
|
+
}
|
|
210
225
|
},
|
|
211
226
|
"runtime": {
|
|
227
|
+
"default": "local",
|
|
212
228
|
"type": "string",
|
|
213
229
|
"enum": [
|
|
214
230
|
"local",
|
|
215
231
|
"container",
|
|
216
232
|
"ci-service"
|
|
217
|
-
]
|
|
218
|
-
"default": "local"
|
|
233
|
+
]
|
|
219
234
|
},
|
|
220
235
|
"container": {
|
|
221
236
|
"type": "object",
|
|
@@ -241,36 +256,37 @@
|
|
|
241
256
|
"type": "string"
|
|
242
257
|
},
|
|
243
258
|
"type": {
|
|
259
|
+
"default": "bind",
|
|
244
260
|
"type": "string",
|
|
245
261
|
"enum": [
|
|
246
262
|
"bind",
|
|
247
263
|
"volume"
|
|
248
|
-
]
|
|
249
|
-
"default": "bind"
|
|
264
|
+
]
|
|
250
265
|
}
|
|
251
266
|
},
|
|
252
267
|
"required": [
|
|
253
268
|
"source",
|
|
254
269
|
"target"
|
|
255
|
-
]
|
|
256
|
-
"additionalProperties": false
|
|
270
|
+
]
|
|
257
271
|
}
|
|
258
272
|
}
|
|
259
273
|
},
|
|
260
274
|
"required": [
|
|
261
275
|
"image"
|
|
262
|
-
]
|
|
263
|
-
"additionalProperties": false
|
|
276
|
+
]
|
|
264
277
|
},
|
|
265
278
|
"artifacts": {
|
|
279
|
+
"default": [],
|
|
266
280
|
"type": "array",
|
|
267
281
|
"items": {
|
|
268
282
|
"type": "string"
|
|
269
|
-
}
|
|
270
|
-
"default": []
|
|
283
|
+
}
|
|
271
284
|
},
|
|
272
285
|
"input": {
|
|
273
286
|
"type": "object",
|
|
287
|
+
"propertyNames": {
|
|
288
|
+
"type": "string"
|
|
289
|
+
},
|
|
274
290
|
"additionalProperties": {}
|
|
275
291
|
},
|
|
276
292
|
"timeoutMs": {
|
|
@@ -284,16 +300,130 @@
|
|
|
284
300
|
"run"
|
|
285
301
|
],
|
|
286
302
|
"additionalProperties": false
|
|
303
|
+
}
|
|
304
|
+
},
|
|
305
|
+
"tier": {
|
|
306
|
+
"type": "object",
|
|
307
|
+
"properties": {
|
|
308
|
+
"suggested": {
|
|
309
|
+
"type": "string",
|
|
310
|
+
"enum": [
|
|
311
|
+
"senior",
|
|
312
|
+
"mid",
|
|
313
|
+
"junior"
|
|
314
|
+
]
|
|
315
|
+
},
|
|
316
|
+
"actual": {
|
|
317
|
+
"type": "string",
|
|
318
|
+
"enum": [
|
|
319
|
+
"senior",
|
|
320
|
+
"mid",
|
|
321
|
+
"junior"
|
|
322
|
+
]
|
|
323
|
+
},
|
|
324
|
+
"escalated": {
|
|
325
|
+
"default": false,
|
|
326
|
+
"type": "boolean"
|
|
327
|
+
},
|
|
328
|
+
"escalationReason": {
|
|
329
|
+
"type": "string"
|
|
330
|
+
},
|
|
331
|
+
"mismatch": {
|
|
332
|
+
"type": "boolean"
|
|
333
|
+
}
|
|
287
334
|
},
|
|
288
|
-
"
|
|
335
|
+
"required": [
|
|
336
|
+
"suggested"
|
|
337
|
+
]
|
|
289
338
|
}
|
|
290
339
|
},
|
|
291
340
|
"required": [
|
|
292
341
|
"name"
|
|
293
342
|
],
|
|
294
343
|
"additionalProperties": false
|
|
344
|
+
}
|
|
345
|
+
},
|
|
346
|
+
"gitInputs": {
|
|
347
|
+
"type": "object",
|
|
348
|
+
"properties": {
|
|
349
|
+
"schemaVersion": {
|
|
350
|
+
"type": "string",
|
|
351
|
+
"const": "1.0.0"
|
|
352
|
+
},
|
|
353
|
+
"repository": {
|
|
354
|
+
"type": "string",
|
|
355
|
+
"maxLength": 2048
|
|
356
|
+
},
|
|
357
|
+
"checkoutRemote": {
|
|
358
|
+
"type": "string",
|
|
359
|
+
"maxLength": 64,
|
|
360
|
+
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
|
|
361
|
+
},
|
|
362
|
+
"acquisition": {
|
|
363
|
+
"type": "string",
|
|
364
|
+
"enum": [
|
|
365
|
+
"local-only",
|
|
366
|
+
"fetch"
|
|
367
|
+
]
|
|
368
|
+
},
|
|
369
|
+
"target": {
|
|
370
|
+
"type": "object",
|
|
371
|
+
"properties": {
|
|
372
|
+
"ref": {
|
|
373
|
+
"type": "string",
|
|
374
|
+
"maxLength": 512,
|
|
375
|
+
"pattern": "^refs\\/(?:heads\\/.+|pull\\/[1-9][0-9]*\\/head)$"
|
|
376
|
+
},
|
|
377
|
+
"commit": {
|
|
378
|
+
"type": "string",
|
|
379
|
+
"pattern": "^(?:[0-9a-f]{40}|[0-9a-f]{64})$"
|
|
380
|
+
}
|
|
381
|
+
},
|
|
382
|
+
"required": [
|
|
383
|
+
"ref",
|
|
384
|
+
"commit"
|
|
385
|
+
],
|
|
386
|
+
"additionalProperties": false
|
|
387
|
+
},
|
|
388
|
+
"sources": {
|
|
389
|
+
"maxItems": 256,
|
|
390
|
+
"type": "array",
|
|
391
|
+
"items": {
|
|
392
|
+
"type": "object",
|
|
393
|
+
"properties": {
|
|
394
|
+
"ref": {
|
|
395
|
+
"type": "string",
|
|
396
|
+
"maxLength": 512,
|
|
397
|
+
"pattern": "^refs\\/(?:heads\\/.+|pull\\/[1-9][0-9]*\\/head)$"
|
|
398
|
+
},
|
|
399
|
+
"commit": {
|
|
400
|
+
"type": "string",
|
|
401
|
+
"pattern": "^(?:[0-9a-f]{40}|[0-9a-f]{64})$"
|
|
402
|
+
},
|
|
403
|
+
"item": {
|
|
404
|
+
"type": "string",
|
|
405
|
+
"minLength": 1,
|
|
406
|
+
"maxLength": 512
|
|
407
|
+
}
|
|
408
|
+
},
|
|
409
|
+
"required": [
|
|
410
|
+
"ref",
|
|
411
|
+
"commit",
|
|
412
|
+
"item"
|
|
413
|
+
],
|
|
414
|
+
"additionalProperties": false
|
|
415
|
+
}
|
|
416
|
+
}
|
|
295
417
|
},
|
|
296
|
-
"
|
|
418
|
+
"required": [
|
|
419
|
+
"schemaVersion",
|
|
420
|
+
"repository",
|
|
421
|
+
"checkoutRemote",
|
|
422
|
+
"acquisition",
|
|
423
|
+
"target",
|
|
424
|
+
"sources"
|
|
425
|
+
],
|
|
426
|
+
"additionalProperties": false
|
|
297
427
|
}
|
|
298
428
|
},
|
|
299
429
|
"required": [
|