@intentius/chant-lexicon-github 0.124.31 → 0.124.32

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 (151) hide show
  1. package/dist/action-pins.js +53 -0
  2. package/dist/codegen/docs-cli.js +2 -0
  3. package/dist/codegen/docs.js +142 -0
  4. package/dist/codegen/generate-cli.js +26 -0
  5. package/dist/codegen/generate-lexicon.js +36 -0
  6. package/dist/codegen/generate-typescript.js +108 -0
  7. package/dist/codegen/generate.js +111 -0
  8. package/dist/codegen/naming.js +49 -0
  9. package/dist/codegen/package.js +40 -0
  10. package/dist/codegen/parse.js +595 -0
  11. package/dist/codegen/patches.js +36 -0
  12. package/dist/components/ci-jobs.js +84 -0
  13. package/dist/components/generate-op-pipeline.js +440 -0
  14. package/dist/components/generate-op-waves-pipeline.js +158 -0
  15. package/dist/components/generate-pipeline.d.ts.map +1 -1
  16. package/dist/components/generate-pipeline.js +476 -0
  17. package/dist/composites/cache.js +17 -0
  18. package/dist/composites/catalog.js +859 -0
  19. package/dist/composites/checkout.js +25 -0
  20. package/dist/composites/dependabot.js +43 -0
  21. package/dist/composites/deploy-environment.js +38 -0
  22. package/dist/composites/docker-build.js +70 -0
  23. package/dist/composites/download-artifact.js +18 -0
  24. package/dist/composites/go-ci.js +62 -0
  25. package/dist/composites/index.js +15 -0
  26. package/dist/composites/node-ci.js +44 -0
  27. package/dist/composites/node-pipeline.js +96 -0
  28. package/dist/composites/pr-plan-report.js +129 -0
  29. package/dist/composites/python-ci.js +60 -0
  30. package/dist/composites/setup-go.js +18 -0
  31. package/dist/composites/setup-node.js +21 -0
  32. package/dist/composites/setup-python.js +18 -0
  33. package/dist/composites/upload-artifact.js +19 -0
  34. package/dist/coverage.js +32 -0
  35. package/dist/expression.js +177 -0
  36. package/dist/generated/index.js +26 -0
  37. package/dist/generated/runtime.js +4 -0
  38. package/dist/graph-edges.js +174 -0
  39. package/dist/import/generator.js +108 -0
  40. package/dist/import/parser.js +69 -0
  41. package/dist/index.js +22 -0
  42. package/dist/integrity.json +2 -2
  43. package/dist/lint/audit-catalog.js +69 -0
  44. package/dist/lint/audit-lineage.js +168 -0
  45. package/dist/lint/post-synth/gha006.js +50 -0
  46. package/dist/lint/post-synth/gha009.js +35 -0
  47. package/dist/lint/post-synth/gha011.js +34 -0
  48. package/dist/lint/post-synth/gha013.js +40 -0
  49. package/dist/lint/post-synth/gha017.js +25 -0
  50. package/dist/lint/post-synth/gha018.js +33 -0
  51. package/dist/lint/post-synth/gha019.js +58 -0
  52. package/dist/lint/post-synth/gha021.js +42 -0
  53. package/dist/lint/post-synth/gha022.js +44 -0
  54. package/dist/lint/post-synth/gha023.js +37 -0
  55. package/dist/lint/post-synth/gha024.js +32 -0
  56. package/dist/lint/post-synth/gha025.js +33 -0
  57. package/dist/lint/post-synth/gha026.js +32 -0
  58. package/dist/lint/post-synth/gha027.js +46 -0
  59. package/dist/lint/post-synth/gha028.js +28 -0
  60. package/dist/lint/post-synth/gha029.js +56 -0
  61. package/dist/lint/post-synth/gha030.js +35 -0
  62. package/dist/lint/post-synth/gha031.js +75 -0
  63. package/dist/lint/post-synth/gha032.js +35 -0
  64. package/dist/lint/post-synth/gha033.js +39 -0
  65. package/dist/lint/post-synth/gha034.js +35 -0
  66. package/dist/lint/post-synth/gha035.js +50 -0
  67. package/dist/lint/post-synth/gha036.js +37 -0
  68. package/dist/lint/post-synth/gha037.js +41 -0
  69. package/dist/lint/post-synth/gha038.js +35 -0
  70. package/dist/lint/post-synth/gha039.js +34 -0
  71. package/dist/lint/post-synth/gha040.js +36 -0
  72. package/dist/lint/post-synth/gha041.js +32 -0
  73. package/dist/lint/post-synth/gha042.js +33 -0
  74. package/dist/lint/post-synth/gha043.js +35 -0
  75. package/dist/lint/post-synth/gha044.js +36 -0
  76. package/dist/lint/post-synth/gha045.js +33 -0
  77. package/dist/lint/post-synth/gha046.js +55 -0
  78. package/dist/lint/post-synth/gha047.js +44 -0
  79. package/dist/lint/post-synth/gha048.js +34 -0
  80. package/dist/lint/post-synth/gha049.js +36 -0
  81. package/dist/lint/post-synth/gha050.js +37 -0
  82. package/dist/lint/post-synth/gha051.js +38 -0
  83. package/dist/lint/post-synth/gha052.js +35 -0
  84. package/dist/lint/post-synth/gha053.js +34 -0
  85. package/dist/lint/post-synth/gha054.js +35 -0
  86. package/dist/lint/post-synth/gha055.js +44 -0
  87. package/dist/lint/post-synth/gha056.js +32 -0
  88. package/dist/lint/post-synth/gha057.js +35 -0
  89. package/dist/lint/post-synth/gha058.js +42 -0
  90. package/dist/lint/post-synth/gha059.js +119 -0
  91. package/dist/lint/post-synth/gha060.js +129 -0
  92. package/dist/lint/post-synth/gha061.js +78 -0
  93. package/dist/lint/post-synth/gha062.js +65 -0
  94. package/dist/lint/post-synth/gha063.js +56 -0
  95. package/dist/lint/post-synth/gha064.js +47 -0
  96. package/dist/lint/post-synth/gha065.js +125 -0
  97. package/dist/lint/post-synth/gha066.js +40 -0
  98. package/dist/lint/post-synth/gha067.js +75 -0
  99. package/dist/lint/post-synth/gha068.js +47 -0
  100. package/dist/lint/post-synth/gha069.js +99 -0
  101. package/dist/lint/post-synth/index.js +114 -0
  102. package/dist/lint/post-synth/yaml-helpers.js +465 -0
  103. package/dist/lint/rules/data/action-usage-policy.js +16 -0
  104. package/dist/lint/rules/data/advisory-feed.js +15 -0
  105. package/dist/lint/rules/data/deprecated-versions.js +14 -0
  106. package/dist/lint/rules/data/flagged-actions.js +18 -0
  107. package/dist/lint/rules/data/known-action-slugs.js +38 -0
  108. package/dist/lint/rules/data/known-actions.js +12 -0
  109. package/dist/lint/rules/data/preinstalled-tools.js +36 -0
  110. package/dist/lint/rules/data/recommended-inputs.js +9 -0
  111. package/dist/lint/rules/data/risky-features.js +22 -0
  112. package/dist/lint/rules/data/secret-patterns.js +30 -0
  113. package/dist/lint/rules/data/trusted-action-owners.js +12 -0
  114. package/dist/lint/rules/data/untrusted-contexts.js +44 -0
  115. package/dist/lint/rules/deprecated-action-version.js +44 -0
  116. package/dist/lint/rules/detect-secrets.js +45 -0
  117. package/dist/lint/rules/extract-inline-structs.js +55 -0
  118. package/dist/lint/rules/file-job-limit.js +43 -0
  119. package/dist/lint/rules/index.js +16 -0
  120. package/dist/lint/rules/job-timeout.js +53 -0
  121. package/dist/lint/rules/missing-recommended-inputs.js +51 -0
  122. package/dist/lint/rules/no-hardcoded-secrets.js +39 -0
  123. package/dist/lint/rules/no-raw-expressions.js +44 -0
  124. package/dist/lint/rules/suggest-cache.js +60 -0
  125. package/dist/lint/rules/use-condition-builders.js +37 -0
  126. package/dist/lint/rules/use-matrix-builder.js +36 -0
  127. package/dist/lint/rules/use-typed-actions.js +41 -0
  128. package/dist/lint/rules/validate-concurrency.js +59 -0
  129. package/dist/lsp/completions.d.ts.map +1 -1
  130. package/dist/lsp/completions.js +18 -0
  131. package/dist/lsp/hover.d.ts.map +1 -1
  132. package/dist/lsp/hover.js +33 -0
  133. package/dist/manifest.json +1 -1
  134. package/dist/mcp/context-tools.js +152 -0
  135. package/dist/package-cli.js +20 -0
  136. package/dist/plugin.js +344 -0
  137. package/dist/serializer.js +572 -0
  138. package/dist/spec/fetch.js +46 -0
  139. package/dist/validate-cli.js +16 -0
  140. package/dist/validate.js +38 -0
  141. package/dist/variables.js +41 -0
  142. package/package.json +6 -6
  143. package/src/codegen/package.ts +2 -2
  144. package/src/components/__fixtures__/pr-loop-build.github.golden.yml +6 -2
  145. package/src/components/__fixtures__/pr-loop-waves.github.golden.yml +178 -0
  146. package/src/components/__fixtures__/pr-loop.github.golden.yml +6 -2
  147. package/src/components/generate-pipeline.ts +66 -29
  148. package/src/components/generate-pr-pipeline.test.ts +44 -20
  149. package/src/components/generate-pr-waves-pipeline.test.ts +117 -0
  150. package/src/lsp/completions.ts +2 -1
  151. package/src/lsp/hover.ts +2 -1
@@ -0,0 +1,859 @@
1
+ export const compositeCatalog = [
2
+ {
3
+ "name": "BunPipeline",
4
+ "lexicon": "github",
5
+ "description": "NodePipeline preset for Bun projects.",
6
+ "bundles": [
7
+ "Job",
8
+ "Workflow"
9
+ ],
10
+ "params": [
11
+ {
12
+ "name": "defaults",
13
+ "type": "{ buildJob?: Partial<ConstructorParameters<typeof Job>[0]>; testJob?: Partial<ConstructorParameters<typeof Job>[0]>; ...",
14
+ "required": false
15
+ },
16
+ {
17
+ "name": "nodeVersion",
18
+ "type": "string",
19
+ "required": false,
20
+ "description": "Node.js version."
21
+ },
22
+ {
23
+ "name": "installCommand",
24
+ "type": "string",
25
+ "required": false,
26
+ "description": "Override auto-detected install command"
27
+ },
28
+ {
29
+ "name": "buildScript",
30
+ "type": "string",
31
+ "required": false,
32
+ "description": "Build script name."
33
+ },
34
+ {
35
+ "name": "testScript",
36
+ "type": "string",
37
+ "required": false,
38
+ "description": "Test script name."
39
+ },
40
+ {
41
+ "name": "runsOn",
42
+ "type": "string",
43
+ "required": false,
44
+ "description": "Runner label."
45
+ },
46
+ {
47
+ "name": "artifactName",
48
+ "type": "string",
49
+ "required": false,
50
+ "description": "Artifact name."
51
+ },
52
+ {
53
+ "name": "buildArtifactPaths",
54
+ "type": "string[]",
55
+ "required": false,
56
+ "description": "Build artifact paths."
57
+ },
58
+ {
59
+ "name": "artifactRetentionDays",
60
+ "type": "number",
61
+ "required": false,
62
+ "description": "Artifact retention days."
63
+ },
64
+ {
65
+ "name": "packageManager",
66
+ "type": "\"npm\" | \"pnpm\" | \"yarn\" | \"bun\"",
67
+ "required": false,
68
+ "description": "Package manager."
69
+ }
70
+ ]
71
+ },
72
+ {
73
+ "name": "CacheAction",
74
+ "lexicon": "github",
75
+ "description": "Bundles Step.",
76
+ "bundles": [
77
+ "Step"
78
+ ],
79
+ "params": [
80
+ {
81
+ "name": "path",
82
+ "type": "string",
83
+ "required": true
84
+ },
85
+ {
86
+ "name": "key",
87
+ "type": "string",
88
+ "required": true
89
+ },
90
+ {
91
+ "name": "restoreKeys",
92
+ "type": "string[]",
93
+ "required": false
94
+ },
95
+ {
96
+ "name": "defaults",
97
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
98
+ "required": false
99
+ }
100
+ ]
101
+ },
102
+ {
103
+ "name": "Checkout",
104
+ "lexicon": "github",
105
+ "description": "Bundles Step.",
106
+ "bundles": [
107
+ "Step"
108
+ ],
109
+ "params": [
110
+ {
111
+ "name": "ref",
112
+ "type": "string",
113
+ "required": false
114
+ },
115
+ {
116
+ "name": "repository",
117
+ "type": "string",
118
+ "required": false
119
+ },
120
+ {
121
+ "name": "fetchDepth",
122
+ "type": "number",
123
+ "required": false
124
+ },
125
+ {
126
+ "name": "token",
127
+ "type": "string",
128
+ "required": false
129
+ },
130
+ {
131
+ "name": "submodules",
132
+ "type": "boolean | string",
133
+ "required": false
134
+ },
135
+ {
136
+ "name": "sshKey",
137
+ "type": "string",
138
+ "required": false
139
+ },
140
+ {
141
+ "name": "defaults",
142
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
143
+ "required": false
144
+ }
145
+ ]
146
+ },
147
+ {
148
+ "name": "DeployEnvironment",
149
+ "lexicon": "github",
150
+ "description": "Bundles Job.",
151
+ "bundles": [
152
+ "Job"
153
+ ],
154
+ "params": [
155
+ {
156
+ "name": "name",
157
+ "type": "string",
158
+ "required": true,
159
+ "description": "Environment name."
160
+ },
161
+ {
162
+ "name": "deployScript",
163
+ "type": "string | string[]",
164
+ "required": true,
165
+ "description": "Deploy command(s)."
166
+ },
167
+ {
168
+ "name": "cleanupScript",
169
+ "type": "string | string[]",
170
+ "required": false,
171
+ "description": "Cleanup command(s)."
172
+ },
173
+ {
174
+ "name": "url",
175
+ "type": "string",
176
+ "required": false,
177
+ "description": "Environment URL"
178
+ },
179
+ {
180
+ "name": "concurrencyGroup",
181
+ "type": "string",
182
+ "required": false,
183
+ "description": "Concurrency group."
184
+ },
185
+ {
186
+ "name": "cancelInProgress",
187
+ "type": "boolean",
188
+ "required": false,
189
+ "description": "Cancel in-progress deploys."
190
+ },
191
+ {
192
+ "name": "runsOn",
193
+ "type": "string",
194
+ "required": false,
195
+ "description": "Runner label."
196
+ },
197
+ {
198
+ "name": "defaults",
199
+ "type": "{ deployJob?: Partial<ConstructorParameters<typeof Job>[0]>; cleanupJob?: Partial<ConstructorParameters<typeof Job>[0...",
200
+ "required": false
201
+ }
202
+ ]
203
+ },
204
+ {
205
+ "name": "DockerBuild",
206
+ "lexicon": "github",
207
+ "description": "Bundles Job, Workflow.",
208
+ "bundles": [
209
+ "Job",
210
+ "Workflow"
211
+ ],
212
+ "params": [
213
+ {
214
+ "name": "tag",
215
+ "type": "string",
216
+ "required": false,
217
+ "description": "Image tag."
218
+ },
219
+ {
220
+ "name": "dockerfile",
221
+ "type": "string",
222
+ "required": false,
223
+ "description": "Dockerfile path."
224
+ },
225
+ {
226
+ "name": "context",
227
+ "type": "string",
228
+ "required": false,
229
+ "description": "Build context."
230
+ },
231
+ {
232
+ "name": "registry",
233
+ "type": "string",
234
+ "required": false,
235
+ "description": "Container registry."
236
+ },
237
+ {
238
+ "name": "imageName",
239
+ "type": "string",
240
+ "required": false,
241
+ "description": "Full image name."
242
+ },
243
+ {
244
+ "name": "tagLatest",
245
+ "type": "boolean",
246
+ "required": false,
247
+ "description": "Also tag as :latest."
248
+ },
249
+ {
250
+ "name": "buildArgs",
251
+ "type": "Record<string, string>",
252
+ "required": false,
253
+ "description": "Extra docker build-args"
254
+ },
255
+ {
256
+ "name": "push",
257
+ "type": "boolean",
258
+ "required": false,
259
+ "description": "Push image after build."
260
+ },
261
+ {
262
+ "name": "platforms",
263
+ "type": "string[]",
264
+ "required": false,
265
+ "description": "Multi-platform targets."
266
+ },
267
+ {
268
+ "name": "runsOn",
269
+ "type": "string",
270
+ "required": false,
271
+ "description": "Runner label."
272
+ },
273
+ {
274
+ "name": "defaults",
275
+ "type": "{ job?: Partial<ConstructorParameters<typeof Job>[0]>; workflow?: Partial<ConstructorParameters<typeof Workflow>[0]>; }",
276
+ "required": false
277
+ }
278
+ ]
279
+ },
280
+ {
281
+ "name": "DownloadArtifact",
282
+ "lexicon": "github",
283
+ "description": "Bundles Step.",
284
+ "bundles": [
285
+ "Step"
286
+ ],
287
+ "params": [
288
+ {
289
+ "name": "name",
290
+ "type": "string",
291
+ "required": false
292
+ },
293
+ {
294
+ "name": "path",
295
+ "type": "string",
296
+ "required": false
297
+ },
298
+ {
299
+ "name": "mergeMultiple",
300
+ "type": "boolean",
301
+ "required": false
302
+ },
303
+ {
304
+ "name": "defaults",
305
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
306
+ "required": false
307
+ }
308
+ ]
309
+ },
310
+ {
311
+ "name": "GoCI",
312
+ "lexicon": "github",
313
+ "description": "Bundles Job, Workflow.",
314
+ "bundles": [
315
+ "Job",
316
+ "Workflow"
317
+ ],
318
+ "params": [
319
+ {
320
+ "name": "goVersion",
321
+ "type": "string",
322
+ "required": false,
323
+ "description": "Go version."
324
+ },
325
+ {
326
+ "name": "testCommand",
327
+ "type": "string",
328
+ "required": false,
329
+ "description": "Test command."
330
+ },
331
+ {
332
+ "name": "buildCommand",
333
+ "type": "string",
334
+ "required": false,
335
+ "description": "Build command."
336
+ },
337
+ {
338
+ "name": "lintCommand",
339
+ "type": "string | null",
340
+ "required": false,
341
+ "description": "Lint command."
342
+ },
343
+ {
344
+ "name": "runsOn",
345
+ "type": "string",
346
+ "required": false,
347
+ "description": "Runner label."
348
+ },
349
+ {
350
+ "name": "defaults",
351
+ "type": "{ buildJob?: Partial<ConstructorParameters<typeof Job>[0]>; testJob?: Partial<ConstructorParameters<typeof Job>[0]>; ...",
352
+ "required": false
353
+ }
354
+ ]
355
+ },
356
+ {
357
+ "name": "NodeCI",
358
+ "lexicon": "github",
359
+ "description": "Bundles Job, Workflow.",
360
+ "bundles": [
361
+ "Job",
362
+ "Workflow"
363
+ ],
364
+ "params": [
365
+ {
366
+ "name": "nodeVersion",
367
+ "type": "string",
368
+ "required": false
369
+ },
370
+ {
371
+ "name": "packageManager",
372
+ "type": "\"npm\" | \"pnpm\" | \"yarn\" | \"bun\"",
373
+ "required": false
374
+ },
375
+ {
376
+ "name": "buildScript",
377
+ "type": "string",
378
+ "required": false
379
+ },
380
+ {
381
+ "name": "testScript",
382
+ "type": "string",
383
+ "required": false
384
+ },
385
+ {
386
+ "name": "installCommand",
387
+ "type": "string",
388
+ "required": false
389
+ },
390
+ {
391
+ "name": "defaults",
392
+ "type": "{ job?: Partial<ConstructorParameters<typeof Job>[0]>; workflow?: Partial<ConstructorParameters<typeof Workflow>[0]>; }",
393
+ "required": false
394
+ }
395
+ ]
396
+ },
397
+ {
398
+ "name": "NodePipeline",
399
+ "lexicon": "github",
400
+ "description": "Bundles Job, Workflow.",
401
+ "bundles": [
402
+ "Job",
403
+ "Workflow"
404
+ ],
405
+ "params": [
406
+ {
407
+ "name": "nodeVersion",
408
+ "type": "string",
409
+ "required": false,
410
+ "description": "Node.js version."
411
+ },
412
+ {
413
+ "name": "packageManager",
414
+ "type": "\"npm\" | \"pnpm\" | \"yarn\" | \"bun\"",
415
+ "required": false,
416
+ "description": "Package manager."
417
+ },
418
+ {
419
+ "name": "buildScript",
420
+ "type": "string",
421
+ "required": false,
422
+ "description": "Build script name."
423
+ },
424
+ {
425
+ "name": "testScript",
426
+ "type": "string",
427
+ "required": false,
428
+ "description": "Test script name."
429
+ },
430
+ {
431
+ "name": "installCommand",
432
+ "type": "string",
433
+ "required": false,
434
+ "description": "Override auto-detected install command"
435
+ },
436
+ {
437
+ "name": "buildArtifactPaths",
438
+ "type": "string[]",
439
+ "required": false,
440
+ "description": "Build artifact paths."
441
+ },
442
+ {
443
+ "name": "artifactName",
444
+ "type": "string",
445
+ "required": false,
446
+ "description": "Artifact name."
447
+ },
448
+ {
449
+ "name": "artifactRetentionDays",
450
+ "type": "number",
451
+ "required": false,
452
+ "description": "Artifact retention days."
453
+ },
454
+ {
455
+ "name": "runsOn",
456
+ "type": "string",
457
+ "required": false,
458
+ "description": "Runner label."
459
+ },
460
+ {
461
+ "name": "defaults",
462
+ "type": "{ buildJob?: Partial<ConstructorParameters<typeof Job>[0]>; testJob?: Partial<ConstructorParameters<typeof Job>[0]>; ...",
463
+ "required": false
464
+ }
465
+ ]
466
+ },
467
+ {
468
+ "name": "PnpmPipeline",
469
+ "lexicon": "github",
470
+ "description": "NodePipeline preset for pnpm projects.",
471
+ "bundles": [
472
+ "Job",
473
+ "Workflow"
474
+ ],
475
+ "params": [
476
+ {
477
+ "name": "defaults",
478
+ "type": "{ buildJob?: Partial<ConstructorParameters<typeof Job>[0]>; testJob?: Partial<ConstructorParameters<typeof Job>[0]>; ...",
479
+ "required": false
480
+ },
481
+ {
482
+ "name": "nodeVersion",
483
+ "type": "string",
484
+ "required": false,
485
+ "description": "Node.js version."
486
+ },
487
+ {
488
+ "name": "installCommand",
489
+ "type": "string",
490
+ "required": false,
491
+ "description": "Override auto-detected install command"
492
+ },
493
+ {
494
+ "name": "buildScript",
495
+ "type": "string",
496
+ "required": false,
497
+ "description": "Build script name."
498
+ },
499
+ {
500
+ "name": "testScript",
501
+ "type": "string",
502
+ "required": false,
503
+ "description": "Test script name."
504
+ },
505
+ {
506
+ "name": "runsOn",
507
+ "type": "string",
508
+ "required": false,
509
+ "description": "Runner label."
510
+ },
511
+ {
512
+ "name": "artifactName",
513
+ "type": "string",
514
+ "required": false,
515
+ "description": "Artifact name."
516
+ },
517
+ {
518
+ "name": "buildArtifactPaths",
519
+ "type": "string[]",
520
+ "required": false,
521
+ "description": "Build artifact paths."
522
+ },
523
+ {
524
+ "name": "artifactRetentionDays",
525
+ "type": "number",
526
+ "required": false,
527
+ "description": "Artifact retention days."
528
+ },
529
+ {
530
+ "name": "packageManager",
531
+ "type": "\"npm\" | \"pnpm\" | \"yarn\" | \"bun\"",
532
+ "required": false,
533
+ "description": "Package manager."
534
+ }
535
+ ]
536
+ },
537
+ {
538
+ "name": "PrPlanReport",
539
+ "lexicon": "github",
540
+ "description": "A CI job that builds, plans, and posts `chant lifecycle plan --report markdown` as a sticky PR comment (#1983).",
541
+ "bundles": [
542
+ "Job"
543
+ ],
544
+ "params": [
545
+ {
546
+ "name": "environment",
547
+ "type": "string",
548
+ "required": true,
549
+ "description": "Lifecycle environment to plan against — the `<environment>` argument of `chant lifecycle plan`."
550
+ },
551
+ {
552
+ "name": "lexicon",
553
+ "type": "string",
554
+ "required": false,
555
+ "description": "Restrict the plan to one lexicon (the optional `[lexicon]` argument)."
556
+ },
557
+ {
558
+ "name": "ownedOnly",
559
+ "type": "boolean",
560
+ "required": false,
561
+ "description": "Plan against chant-owned resources only (passes `--owned`)."
562
+ },
563
+ {
564
+ "name": "runsOn",
565
+ "type": "string",
566
+ "required": false,
567
+ "description": "Runner label."
568
+ },
569
+ {
570
+ "name": "nodeVersion",
571
+ "type": "string",
572
+ "required": false,
573
+ "description": "Node.js version for chant's own toolchain."
574
+ },
575
+ {
576
+ "name": "installCommand",
577
+ "type": "string",
578
+ "required": false,
579
+ "description": "Install command, run after checkout."
580
+ },
581
+ {
582
+ "name": "before",
583
+ "type": "string[]",
584
+ "required": false,
585
+ "description": "Commands to run before the plan — typically cloud-credential setup, since the plan queries the live system to classify create/update/delete."
586
+ },
587
+ {
588
+ "name": "postComment",
589
+ "type": "boolean",
590
+ "required": false,
591
+ "description": "Post the plan as a sticky PR comment."
592
+ },
593
+ {
594
+ "name": "marker",
595
+ "type": "string",
596
+ "required": false,
597
+ "description": "Hidden marker that makes the comment findable across pushes."
598
+ },
599
+ {
600
+ "name": "defaults",
601
+ "type": "{ job?: Partial<ConstructorParameters<typeof Job>[0]>; }",
602
+ "required": false,
603
+ "description": "Per-member defaults for customizing the generated job."
604
+ }
605
+ ]
606
+ },
607
+ {
608
+ "name": "PythonCI",
609
+ "lexicon": "github",
610
+ "description": "Bundles Job, Workflow.",
611
+ "bundles": [
612
+ "Job",
613
+ "Workflow"
614
+ ],
615
+ "params": [
616
+ {
617
+ "name": "pythonVersion",
618
+ "type": "string",
619
+ "required": false,
620
+ "description": "Python version."
621
+ },
622
+ {
623
+ "name": "testCommand",
624
+ "type": "string",
625
+ "required": false,
626
+ "description": "Test command."
627
+ },
628
+ {
629
+ "name": "lintCommand",
630
+ "type": "string | null",
631
+ "required": false,
632
+ "description": "Lint command."
633
+ },
634
+ {
635
+ "name": "requirementsFile",
636
+ "type": "string",
637
+ "required": false,
638
+ "description": "Requirements file."
639
+ },
640
+ {
641
+ "name": "usePoetry",
642
+ "type": "boolean",
643
+ "required": false,
644
+ "description": "Use poetry instead of pip."
645
+ },
646
+ {
647
+ "name": "runsOn",
648
+ "type": "string",
649
+ "required": false,
650
+ "description": "Runner label."
651
+ },
652
+ {
653
+ "name": "defaults",
654
+ "type": "{ testJob?: Partial<ConstructorParameters<typeof Job>[0]>; lintJob?: Partial<ConstructorParameters<typeof Job>[0]>; w...",
655
+ "required": false
656
+ }
657
+ ]
658
+ },
659
+ {
660
+ "name": "SetupGo",
661
+ "lexicon": "github",
662
+ "description": "Bundles Step.",
663
+ "bundles": [
664
+ "Step"
665
+ ],
666
+ "params": [
667
+ {
668
+ "name": "goVersion",
669
+ "type": "string",
670
+ "required": false
671
+ },
672
+ {
673
+ "name": "goVersionFile",
674
+ "type": "string",
675
+ "required": false
676
+ },
677
+ {
678
+ "name": "cache",
679
+ "type": "boolean",
680
+ "required": false
681
+ },
682
+ {
683
+ "name": "defaults",
684
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
685
+ "required": false
686
+ }
687
+ ]
688
+ },
689
+ {
690
+ "name": "SetupNode",
691
+ "lexicon": "github",
692
+ "description": "Bundles Step.",
693
+ "bundles": [
694
+ "Step"
695
+ ],
696
+ "params": [
697
+ {
698
+ "name": "nodeVersion",
699
+ "type": "string",
700
+ "required": false
701
+ },
702
+ {
703
+ "name": "registryUrl",
704
+ "type": "string",
705
+ "required": false
706
+ },
707
+ {
708
+ "name": "cache",
709
+ "type": "string",
710
+ "required": false
711
+ },
712
+ {
713
+ "name": "cacheFilePath",
714
+ "type": "string",
715
+ "required": false
716
+ },
717
+ {
718
+ "name": "defaults",
719
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
720
+ "required": false
721
+ }
722
+ ]
723
+ },
724
+ {
725
+ "name": "SetupPython",
726
+ "lexicon": "github",
727
+ "description": "Bundles Step.",
728
+ "bundles": [
729
+ "Step"
730
+ ],
731
+ "params": [
732
+ {
733
+ "name": "pythonVersion",
734
+ "type": "string",
735
+ "required": false
736
+ },
737
+ {
738
+ "name": "cache",
739
+ "type": "string",
740
+ "required": false
741
+ },
742
+ {
743
+ "name": "architecture",
744
+ "type": "string",
745
+ "required": false
746
+ },
747
+ {
748
+ "name": "defaults",
749
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
750
+ "required": false
751
+ }
752
+ ]
753
+ },
754
+ {
755
+ "name": "UploadArtifact",
756
+ "lexicon": "github",
757
+ "description": "Bundles Step.",
758
+ "bundles": [
759
+ "Step"
760
+ ],
761
+ "params": [
762
+ {
763
+ "name": "name",
764
+ "type": "string",
765
+ "required": true
766
+ },
767
+ {
768
+ "name": "path",
769
+ "type": "string",
770
+ "required": true
771
+ },
772
+ {
773
+ "name": "retentionDays",
774
+ "type": "number",
775
+ "required": false
776
+ },
777
+ {
778
+ "name": "compressionLevel",
779
+ "type": "number",
780
+ "required": false
781
+ },
782
+ {
783
+ "name": "defaults",
784
+ "type": "{ step?: Partial<ConstructorParameters<typeof Step>[0]>; }",
785
+ "required": false
786
+ }
787
+ ]
788
+ },
789
+ {
790
+ "name": "YarnPipeline",
791
+ "lexicon": "github",
792
+ "description": "NodePipeline preset for Yarn projects.",
793
+ "bundles": [
794
+ "Job",
795
+ "Workflow"
796
+ ],
797
+ "params": [
798
+ {
799
+ "name": "defaults",
800
+ "type": "{ buildJob?: Partial<ConstructorParameters<typeof Job>[0]>; testJob?: Partial<ConstructorParameters<typeof Job>[0]>; ...",
801
+ "required": false
802
+ },
803
+ {
804
+ "name": "nodeVersion",
805
+ "type": "string",
806
+ "required": false,
807
+ "description": "Node.js version."
808
+ },
809
+ {
810
+ "name": "installCommand",
811
+ "type": "string",
812
+ "required": false,
813
+ "description": "Override auto-detected install command"
814
+ },
815
+ {
816
+ "name": "buildScript",
817
+ "type": "string",
818
+ "required": false,
819
+ "description": "Build script name."
820
+ },
821
+ {
822
+ "name": "testScript",
823
+ "type": "string",
824
+ "required": false,
825
+ "description": "Test script name."
826
+ },
827
+ {
828
+ "name": "runsOn",
829
+ "type": "string",
830
+ "required": false,
831
+ "description": "Runner label."
832
+ },
833
+ {
834
+ "name": "artifactName",
835
+ "type": "string",
836
+ "required": false,
837
+ "description": "Artifact name."
838
+ },
839
+ {
840
+ "name": "buildArtifactPaths",
841
+ "type": "string[]",
842
+ "required": false,
843
+ "description": "Build artifact paths."
844
+ },
845
+ {
846
+ "name": "artifactRetentionDays",
847
+ "type": "number",
848
+ "required": false,
849
+ "description": "Artifact retention days."
850
+ },
851
+ {
852
+ "name": "packageManager",
853
+ "type": "\"npm\" | \"pnpm\" | \"yarn\" | \"bun\"",
854
+ "required": false,
855
+ "description": "Package manager."
856
+ }
857
+ ]
858
+ }
859
+ ];